Keil
http://www.keil.com/pack/
STM32F1xx_DFP
STMicroelectronics STM32F1 Series Device Support, Drivers and Examples
Updated STM32F10x device header file
Updated CMSIS drivers:
- CAN:
-- Corrected filter setting for adding/removing maskable Standard ID
-- Corrected clearing of overrun flag in interrupt routine
-- Corrected receive overrun signaling
- Corrected CAN2 initialization was disabling CAN1 filters
- USB Device:
-- Corrected resume event signaling
-- Corrected initial resume signaling after USB Bus Reset
-- Corrected device status information
-- VBUS sensing enabled by default
- USB Host: Corrected over-current pin configuration
- SPI: Added "Not Used" support for SPI MOSI and MISO pins
Updated Board drivers:
- MCBSTM32C Touch_STMPE811.c: Corrected occasional incorrect coordinate reading, when touch screen is released
- GPIO: Corrected corruption of Serial wire JTAG pins alternate function configuration
Updated examples:
- Updated emWin examples to emWin V5.36f
- Updated USB Device CDC ACM VirtualCOM examples (corrected initial UART receive size)
Updated CMSIS drivers:
- EMAC:
-- Improved robustness by function checking that driver is powered (EMAC_FLAG_POWER)
- CAN:
-- Corrected functionality when only one CAN controller is used
-- Corrected pin remap configuration for CAN2 port pins
-- Corrected functionality when NULL pointer is provided for one or both signal callbacks in Initialize function
- USB Device:
-- Corrected Isochronous transfer
-- Corrected IN Endpoint FIFO flush procedure
- USB Host:
-- Removed interrupt priority handling
-- Corrected multiple packet sending
-- Corrected PowerControl function for unconditional Power Off
- USART:
-- Corrected Peripheral Reset and Clock enable/disable (check if peripheral is available on selected device)
-- Corrected CTS handling and added signal CTS change event.
- SPI:
-- Corrected Peripheral Reset and Clock enable/disable (check if peripheral is available on selected device)
-- Corrected Bus Speed configuration
-- Corrected 8bit/16bit Data register access, regarding the Data frame size
-I2C:
-- Corrected invalid __I2C_DMA field in I2C_DMA_TxEvent and I2C_DMA_RxEvent functions
Updated/added examples:
- Added examples using Network DualStack (IPv4/IPv6) Middleware targeting MCBSTM32C (Keil.MDK-Middleware.7.0.0.pack required)
- Updated emWin examples to emWin V5.32
- Updated CAN examples
- Updated USB Host examples
- Updated USB Device CDC ACM VirtualCOM examples
Updated RTE_Device.h: Corrected USART Pin configuration
Added trace configuration to the debug description and updated Quick Start Guide
Requires MDK-Middleware Version 6.5.0 and CMSIS Version 4.4.0
Updated CMSIS-Drivers
- CMSIS-Driver API V2.0 compliant
- Added CMSIS-Driver for CAN
Updated Examples:
- Updated Board Support and all examples for MCBSTM32C and MCBSTM32E
- Added examples for CAN
Examples: Pack Selection for fixed version CMSIS 3.20.4 and MDK-Middleware 5.1.6
Updated stm32f10x.h (xl-density: Added missing "STM32F10X_XL" for "RCC_AHBENR_DMA2EN" and "RCC_APB1ENR_USBEN")
Component updated: Device:StdPeriph Drivers:Framework Version:3.5.1 - added file misc.c
Added STM Peripheral Driver Library V1.3.0
Updated DMA driver (DMA2 peripheral added to build when HD, XL, HD_VL or CL device is used)
USB Device driver update: multiple packet read, EP0 unconfiguration
Updated SPI driver (IRQ handling corrected)
Updated drivers (namespace prefix ARM_ added)
Added devices
First Release version of STM32F1 Device Family Pack.
ST
Device Support
Device Family Package STMicroelectronics
STM32F1
STM32
// Debug Access Variables, can be modified by user via copies of DBGCONF files as created by uVision. Also see sub-family level.
__var DbgMCU_CR = 0x00000007; // Debug MCU Configuration Register
// Replication of Standard Functionality
Write32(0xE000EDF0, 0xA05F0001); // Enable Core Debug via DHCSR
// Device Specific Debug Setup
Write32(0xE0042004, DbgMCU_CR); // DBGMCU_CR: Configure MCU Debug
__var traceSWO = (__traceout & 0x1) != 0; // SWO Trace Selected?
__var traceTPIU = (__traceout & 0x2) != 0; // TPIU Trace Selected?
Sequence("EnableTraceSWO"); // Call SWO Trace Setup
Sequence("EnableTraceTPIU"); // Call TPIU Trace Setup
__var dbgmcu_val = 0; // DBGMCU_CR Value
dbgmcu_val = Read32(0xE0042004) & (~0xE0); // Read DBGMCU_CR and clear trace setup
dbgmcu_val |= (1 << 5); // Trace I/O Enable + Trace Mode Asynchronous
Write32(0xE0042004, dbgmcu_val); // Write DBGMCU_CR: Trace Settings
__var width = (__traceout & 0x003F0000) >> 16; // TPIU Port Width
__var dbgmcu_val = 0; // DBGMCU_CR Value
dbgmcu_val = Read32(0xE0042004) & (~0xE0); // Read DBGMCU_CR and clear trace setup
dbgmcu_val |= (1 << 5); // Trace I/O Enable
// 1-Bit TPIU Trace Setup
dbgmcu_val |= (1 << 6); // Trace Mode (1-Bit)
// 2-Bit TPIU Trace Setup
dbgmcu_val |= (2 << 6); // Trace Mode (2-Bit)
// 4-Bit TPIU Trace Setup
dbgmcu_val |= (3 << 6); // Trace Mode (4-Bit)
// Write Trace Configuration to Target
Write32(0xE0042004, dbgmcu_val); // Write DBGMCU_CR: Trace Settings
STMicroelectronics' STM32F1 series of mainstream MCUs covers the needs of a large variety of applications in the industrial, medical and consumer markets. High performance with first-class peripherals and low-power, low-voltage operation is paired with a high level of integration at accessible prices with a simple architecture and easy-to-use tools.
Typical applications include motor drives and application control, medical and handheld equipment, industrial applications, PLCs, inverters, printers, and scanners, alarm systems, video intercom, HVAC and home audio equipment.
- LCD parallel interface, 8080/6800 modes
- 5 V-tolerant I/Os
- Timer with quadrature (incremental) encoder input
- 96-bit unique ID
// Debug Access Variables, can be modified by user via copies of DBGCONF files as created by uVision.
__var DbgMCU_CR = 0x00000007; // Debug MCU Configuration Register
STMicroelectronics STM32F1xx Device
STMicroelectronics STM32F1xx Value Line Low Density Device
STMicroelectronics STM32F1xx Value Line Mid Density Device
STMicroelectronics STM32F1xx Value Line Mid Density Device
STMicroelectronics STM32F1xx Low Density Device
STMicroelectronics STM32F1xx Mid Density Device
STMicroelectronics STM32F1xx High Density Device
STMicroelectronics STM32F1xx XL Density Device
STMicroelectronics STM32F1xx Connectivity Line Device
filter for STM32F1xx Value Line Low Density Device and the ARM compiler
filter for STM32F1xx Value Line Mid Density Device and the ARM compiler
filter for STM32F1xx Value Line Mid Density Device and the ARM compiler
filter for STM32F1xx Low Density Device and the ARM compiler
filter for STM32F1xx Mid Density Device and the ARM compiler
filter for STM32F1xx High Density Device and the ARM compiler
filter for STM32F1xx XL Density Device and the ARM compiler
filter for STM32F1xx Connectivity Line Device and the ARM compiler
STMicroelectronics STM32F107 Device
STMicroelectronics STM32F102/103 Device
STMicroelectronics STM32F105/107 Device
STMicroelectronics STM32F1xx Device with CMSIS
STMicroelectronics STM32F1xx Device with CMSIS and GPIO
STMicroelectronics STM32F107 Device with CMSIS and GPIO
STMicroelectronics STM32F1xx Device with CMSIS, GPIO and DMA
STMicroelectronics STM32F1xx Device with CMSIS, GPIO and SPI Driver
STMicroelectronics STM32F102/103 Device with CMSIS, RTOS and GPIO
STMicroelectronics STM32F105/107 Device with CMSIS, RTOS and GPIO
STMicroelectronics STM32F1xx Device with CMSIS, RTOS and I2C Driver
STMicroelectronics STM32F1xx with Standard Peripherals Drivers Framework
STMicroelectronics STM32F1xx with Standard Peripherals Drivers Framework and RCC
System Startup for STMicroelectronics STM32F1xx device series
Standard Peripherals Drivers Framework
#define RTE_DEVICE_STDPERIPH_FRAMEWORK
Analog-to-digital converter (ADC) driver for STM32F10x
#define RTE_DEVICE_STDPERIPH_ADC
Backup registers (BKP) driver for STM32F10x
#define RTE_DEVICE_STDPERIPH_BKP
Controller area network (CAN) driver for STM32F1xx
#define RTE_DEVICE_STDPERIPH_CAN
Consumer electronics control controller (CEC) driver for STM32F1xx
#define RTE_DEVICE_STDPERIPH_CEC
CRC calculation unit (CRC) driver for STM32F1xx
#define RTE_DEVICE_STDPERIPH_CRC
Digital-to-analog converter (DAC) driver for STM32F1xx
#define RTE_DEVICE_STDPERIPH_DAC
MCU debug component (DBGMCU) driver for STM32F1xx
#define RTE_DEVICE_STDPERIPH_DBGMCU
DMA controller (DMA) driver for STM32F1xx
#define RTE_DEVICE_STDPERIPH_DMA
External interrupt/event controller (EXTI) driver for STM32F1xx
#define RTE_DEVICE_STDPERIPH_EXTI
Embedded Flash memory driver for STM32F1xx
#define RTE_DEVICE_STDPERIPH_FLASH
Flexible Static Memory Controller (FSMC) driver for STM32F11x
#define RTE_DEVICE_STDPERIPH_FSMC
General-purpose I/O (GPIO) driver for STM32F1xx
#define RTE_DEVICE_STDPERIPH_GPIO
Inter-integrated circuit (I2C) interface driver for STM32F1xx
#define RTE_DEVICE_STDPERIPH_I2C
Independent watchdog (IWDG) driver for STM32F1xx
#define RTE_DEVICE_STDPERIPH_IWDG
Power controller (PWR) driver for STM32F1xx
#define RTE_DEVICE_STDPERIPH_PWR
Reset and clock control (RCC) driver for STM32F1xx
#define RTE_DEVICE_STDPERIPH_RCC
Real-time clock (RTC) driver for STM32F1xx
#define RTE_DEVICE_STDPERIPH_RTC
Secure digital (SDIO) interface driver for STM32F1xx
#define RTE_DEVICE_STDPERIPH_SDIO
Serial peripheral interface (SPI) driver for STM32F1xx
#define RTE_DEVICE_STDPERIPH_SPI
Timers (TIM) driver for STM32F1xx
#define RTE_DEVICE_STDPERIPH_TIM
Universal synchronous asynchronous receiver transmitter (USART) driver for STM32F1xx
#define RTE_DEVICE_STDPERIPH_USART
Window watchdog (WWDG) driver for STM32F1xx
#define RTE_DEVICE_STDPERIPH_WWDG
GPIO driver used by RTE Drivers for STM32F1 Series
DMA driver used by RTE Drivers for STM32F1 Series
CAN Driver for STM32F1 Series
#define RTE_Drivers_CAN1 /* Driver CAN1 */
#define RTE_Drivers_CAN2 /* Driver CAN2 */
SPI Driver for STM32F1 Series
#define RTE_Drivers_SPI1 /* Driver SPI1 */
#define RTE_Drivers_SPI2 /* Driver SPI2 */
#define RTE_Drivers_SPI3 /* Driver SPI3 */
UART Driver for STM32F1 Series
#define RTE_Drivers_USART1 /* Driver USART1 */
#define RTE_Drivers_USART2 /* Driver USART2 */
#define RTE_Drivers_USART3 /* Driver USART3 */
#define RTE_Drivers_USART4 /* Driver UART4 */
#define RTE_Drivers_USART5 /* Driver UART5 */
I2C Driver for STM32F1 Series
#define RTE_Drivers_I2C1 /* Driver I2C1 */
#define RTE_Drivers_I2C2 /* Driver I2C2 */
MCI Driver for STM32F1 Series
#define RTE_Drivers_MCI0 /* Driver MCI0 */
Ethernet MAC Driver for STM32F1 Series
#define RTE_Drivers_ETH_MAC0 /* Driver ETH_MAC0 */
USB Device Driver for STM32F1 Series
#define RTE_Drivers_USBD0 /* Driver USBD0 */
USB Device Driver for STM32F1 Connectivity Line Devices
#define RTE_Drivers_USBD0 /* Driver USBD0 */
USB Host Driver for STM32F1 Connectivity Line Devices
#define RTE_Drivers_USBH0 /* Driver USBH0 */
Keil Development Board MCBSTM32E
Boards/Keil/MCBSTM32E/Documentation/mcbstm32e.chm
A/D Converter Interface for Keil MCBSTM32E Development Board
Graphic LCD Interface for Keil MCBSTM32E Development Board
emWin LCD 16-bit Interface for Keil MCBSTM32E Development Board
Joystick Interface for Keil MCBSTM32E Development Board
Buttons Interface for Keil MCBSTM32E Development Board
LED Interface for Keil MCBSTM32E Development Board
Keil Development Board MCBSTM32C
Boards/Keil/MCBSTM32C/Documentation/mcbstm32c.chm
A/D Converter Interface for Keil MCBSTM32C Development Board
Graphic LCD Interface for Keil MCBSTM32C Development Board
emWin LCD SPI Interface for Keil MCBSTM32C Development Board
Joystick Interface for Keil MCBSTM32C Development Board
Buttons Interface for Keil MCBSTM32C Development Board
LED Interface for Keil MCBSTM32C Development Board
Touchscreen Interface for STMPE811
Keil MCBSTM32C Development Board
Keil MCBSTM32E Development Board
CMSIS-RTOS Blinky example
Getting Started
CMSIS-RTX
emWin Graphics simple example
Middleware
Graphics
emWin
emWin Graphics Demo example
Middleware
Graphics
emWin
CAN example that sends and receives data messages
Middleware
CAN
CAN example that demonstrates Remote Transmission Request (RTR) usage
Middleware
CAN
USB Human Interface Device providing access from PC to board LEDs and Joystick
Middleware
USB Device
HID
USB Mass Storage Device using SD/MMC Memory Card or RAM as storage media
Middleware
USB Device
Memory Disk
Bridge between PC USB Virtual COM Port and UART port
Middleware
USB Device
Virtual COM
File manipulation example: create, read, copy, delete files on any enabled drive (SD/MMC Card, NOR/NAND Flash, RAM) and format each drive
Middleware
File System
SD/MMC Card
CMSIS-RTOS Blinky example
Getting Started
CMSIS-RTX
Demo example
Getting Started
emWin Graphics simple example
Middleware
Graphics
emWin
emWin Graphics Demo example
Middleware
Graphics
emWin
CAN example that sends and receives data messages
Middleware
CAN
CAN example that demonstrates Remote Transmission Request (RTR) usage
Middleware
CAN
USB Human Interface Device providing access from PC to board LEDs and Joystick
Middleware
USB Device
HID
USB Mass Storage Device using SD/MMC Memory Card or RAM as storage media
Middleware
USB Device
Memory Disk
Bridge between PC USB Virtual COM Port and UART port
Middleware
USB Device
Virtual COM
USB Host file manipulation example: create, read, copy, delete files from USB Mass Storage Device and format the storage device
Middleware
USB Host
Mass Storage
Measure example using USB HID Keyboard as input device
Middleware
USB Host
Keyboard
File manipulation example: create, read, copy, delete files on any enabled drive (SD/MMC Card) and format the drive
Middleware
File System
SD/MMC Card
Example using BSD sockets to send commands to remote server
Middleware
Network
BSD
Example using BSD sockets to send commands to remote server
Middleware
Network
BSD
Example using BSD sockets to accept commands from remote clients
Middleware
Network
BSD
Example using BSD sockets to accept commands from remote clients
Middleware
Network
BSD
File Server using FTP protocol with SD/MMC Memory Card as storage media
Middleware
Network
FTP
File Server using FTP protocol with SD/MMC Memory Card as storage media
Middleware
Network
FTP
Compact Web Server with CGI interface
Middleware
Network
Web Server
HTTP
Compact Web Server with CGI interface
Middleware
Network
Web Server
HTTP
Example showing how to compose and send emails
Middleware
Network
SMTP
Example showing how to compose and send emails
Middleware
Network
SMTP
Example showing how to use a Simple Network Management Protocol (SNMP)
Middleware
Network
SNMP
Command-line Host service example using Telnet protocol
Middleware
Network
Telnet
Command-line Host service example using Telnet protocol
Middleware
Network
Telnet