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