libopencm3
A free/libre/open-source firmware library for various ARM Cortex-M3 microcontrollers.
STM32F1
Here is a list of all modules:
[detail level 1234]
 CM3 DefinesDefined Constants and Types for Cortex M3 core features
 DebuggingMacros and functions to aid in debugging
 Cortex Core Defineslibopencm3 Defined Constants and Types for the Cortex Core
 Cortex-M Data Watch and Trace unit.System Control Space (SCS) => Data Watchpoint and Trace (DWT)
 Cortex-M Flash Patch and Breakpoint (FPB) unit
 Cortex-M Instrumentation Trace Macrocell (ITM)
 Cortex-M MPU Defineslibopencm3 Cortex Memory Protection Unit
 Cortex-M NVIC Defineslibopencm3 Cortex Nested Vectored Interrupt Controller
 Cortex-M System Control BlockThe System Control Block is a section of the System Control Space
 Cortex-M System Control SpaceThe System Control Space (SCS) is a memory-mapped 4KB address space that provides 32-bit registers for configuration, status reporting and control
 Cortex-M SysTick Defineslibopencm3 Defined Constants and Types for the Cortex SysTick
 Cortex-M Trace Port Interface Unit (TPIU)
 Cortex Core Peripheral APIsAPIs for Cortex Core peripherals
 DWTlibopencm3 Cortex-M Data Watchpoint and Trace unit
 NVIClibopencm3 Cortex Nested Vectored Interrupt Controller
 SCBlibopencm3 Cortex-M System Control Block
 SysTicklibopencm3 Cortex System Tick Timer
 Coresight RegistersCoreSight Lock Status Registers and Lock Access Registers are documented for the DWT, ITM, FPB and TPIU peripherals
 Peripheral APIsAPIs for device peripherals
 DMA peripheral APIDMA library for the multi channel controller found in F0/1/3 & L/G parts
 FLASH peripheral APIlibopencm3 STM32F1xx FLASH Memory
 RCC peripheral APIlibopencm3 STM32F1xx Reset and Clock Control
 RTC peripheral APIlibopencm3 STM32F1xx RTC
 TIMER peripheral APIlibopencm3 STM32F1xx Timers
 ADC peripheral API
 CRC peripheral API
 DAC peripheral APIDigital to Analog Converter
 EXTI peripheral API
 GPIO peripheral APIlibopencm3 STM32F1xx General Purpose I/O
 I2C peripheral API
 IWDG peripheral API
 PWR peripheral API
 SPI peripheral API
 USART peripheral API
 STM32F1xxLibraries for ST Microelectronics STM32F1xx series
 STM32F1xx DefinesDefined Constants and Types for the STM32F1xx series
 ADC DefinesDefined Constants and Types for the STM32F1xx Analog to Digital Converters
 BKP DefinesDefined Constants and Types for the Backup Registers
 CRC Defineslibopencm3 Defined Constants and Types for the STM32F1xx CRC Generator
 DAC DefinesDefined Constants and Types for the STM32F1xx DAC
 DMA DefinesDefined Constants and Types for the STM32F1xx DMA Controller
 EXTI DefinesDefined Constants and Types for the STM32F1xx External Interrupts
 FLASH DefinesDefined Constants and Types for the STM32F1xx FLASH Memory
 GPIO DefinesDefined Constants and Types for the STM32F1xx General Purpose I/O
 I2C DefinesDefined Constants and Types for the STM32F1xx I2C
 IWDG DefinesDefined Constants and Types for the STM32F1xx Independent Watchdog Timer
 PWR DefinesDefined Constants and Types for the STM32F1xx PWR Control
 RCC DefinesDefined Constants and Types for the STM32F1xx Reset and Clock Control
 RTC DefinesDefined Constants and Types for the STM32F1xx Real Time Clock
 SPI DefinesDefined Constants and Types for the STM32F1xx SPI
 Timer Defineslibopencm3 Defined Constants and Types for the STM32F1xx Timers
 USART DefinesDefined Constants and Types for the STM32F1xx USART
 User interrupt service routines (ISR) prototypes for STM32 F1 series
 MAC Generic DefinesDefined Constants and Types for the Ethernet MAC
 MAC STM32Fxx7 DefinesDefined Constants and Types for the Ethernet MAC for STM32Fxx7 chips
 PHY Generic DefinesDefined Constants and Types for the Ethernet PHY
 PHY KSZ80X1 DefinesDefined Constants and Types for the Ethernet PHY KSZ80X1 chips chips
 CAN defineslibopencm3 Defined Constants and Types for STM32 CAN
 CAN register base address
 USB DefinesDefined Constants and Types for the STM32F* USB drivers
 USB Audio Type DefinitionsDefined Constants and Types for the USB Audio Type Definitions
 USB CDC Type DefinitionsDefined Constants and Types for the USB CDC Type Definitions
 USB HID Type DefinitionsDefined Constants and Types for the USB HID Type Definitions
 USB MSC Type DefinitionsDefined Constants and Types for the USB MSC Type Definitions
 USB DriversDefined Constants and Types for the USB Drivers
 USB Standard Structure DefinitionsDefined Constants and Types for the USB Standard Structure Definitions
 CANlibopencm3 STM32Fxxx CAN
 User interrupt service routines (ISR) defaults for STM32 F1 series
 MAC Generic DriversEthernet MAC Generic Drivers
 MAC STM32Fxx7Ethernet MAC STM32Fxx7 Drivers
 PHY Generic DriversEthernet PHY Generic Drivers
 PHY KSZ8051MLLEthernet PHY STM32Fxx7 Drivers
 Generic USB DriversGeneric USB Drivers
 Generic USB Control RequestsGeneric USB Control Requests
 Generic USB Standard Request InterfaceGeneric USB Standard Request Interface
 Usb_msc