BLACKPILL custom target.

BLACKPILL custom target

Board pinout

When equipped with STM32F401CCU6:

Zoom in
https://os.mbed.com/media/uploads/hudakz/blackpill_f401cc.png

When equipped with STM32F411CEU6:

Zoom in
https://os.mbed.com/media/uploads/hudakz/blackpill-pinout.png

Advantages of the BLACKPILL custom target over the NUCLEO_F401RE/ NUCLEO_F411RE
  • The onboard external 25 MHz crystal is used as system clock source rather than the less precise internal 16 MHz RC oscillator.
  • The onboard LED works as LED1 in programs.
  • The onboard KEY on STM32F411CEU6 boards works as USER_BUTTON pin in programs.
  • You can use the USB peripheral in your programs and connect the board to the PC over the onboard USB connector. An example of using the USB peripheral as USBSerial (12 Mbit/s) is available here.
Building programs for the BLACKPILL custom target in Mbed Studio
  • Connect an STM32 ST-Link programmer to your BLACKPILL board and PC (see below for more details).
  • Create a new program in the Mbed Studio IDE.
  • Right-click on the program's root folder and in the popup window select Add library...
  • Open the drop-list and select default as Branch or tag and click on the Finish button.
  • Open the BLACKPILL_Custom_Target folder and according to you board drag&drop the TARGET_BLACKPILL_F401CC or the TARGET_BLACKPILL_F411CE folder and the custom_targets.json file one by one to the root folder of your program.
  • Delete the BLACKPILL_Custom_Target folder from your project. (Right-click and select delete).
  • Open the Target drop-list and click on the button with a "chip" icon on it (Manage custom targets) .
  • Open the USB device drop-list and select your STM32 ST-Link programmer.
  • Open the Build target drop-list and according to your board select BLACKPILL_F401CC or BLACKPILL_F411CE.
  • Click on the Save All button.
  • Build your program (click on hammer button).

For more info visit

Import programBlackpill_Hello

Using low cost Blackpill (STM32F411CEU6) boards with mbed.

Committer:
hudakz
Date:
Wed Mar 30 09:55:17 2022 +0000
Revision:
9:2f993be74e92
Parent:
7:3a74f7149fa4
Fixed the "flash_data.h" file for the TARGET_BLACKPILL_F411CE.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
hudakz 7:3a74f7149fa4 1 /* mbed Microcontroller Library
hudakz 7:3a74f7149fa4 2 *******************************************************************************
hudakz 7:3a74f7149fa4 3 * Copyright (c) 2016, STMicroelectronics
hudakz 7:3a74f7149fa4 4 * All rights reserved.
hudakz 7:3a74f7149fa4 5 *
hudakz 7:3a74f7149fa4 6 * Redistribution and use in source and binary forms, with or without
hudakz 7:3a74f7149fa4 7 * modification, are permitted provided that the following conditions are met:
hudakz 7:3a74f7149fa4 8 *
hudakz 7:3a74f7149fa4 9 * 1. Redistributions of source code must retain the above copyright notice,
hudakz 7:3a74f7149fa4 10 * this list of conditions and the following disclaimer.
hudakz 7:3a74f7149fa4 11 * 2. Redistributions in binary form must reproduce the above copyright notice,
hudakz 7:3a74f7149fa4 12 * this list of conditions and the following disclaimer in the documentation
hudakz 7:3a74f7149fa4 13 * and/or other materials provided with the distribution.
hudakz 7:3a74f7149fa4 14 * 3. Neither the name of STMicroelectronics nor the names of its contributors
hudakz 7:3a74f7149fa4 15 * may be used to endorse or promote products derived from this software
hudakz 7:3a74f7149fa4 16 * without specific prior written permission.
hudakz 7:3a74f7149fa4 17 *
hudakz 7:3a74f7149fa4 18 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
hudakz 7:3a74f7149fa4 19 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
hudakz 7:3a74f7149fa4 20 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
hudakz 7:3a74f7149fa4 21 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
hudakz 7:3a74f7149fa4 22 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
hudakz 7:3a74f7149fa4 23 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
hudakz 7:3a74f7149fa4 24 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
hudakz 7:3a74f7149fa4 25 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
hudakz 7:3a74f7149fa4 26 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
hudakz 7:3a74f7149fa4 27 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
hudakz 7:3a74f7149fa4 28 *******************************************************************************
hudakz 7:3a74f7149fa4 29 */
hudakz 7:3a74f7149fa4 30 #ifndef MBED_FLASH_DATA_H
hudakz 7:3a74f7149fa4 31 #define MBED_FLASH_DATA_H
hudakz 7:3a74f7149fa4 32
hudakz 7:3a74f7149fa4 33 #include "device.h"
hudakz 7:3a74f7149fa4 34 #include <stdint.h>
hudakz 7:3a74f7149fa4 35
hudakz 7:3a74f7149fa4 36 #if DEVICE_FLASH
hudakz 7:3a74f7149fa4 37
hudakz 7:3a74f7149fa4 38 /* Exported types ------------------------------------------------------------*/
hudakz 7:3a74f7149fa4 39 /* Exported constants --------------------------------------------------------*/
hudakz 7:3a74f7149fa4 40 /* Exported macro ------------------------------------------------------------*/
hudakz 7:3a74f7149fa4 41 /* FLASH SIZE */
hudakz 7:3a74f7149fa4 42 #define FLASH_SIZE (uint32_t) 0x40000
hudakz 7:3a74f7149fa4 43
hudakz 7:3a74f7149fa4 44 /* Base address of the Flash sectors Bank 1 */
hudakz 7:3a74f7149fa4 45 #define ADDR_FLASH_SECTOR_0 ((uint32_t)0x08000000) /* Base @ of Sector 0, 16 Kbytes */
hudakz 7:3a74f7149fa4 46 #define ADDR_FLASH_SECTOR_1 ((uint32_t)0x08004000) /* Base @ of Sector 1, 16 Kbytes */
hudakz 7:3a74f7149fa4 47 #define ADDR_FLASH_SECTOR_2 ((uint32_t)0x08008000) /* Base @ of Sector 2, 16 Kbytes */
hudakz 7:3a74f7149fa4 48 #define ADDR_FLASH_SECTOR_3 ((uint32_t)0x0800C000) /* Base @ of Sector 3, 16 Kbytes */
hudakz 7:3a74f7149fa4 49 #define ADDR_FLASH_SECTOR_4 ((uint32_t)0x08010000) /* Base @ of Sector 4, 64 Kbytes */
hudakz 7:3a74f7149fa4 50 #define ADDR_FLASH_SECTOR_5 ((uint32_t)0x08020000) /* Base @ of Sector 5, 128 Kbytes */
hudakz 7:3a74f7149fa4 51
hudakz 7:3a74f7149fa4 52 #endif
hudakz 7:3a74f7149fa4 53 #endif