├── .gitignore ├── .vscode └── tasks.json ├── LICENSE ├── README.md ├── common ├── Makefile.gd32f103.include ├── Makefile.rules └── gd32f103.ld ├── documentation ├── GD32F103C8T6.pdf ├── GT811 - I2C register map.xlsx ├── GT811 translated bits.md └── GT811.pdf ├── libopencm3 ├── .gitignore ├── COPYING.GPL3 ├── COPYING.LGPL3 ├── HACKING ├── HACKING_COMMON_DOC ├── Makefile ├── README.md ├── doc │ ├── Doxyfile │ ├── Doxyfile_common │ ├── DoxygenLayout.xml │ ├── HACKING │ ├── Makefile │ ├── README │ ├── cm3 │ │ ├── Doxyfile │ │ └── DoxygenLayout_cm3.xml │ ├── efm32g │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_efm32g.xml │ │ └── header_efm32g.tex │ ├── efm32gg │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_efm32gg.xml │ │ └── header_efm32gg.tex │ ├── efm32lg │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_efm32lg.xml │ │ └── header_efm32lg.tex │ ├── efm32tg │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_efm32tg.xml │ │ └── header_efm32tg.tex │ ├── index.html │ ├── lm3s │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_lm3s.xml │ │ └── header_lm3s.tex │ ├── lm4f │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_lm4f.xml │ │ └── header_lm4f.tex │ ├── lpc13xx │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_lpc13xx.xml │ │ └── header_lpc13xx.tex │ ├── lpc17xx │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_lpc17xx.xml │ │ └── header_lpc17xx.tex │ ├── lpc43xx │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_lpc43xx.xml │ │ └── header_lpc43xx.tex │ ├── sam3a │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_sam3a.xml │ │ └── header_sam3a.tex │ ├── sam3n │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_sam3n.xml │ │ └── header_sam3a.tex │ ├── sam3s │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_sam3s.xml │ │ └── header_sam3a.tex │ ├── sam3u │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_sam3u.xml │ │ └── header_sam3a.tex │ ├── sam3x │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_sam3x.xml │ │ └── header_sam3a.tex │ ├── stm32f0 │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_stm32f0.xml │ │ ├── header_stm32f0.tex │ │ └── index.html │ ├── stm32f1 │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_stm32f1.xml │ │ ├── header_stm32f1.tex │ │ └── index.html │ ├── stm32f2 │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_stm32f2.xml │ │ ├── header_stm32f2.tex │ │ └── index.html │ ├── stm32f3 │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_stm32f3.xml │ │ ├── header_stm32f3.tex │ │ └── index.html │ ├── stm32f4 │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_stm32f4.xml │ │ ├── header_stm32f4.tex │ │ └── index.html │ ├── stm32f7 │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_stm32f7.xml │ │ ├── header_stm32f7.tex │ │ └── index.html │ ├── stm32l0 │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_stm32l0.xml │ │ ├── header_stm32l0.tex │ │ └── index.html │ ├── stm32l1 │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_stm32l1.xml │ │ ├── header_stm32l1.tex │ │ └── index.html │ ├── stm32l4 │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_stm32l4.xml │ │ ├── header_stm32l4.tex │ │ └── index.html │ ├── usb │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_usb.xml │ │ └── header_usb.tex │ └── vf6xx │ │ ├── Doxyfile │ │ ├── Doxyfile_latex │ │ ├── DoxygenLayout_vf6xx.xml │ │ ├── header_vf6xx.tex │ │ └── index.html ├── include │ ├── libopencm3 │ │ ├── cm3 │ │ │ ├── assert.h │ │ │ ├── common.h │ │ │ ├── cortex.h │ │ │ ├── doc-cm3.h │ │ │ ├── dwt.h │ │ │ ├── fpb.h │ │ │ ├── itm.h │ │ │ ├── memorymap.h │ │ │ ├── mpu.h │ │ │ ├── nvic.h │ │ │ ├── scb.h │ │ │ ├── scs.h │ │ │ ├── sync.h │ │ │ ├── systick.h │ │ │ ├── tpiu.h │ │ │ └── vector.h │ │ ├── dispatch │ │ │ └── nvic.h │ │ ├── docmain.dox │ │ ├── efm32 │ │ │ ├── acmp.h │ │ │ ├── adc.h │ │ │ ├── burtc.h │ │ │ ├── cmu.h │ │ │ ├── dac.h │ │ │ ├── dma.h │ │ │ ├── emu.h │ │ │ ├── g │ │ │ │ ├── doc-efm32g.h │ │ │ │ └── irq.json │ │ │ ├── gg │ │ │ │ ├── doc-efm32gg.h │ │ │ │ └── irq.json │ │ │ ├── gpio.h │ │ │ ├── i2c.h │ │ │ ├── letimer.h │ │ │ ├── lg │ │ │ │ ├── acmp.h │ │ │ │ ├── adc.h │ │ │ │ ├── burtc.h │ │ │ │ ├── cmu.h │ │ │ │ ├── dac.h │ │ │ │ ├── dma.h │ │ │ │ ├── doc-efm32lg.h │ │ │ │ ├── emu.h │ │ │ │ ├── gpio.h │ │ │ │ ├── i2c.h │ │ │ │ ├── irq.json │ │ │ │ ├── letimer.h │ │ │ │ ├── memorymap.h │ │ │ │ ├── msc.h │ │ │ │ ├── opamp.h │ │ │ │ ├── prs.h │ │ │ │ ├── rmu.h │ │ │ │ ├── rtc.h │ │ │ │ ├── timer.h │ │ │ │ ├── uart.h │ │ │ │ ├── usart.h │ │ │ │ ├── usb.h │ │ │ │ └── wdog.h │ │ │ ├── memorymap.h │ │ │ ├── msc.h │ │ │ ├── opamp.h │ │ │ ├── prs.h │ │ │ ├── rmu.h │ │ │ ├── rtc.h │ │ │ ├── tg │ │ │ │ ├── doc-efm32tg.h │ │ │ │ ├── irq.json │ │ │ │ └── memorymap.h │ │ │ ├── timer.h │ │ │ ├── uart.h │ │ │ ├── usart.h │ │ │ ├── usb.h │ │ │ └── wdog.h │ │ ├── ethernet │ │ │ ├── mac.h │ │ │ ├── mac_stm32fxx7.h │ │ │ ├── phy.h │ │ │ └── phy_ksz8051mll.h │ │ ├── gd32 │ │ │ ├── adc.h │ │ │ ├── can.h │ │ │ ├── cec.h │ │ │ ├── common │ │ │ │ ├── adc_common_v1.h │ │ │ │ ├── crc_common_all.h │ │ │ │ ├── crs_common_all.h │ │ │ │ ├── crypto_common_f24.h │ │ │ │ ├── dac_common_all.h │ │ │ │ ├── dma_common_f24.h │ │ │ │ ├── dma_common_l1f013.h │ │ │ │ ├── exti_common_all.h │ │ │ │ ├── flash_common_f01.h │ │ │ │ ├── flash_common_f234.h │ │ │ │ ├── flash_common_f24.h │ │ │ │ ├── gpio_common_all.h │ │ │ │ ├── gpio_common_f234.h │ │ │ │ ├── gpio_common_f24.h │ │ │ │ ├── hash_common_f24.h │ │ │ │ ├── i2c_common_all.h │ │ │ │ ├── i2c_common_f24.h │ │ │ │ ├── iwdg_common_all.h │ │ │ │ ├── pwr_common_all.h │ │ │ │ ├── pwr_common_l01.h │ │ │ │ ├── rcc_common_all.h │ │ │ │ ├── rng_common_f24.h │ │ │ │ ├── rtc_common_l1f024.h │ │ │ │ ├── spi_common_all.h │ │ │ │ ├── spi_common_f03.h │ │ │ │ ├── spi_common_f24.h │ │ │ │ ├── spi_common_l1f124.h │ │ │ │ ├── st_usbfs_common.h │ │ │ │ ├── st_usbfs_v1.h │ │ │ │ ├── st_usbfs_v2.h │ │ │ │ ├── syscfg_common_l1f234.h │ │ │ │ ├── timer_common_all.h │ │ │ │ ├── timer_common_f24.h │ │ │ │ ├── usart_common_all.h │ │ │ │ ├── usart_common_f124.h │ │ │ │ └── usart_common_f24.h │ │ │ ├── comparator.h │ │ │ ├── crc.h │ │ │ ├── crs.h │ │ │ ├── crypto.h │ │ │ ├── dac.h │ │ │ ├── dbgmcu.h │ │ │ ├── desig.h │ │ │ ├── dma.h │ │ │ ├── ethernet.h │ │ │ ├── exti.h │ │ │ ├── f1 │ │ │ │ ├── adc.h │ │ │ │ ├── bkp.h │ │ │ │ ├── crc.h │ │ │ │ ├── dac.h │ │ │ │ ├── dma.h │ │ │ │ ├── doc-stm32f1.h │ │ │ │ ├── ethernet.h │ │ │ │ ├── exti.h │ │ │ │ ├── flash.h │ │ │ │ ├── gpio.h │ │ │ │ ├── i2c.h │ │ │ │ ├── irq.json │ │ │ │ ├── iwdg.h │ │ │ │ ├── memorymap.h │ │ │ │ ├── pwr.h │ │ │ │ ├── rcc.h │ │ │ │ ├── rtc.h │ │ │ │ ├── spi.h │ │ │ │ ├── st_usbfs.h │ │ │ │ ├── timer.h │ │ │ │ └── usart.h │ │ │ ├── flash.h │ │ │ ├── fsmc.h │ │ │ ├── gpio.h │ │ │ ├── hash.h │ │ │ ├── i2c.h │ │ │ ├── iwdg.h │ │ │ ├── ltdc.h │ │ │ ├── memorymap.h │ │ │ ├── otg_common.h │ │ │ ├── otg_fs.h │ │ │ ├── otg_hs.h │ │ │ ├── pwr.h │ │ │ ├── rcc.h │ │ │ ├── rtc.h │ │ │ ├── sdio.h │ │ │ ├── spi.h │ │ │ ├── st_usbfs.h │ │ │ ├── syscfg.h │ │ │ ├── timer.h │ │ │ ├── tools.h │ │ │ ├── tsc.h │ │ │ ├── usart.h │ │ │ └── wwdg.h │ │ ├── license.dox │ │ ├── lm3s │ │ │ ├── doc-lm3s.h │ │ │ ├── gpio.h │ │ │ ├── irq.json │ │ │ ├── memorymap.h │ │ │ └── systemcontrol.h │ │ ├── lm4f │ │ │ ├── doc-lm4f.h │ │ │ ├── gpio.h │ │ │ ├── memorymap.h │ │ │ ├── nvic.h │ │ │ ├── rcc.h │ │ │ ├── ssi.h │ │ │ ├── systemcontrol.h │ │ │ ├── uart.h │ │ │ └── usb.h │ │ ├── lpc13xx │ │ │ ├── doc-lpc13xx.h │ │ │ ├── gpio.h │ │ │ ├── irq.json │ │ │ └── memorymap.h │ │ ├── lpc17xx │ │ │ ├── clock.h │ │ │ ├── doc-lpc17xx.h │ │ │ ├── gpio.h │ │ │ ├── irq.json │ │ │ ├── memorymap.h │ │ │ └── pwr.h │ │ ├── lpc43xx │ │ │ ├── adc.h │ │ │ ├── atimer.h │ │ │ ├── ccu.h │ │ │ ├── cgu.h │ │ │ ├── creg.h │ │ │ ├── doc-lpc43xx.h │ │ │ ├── eventrouter.h │ │ │ ├── gima.h │ │ │ ├── gpdma.h │ │ │ ├── gpio.h │ │ │ ├── i2c.h │ │ │ ├── i2s.h │ │ │ ├── ipc.h │ │ │ ├── m0 │ │ │ │ └── irq.json │ │ │ ├── m4 │ │ │ │ └── irq.json │ │ │ ├── memorymap.h │ │ │ ├── rgu.h │ │ │ ├── ritimer.h │ │ │ ├── scu.h │ │ │ ├── sdio.h │ │ │ ├── sgpio.h │ │ │ ├── ssp.h │ │ │ ├── timer.h │ │ │ ├── uart.h │ │ │ ├── usb.h │ │ │ └── wwdt.h │ │ ├── sam │ │ │ ├── 3a │ │ │ │ ├── gpio.h │ │ │ │ ├── irq.json │ │ │ │ ├── memorymap.h │ │ │ │ ├── pio.h │ │ │ │ └── pmc.h │ │ │ ├── 3n │ │ │ │ ├── gpio.h │ │ │ │ ├── irq.json │ │ │ │ ├── memorymap.h │ │ │ │ ├── periph.h │ │ │ │ ├── pio.h │ │ │ │ └── pmc.h │ │ │ ├── 3s │ │ │ │ ├── gpio.h │ │ │ │ ├── irq.json │ │ │ │ ├── memorymap.h │ │ │ │ ├── periph.h │ │ │ │ ├── pio.h │ │ │ │ ├── pmc.h │ │ │ │ └── smc.h │ │ │ ├── 3u │ │ │ │ ├── gpio.h │ │ │ │ ├── irq.json │ │ │ │ ├── memorymap.h │ │ │ │ ├── periph.h │ │ │ │ ├── pio.h │ │ │ │ └── pmc.h │ │ │ ├── 3x │ │ │ │ ├── gpio.h │ │ │ │ ├── irq.json │ │ │ │ ├── memorymap.h │ │ │ │ ├── pio.h │ │ │ │ └── pmc.h │ │ │ ├── common │ │ │ │ ├── gpio_common_3a3u3x.h │ │ │ │ ├── gpio_common_3n3s.h │ │ │ │ ├── gpio_common_all.h │ │ │ │ ├── periph_common_3a3x.h │ │ │ │ ├── pio_common_3a3u3x.h │ │ │ │ ├── pio_common_3n3s.h │ │ │ │ ├── pio_common_all.h │ │ │ │ ├── pmc_common_3a3s3x.h │ │ │ │ ├── pmc_common_3a3u3x.h │ │ │ │ ├── pmc_common_3n3u.h │ │ │ │ ├── pmc_common_all.h │ │ │ │ └── smc_common_3a3u3x.h │ │ │ ├── eefc.h │ │ │ ├── gpio.h │ │ │ ├── memorymap.h │ │ │ ├── periph.h │ │ │ ├── pio.h │ │ │ ├── pmc.h │ │ │ ├── pwm.h │ │ │ ├── smc.h │ │ │ ├── tc.h │ │ │ ├── uart.h │ │ │ ├── usart.h │ │ │ └── wdt.h │ │ ├── stm32 │ │ │ ├── adc.h │ │ │ ├── can.h │ │ │ ├── cec.h │ │ │ ├── common │ │ │ │ ├── adc_common_v1.h │ │ │ │ ├── crc_common_all.h │ │ │ │ ├── crs_common_all.h │ │ │ │ ├── crypto_common_f24.h │ │ │ │ ├── dac_common_all.h │ │ │ │ ├── dma_common_f24.h │ │ │ │ ├── dma_common_l1f013.h │ │ │ │ ├── exti_common_all.h │ │ │ │ ├── flash_common_f01.h │ │ │ │ ├── flash_common_f234.h │ │ │ │ ├── flash_common_f24.h │ │ │ │ ├── gpio_common_all.h │ │ │ │ ├── gpio_common_f234.h │ │ │ │ ├── gpio_common_f24.h │ │ │ │ ├── hash_common_f24.h │ │ │ │ ├── i2c_common_all.h │ │ │ │ ├── i2c_common_f24.h │ │ │ │ ├── iwdg_common_all.h │ │ │ │ ├── pwr_common_all.h │ │ │ │ ├── pwr_common_l01.h │ │ │ │ ├── rcc_common_all.h │ │ │ │ ├── rng_common_f24.h │ │ │ │ ├── rtc_common_l1f024.h │ │ │ │ ├── spi_common_all.h │ │ │ │ ├── spi_common_f03.h │ │ │ │ ├── spi_common_f24.h │ │ │ │ ├── spi_common_l1f124.h │ │ │ │ ├── st_usbfs_common.h │ │ │ │ ├── st_usbfs_v1.h │ │ │ │ ├── st_usbfs_v2.h │ │ │ │ ├── syscfg_common_l1f234.h │ │ │ │ ├── timer_common_all.h │ │ │ │ ├── timer_common_f24.h │ │ │ │ ├── usart_common_all.h │ │ │ │ ├── usart_common_f124.h │ │ │ │ └── usart_common_f24.h │ │ │ ├── comparator.h │ │ │ ├── crc.h │ │ │ ├── crs.h │ │ │ ├── crypto.h │ │ │ ├── dac.h │ │ │ ├── dbgmcu.h │ │ │ ├── desig.h │ │ │ ├── dma.h │ │ │ ├── ethernet.h │ │ │ ├── exti.h │ │ │ ├── f0 │ │ │ │ ├── adc.h │ │ │ │ ├── cec.h │ │ │ │ ├── comparator.h │ │ │ │ ├── crc.h │ │ │ │ ├── dac.h │ │ │ │ ├── dma.h │ │ │ │ ├── doc-stm32f0.h │ │ │ │ ├── exti.h │ │ │ │ ├── flash.h │ │ │ │ ├── gpio.h │ │ │ │ ├── i2c.h │ │ │ │ ├── irq.json │ │ │ │ ├── iwdg.h │ │ │ │ ├── memorymap.h │ │ │ │ ├── pwr.h │ │ │ │ ├── rcc.h │ │ │ │ ├── rtc.h │ │ │ │ ├── spi.h │ │ │ │ ├── st_usbfs.h │ │ │ │ ├── syscfg.h │ │ │ │ ├── timer.h │ │ │ │ ├── tsc.h │ │ │ │ └── usart.h │ │ │ ├── f1 │ │ │ │ ├── adc.h │ │ │ │ ├── bkp.h │ │ │ │ ├── crc.h │ │ │ │ ├── dac.h │ │ │ │ ├── dma.h │ │ │ │ ├── doc-stm32f1.h │ │ │ │ ├── ethernet.h │ │ │ │ ├── exti.h │ │ │ │ ├── flash.h │ │ │ │ ├── gpio.h │ │ │ │ ├── i2c.h │ │ │ │ ├── irq.json │ │ │ │ ├── iwdg.h │ │ │ │ ├── memorymap.h │ │ │ │ ├── pwr.h │ │ │ │ ├── rcc.h │ │ │ │ ├── rtc.h │ │ │ │ ├── spi.h │ │ │ │ ├── st_usbfs.h │ │ │ │ ├── timer.h │ │ │ │ └── usart.h │ │ │ ├── f2 │ │ │ │ ├── crc.h │ │ │ │ ├── crypto.h │ │ │ │ ├── dac.h │ │ │ │ ├── dma.h │ │ │ │ ├── doc-stm32f2.h │ │ │ │ ├── exti.h │ │ │ │ ├── flash.h │ │ │ │ ├── gpio.h │ │ │ │ ├── hash.h │ │ │ │ ├── i2c.h │ │ │ │ ├── irq.json │ │ │ │ ├── iwdg.h │ │ │ │ ├── memorymap.h │ │ │ │ ├── pwr.h │ │ │ │ ├── rcc.h │ │ │ │ ├── rng.h │ │ │ │ ├── rtc.h │ │ │ │ ├── spi.h │ │ │ │ ├── syscfg.h │ │ │ │ ├── timer.h │ │ │ │ └── usart.h │ │ │ ├── f3 │ │ │ │ ├── adc.h │ │ │ │ ├── crc.h │ │ │ │ ├── dac.h │ │ │ │ ├── dma.h │ │ │ │ ├── doc-stm32f3.h │ │ │ │ ├── exti.h │ │ │ │ ├── flash.h │ │ │ │ ├── gpio.h │ │ │ │ ├── i2c.h │ │ │ │ ├── irq.json │ │ │ │ ├── iwdg.h │ │ │ │ ├── memorymap.h │ │ │ │ ├── pwr.h │ │ │ │ ├── rcc.h │ │ │ │ ├── rtc.h │ │ │ │ ├── spi.h │ │ │ │ ├── st_usbfs.h │ │ │ │ ├── syscfg.h │ │ │ │ ├── timer.h │ │ │ │ └── usart.h │ │ │ ├── f4 │ │ │ │ ├── adc.h │ │ │ │ ├── crc.h │ │ │ │ ├── crypto.h │ │ │ │ ├── dac.h │ │ │ │ ├── dma.h │ │ │ │ ├── doc-stm32f4.h │ │ │ │ ├── exti.h │ │ │ │ ├── flash.h │ │ │ │ ├── fmc.h │ │ │ │ ├── gpio.h │ │ │ │ ├── hash.h │ │ │ │ ├── i2c.h │ │ │ │ ├── irq.json │ │ │ │ ├── iwdg.h │ │ │ │ ├── ltdc.h │ │ │ │ ├── memorymap.h │ │ │ │ ├── pwr.h │ │ │ │ ├── rcc.h │ │ │ │ ├── rng.h │ │ │ │ ├── rtc.h │ │ │ │ ├── spi.h │ │ │ │ ├── syscfg.h │ │ │ │ ├── timer.h │ │ │ │ └── usart.h │ │ │ ├── f7 │ │ │ │ ├── doc-stm32f7.h │ │ │ │ ├── gpio.h │ │ │ │ ├── irq.json │ │ │ │ ├── memorymap.h │ │ │ │ └── rcc.h │ │ │ ├── flash.h │ │ │ ├── fsmc.h │ │ │ ├── gpio.h │ │ │ ├── hash.h │ │ │ ├── i2c.h │ │ │ ├── iwdg.h │ │ │ ├── l0 │ │ │ │ ├── doc-stm32l0.h │ │ │ │ ├── exti.h │ │ │ │ ├── gpio.h │ │ │ │ ├── irq.json │ │ │ │ ├── memorymap.h │ │ │ │ ├── pwr.h │ │ │ │ ├── rcc.h │ │ │ │ ├── st_usbfs.h │ │ │ │ ├── syscfg.h │ │ │ │ └── timer.h │ │ │ ├── l1 │ │ │ │ ├── adc.h │ │ │ │ ├── crc.h │ │ │ │ ├── dac.h │ │ │ │ ├── dma.h │ │ │ │ ├── doc-stm32l1.h │ │ │ │ ├── exti.h │ │ │ │ ├── flash.h │ │ │ │ ├── gpio.h │ │ │ │ ├── i2c.h │ │ │ │ ├── irq.json │ │ │ │ ├── iwdg.h │ │ │ │ ├── lcd.h │ │ │ │ ├── memorymap.h │ │ │ │ ├── pwr.h │ │ │ │ ├── rcc.h │ │ │ │ ├── rtc.h │ │ │ │ ├── spi.h │ │ │ │ ├── st_usbfs.h │ │ │ │ ├── syscfg.h │ │ │ │ ├── timer.h │ │ │ │ └── usart.h │ │ │ ├── l4 │ │ │ │ ├── gpio.h │ │ │ │ ├── irq.json │ │ │ │ ├── memorymap.h │ │ │ │ └── rcc.h │ │ │ ├── ltdc.h │ │ │ ├── memorymap.h │ │ │ ├── otg_common.h │ │ │ ├── otg_fs.h │ │ │ ├── otg_hs.h │ │ │ ├── pwr.h │ │ │ ├── rcc.h │ │ │ ├── rtc.h │ │ │ ├── sdio.h │ │ │ ├── spi.h │ │ │ ├── st_usbfs.h │ │ │ ├── syscfg.h │ │ │ ├── timer.h │ │ │ ├── tools.h │ │ │ ├── tsc.h │ │ │ ├── usart.h │ │ │ └── wwdg.h │ │ ├── usb │ │ │ ├── audio.h │ │ │ ├── cdc.h │ │ │ ├── dfu.h │ │ │ ├── doc-usb.h │ │ │ ├── hid.h │ │ │ ├── midi.h │ │ │ ├── msc.h │ │ │ ├── usbd.h │ │ │ └── usbstd.h │ │ └── vf6xx │ │ │ ├── anadig.h │ │ │ ├── ccm.h │ │ │ ├── doc-vf6xx.h │ │ │ ├── gpio.h │ │ │ ├── iomuxc.h │ │ │ ├── irq.json │ │ │ ├── memorymap.h │ │ │ └── uart.h │ └── libopencmsis │ │ ├── core_cm3.h │ │ ├── dispatch │ │ └── irqhandlers.h │ │ └── gd32 │ │ └── f1 │ │ └── irqhandlers.h ├── ld │ ├── Makefile.example │ ├── Makefile.linker │ ├── README │ ├── devices.data │ ├── linker.ld.S │ └── tests │ │ ├── dash.data │ │ ├── dash.result │ │ ├── longline.data │ │ ├── longline.result │ │ ├── single.data │ │ ├── single.result │ │ ├── tree1.data │ │ ├── tree1.result │ │ ├── tree5.data │ │ ├── tree5.result │ │ ├── twomatch.data │ │ └── twomatch.result ├── lib │ ├── Makefile.include │ ├── cm3 │ │ ├── assert.c │ │ ├── dwt.c │ │ ├── nvic.c │ │ ├── scb.c │ │ ├── sync.c │ │ ├── systick.c │ │ └── vector.c │ ├── dispatch │ │ ├── vector_chipset.c │ │ └── vector_nvic.c │ ├── efm32 │ │ ├── g │ │ │ ├── Makefile │ │ │ ├── libopencm3_efm32g.ld │ │ │ └── libopencm3_efm32g880f128.ld │ │ ├── gg │ │ │ ├── Makefile │ │ │ ├── libopencm3_efm32gg.ld │ │ │ └── libopencm3_efm32gg990f1024.ld │ │ ├── lg │ │ │ ├── Makefile │ │ │ ├── adc.c │ │ │ ├── cmu.c │ │ │ ├── dac.c │ │ │ ├── dma.c │ │ │ ├── gpio.c │ │ │ ├── libopencm3_efm32lg.ld │ │ │ ├── prs.c │ │ │ └── timer.c │ │ └── tg │ │ │ ├── Makefile │ │ │ ├── libopencm3_efm32tg.ld │ │ │ └── libopencm3_efm32tg840f32.ld │ ├── ethernet │ │ ├── mac.c │ │ ├── mac_stm32fxx7.c │ │ ├── phy.c │ │ └── phy_ksz8051mll.c │ ├── gd32 │ │ ├── can.c │ │ ├── common │ │ │ ├── adc_common_v1.c │ │ │ ├── crc_common_all.c │ │ │ ├── crs_common_all.c │ │ │ ├── crypto_common_f24.c │ │ │ ├── dac_common_all.c │ │ │ ├── dma_common_f24.c │ │ │ ├── dma_common_l1f013.c │ │ │ ├── exti_common_all.c │ │ │ ├── flash_common_f01.c │ │ │ ├── flash_common_f234.c │ │ │ ├── flash_common_f24.c │ │ │ ├── gpio_common_all.c │ │ │ ├── gpio_common_f0234.c │ │ │ ├── hash_common_f24.c │ │ │ ├── i2c_common_all.c │ │ │ ├── iwdg_common_all.c │ │ │ ├── pwr_common_all.c │ │ │ ├── pwr_common_l01.c │ │ │ ├── rcc_common_all.c │ │ │ ├── rtc_common_l1f024.c │ │ │ ├── spi_common_all.c │ │ │ ├── spi_common_f03.c │ │ │ ├── spi_common_l1f124.c │ │ │ ├── st_usbfs_core.c │ │ │ ├── st_usbfs_core.h │ │ │ ├── timer_common_all.c │ │ │ ├── timer_common_f234.c │ │ │ ├── timer_common_f24.c │ │ │ ├── usart_common_all.c │ │ │ └── usart_common_f124.c │ │ ├── desig.c │ │ ├── f1 │ │ │ ├── Makefile │ │ │ ├── adc.c │ │ │ ├── crc.c │ │ │ ├── dac.c │ │ │ ├── dma.c │ │ │ ├── ethernet.c │ │ │ ├── flash.c │ │ │ ├── gd32f100x4.ld │ │ │ ├── gd32f100x6.ld │ │ │ ├── gd32f100x8.ld │ │ │ ├── gd32f100xb.ld │ │ │ ├── gd32f100xc.ld │ │ │ ├── gd32f100xd.ld │ │ │ ├── gd32f100xe.ld │ │ │ ├── gd32f103x8.ld │ │ │ ├── gd32f103xb.ld │ │ │ ├── gd32f103xc.ld │ │ │ ├── gd32f103xd.ld │ │ │ ├── gd32f103xe.ld │ │ │ ├── gpio.c │ │ │ ├── i2c.c │ │ │ ├── iwdg.c │ │ │ ├── libopencm3_gd32f1.ld │ │ │ ├── pwr.c │ │ │ ├── rcc.c │ │ │ ├── rtc.c │ │ │ ├── spi.c │ │ │ ├── timer.c │ │ │ └── usart.c │ │ └── st_usbfs_v1.c │ ├── lm3s │ │ ├── Makefile │ │ ├── gpio.c │ │ └── libopencm3_lm3s.ld │ ├── lm4f │ │ ├── Makefile │ │ ├── gpio.c │ │ ├── libopencm3_lm4f.ld │ │ ├── rcc.c │ │ ├── systemcontrol.c │ │ └── uart.c │ ├── lpc13xx │ │ ├── Makefile │ │ ├── gpio.c │ │ └── libopencm3_lpc13xx.ld │ ├── lpc17xx │ │ ├── Makefile │ │ ├── gpio.c │ │ ├── libopencm3_lpc17xx.ld │ │ └── pwr.c │ ├── lpc43xx │ │ ├── gpio.c │ │ ├── i2c.c │ │ ├── ipc.c │ │ ├── m0 │ │ │ ├── Makefile │ │ │ ├── libopencm3_lpc43xx_m0.ld │ │ │ └── libopencm3_lpc43xx_ram_only_m0.ld │ │ ├── m4 │ │ │ ├── Makefile │ │ │ ├── libopencm3_lpc43xx.ld │ │ │ ├── libopencm3_lpc43xx_ram_only.ld │ │ │ ├── libopencm3_lpc43xx_rom_to_ram.ld │ │ │ └── vector_chipset.c │ │ ├── scu.c │ │ ├── ssp.c │ │ ├── timer.c │ │ └── uart.c │ ├── sam │ │ ├── 3a │ │ │ ├── Makefile │ │ │ └── libopencm3_sam3a.ld │ │ ├── 3n │ │ │ ├── Makefile │ │ │ └── libopencm3_sam3n.ld │ │ ├── 3s │ │ │ ├── Makefile │ │ │ └── libopencm3_sam3s.ld │ │ ├── 3u │ │ │ ├── Makefile │ │ │ └── libopencm3_sam3u.ld │ │ ├── 3x │ │ │ ├── Makefile │ │ │ └── libopencm3_sam3x.ld │ │ └── common │ │ │ ├── gpio_common_3a3u3x.c │ │ │ ├── gpio_common_3n3s.c │ │ │ ├── gpio_common_all.c │ │ │ ├── pmc.c │ │ │ └── usart.c │ ├── stm32 │ │ ├── can.c │ │ ├── common │ │ │ ├── adc_common_v1.c │ │ │ ├── crc_common_all.c │ │ │ ├── crs_common_all.c │ │ │ ├── crypto_common_f24.c │ │ │ ├── dac_common_all.c │ │ │ ├── dma_common_f24.c │ │ │ ├── dma_common_l1f013.c │ │ │ ├── exti_common_all.c │ │ │ ├── flash_common_f01.c │ │ │ ├── flash_common_f234.c │ │ │ ├── flash_common_f24.c │ │ │ ├── gpio_common_all.c │ │ │ ├── gpio_common_f0234.c │ │ │ ├── hash_common_f24.c │ │ │ ├── i2c_common_all.c │ │ │ ├── iwdg_common_all.c │ │ │ ├── pwr_common_all.c │ │ │ ├── pwr_common_l01.c │ │ │ ├── rcc_common_all.c │ │ │ ├── rtc_common_l1f024.c │ │ │ ├── spi_common_all.c │ │ │ ├── spi_common_f03.c │ │ │ ├── spi_common_l1f124.c │ │ │ ├── st_usbfs_core.c │ │ │ ├── st_usbfs_core.h │ │ │ ├── timer_common_all.c │ │ │ ├── timer_common_f234.c │ │ │ ├── timer_common_f24.c │ │ │ ├── usart_common_all.c │ │ │ └── usart_common_f124.c │ │ ├── desig.c │ │ ├── f0 │ │ │ ├── Makefile │ │ │ ├── adc.c │ │ │ ├── comparator.c │ │ │ ├── crc.c │ │ │ ├── dac.c │ │ │ ├── dma.c │ │ │ ├── flash.c │ │ │ ├── gpio.c │ │ │ ├── i2c.c │ │ │ ├── iwdg.c │ │ │ ├── libopencm3_stm32f0.ld │ │ │ ├── pwr.c │ │ │ ├── rcc.c │ │ │ ├── rtc.c │ │ │ ├── spi.c │ │ │ ├── stm32f03xz6.ld │ │ │ ├── stm32f04xz6.ld │ │ │ ├── stm32f05xz6.ld │ │ │ ├── stm32f05xz8.ld │ │ │ ├── stm32f07xz8.ld │ │ │ ├── stm32f07xzb.ld │ │ │ ├── syscfg.c │ │ │ ├── timer.c │ │ │ └── usart.c │ │ ├── f1 │ │ │ ├── Makefile │ │ │ ├── adc.c │ │ │ ├── crc.c │ │ │ ├── dac.c │ │ │ ├── dma.c │ │ │ ├── ethernet.c │ │ │ ├── flash.c │ │ │ ├── gpio.c │ │ │ ├── i2c.c │ │ │ ├── iwdg.c │ │ │ ├── libopencm3_stm32f1.ld │ │ │ ├── pwr.c │ │ │ ├── rcc.c │ │ │ ├── rtc.c │ │ │ ├── spi.c │ │ │ ├── stm32f100x4.ld │ │ │ ├── stm32f100x6.ld │ │ │ ├── stm32f100x8.ld │ │ │ ├── stm32f100xb.ld │ │ │ ├── stm32f100xc.ld │ │ │ ├── stm32f100xd.ld │ │ │ ├── stm32f100xe.ld │ │ │ ├── stm32f103x8.ld │ │ │ ├── stm32f103xb.ld │ │ │ ├── stm32f103xc.ld │ │ │ ├── stm32f103xd.ld │ │ │ ├── stm32f103xe.ld │ │ │ ├── timer.c │ │ │ └── usart.c │ │ ├── f2 │ │ │ ├── Makefile │ │ │ ├── crc.c │ │ │ ├── crypto.c │ │ │ ├── dac.c │ │ │ ├── dma.c │ │ │ ├── flash.c │ │ │ ├── gpio.c │ │ │ ├── hash.c │ │ │ ├── i2c.c │ │ │ ├── iwdg.c │ │ │ ├── libopencm3_stm32f2.ld │ │ │ ├── pwr.c │ │ │ ├── rcc.c │ │ │ ├── rtc.c │ │ │ ├── spi.c │ │ │ ├── timer.c │ │ │ └── usart.c │ │ ├── f3 │ │ │ ├── Makefile │ │ │ ├── adc.c │ │ │ ├── crc.c │ │ │ ├── dac.c │ │ │ ├── dma.c │ │ │ ├── flash.c │ │ │ ├── i2c.c │ │ │ ├── iwdg.c │ │ │ ├── libopencm3_stm32f3.ld │ │ │ ├── pwr.c │ │ │ ├── rcc.c │ │ │ ├── rtc.c │ │ │ ├── spi.c │ │ │ ├── stm32f303xc.ld │ │ │ ├── timer.c │ │ │ ├── usart.c │ │ │ └── vector_chipset.c │ │ ├── f4 │ │ │ ├── Makefile │ │ │ ├── adc.c │ │ │ ├── crc.c │ │ │ ├── crypto.c │ │ │ ├── dac.c │ │ │ ├── dma.c │ │ │ ├── flash.c │ │ │ ├── fmc.c │ │ │ ├── gpio.c │ │ │ ├── hash.c │ │ │ ├── i2c.c │ │ │ ├── iwdg.c │ │ │ ├── libopencm3_stm32f4.ld │ │ │ ├── ltdc.c │ │ │ ├── pwr.c │ │ │ ├── rcc.c │ │ │ ├── rtc.c │ │ │ ├── spi.c │ │ │ ├── stm32f405x6.ld │ │ │ ├── timer.c │ │ │ ├── usart.c │ │ │ └── vector_chipset.c │ │ ├── f7 │ │ │ ├── Makefile │ │ │ ├── gpio.c │ │ │ ├── libopencm3_stm32f7.ld │ │ │ └── vector_chipset.c │ │ ├── l0 │ │ │ ├── Makefile │ │ │ ├── gpio.c │ │ │ ├── libopencm3_stm32l0.ld │ │ │ ├── rcc.c │ │ │ ├── stm32l0xx6.ld │ │ │ └── stm32l0xx8.ld │ │ ├── l1 │ │ │ ├── Makefile │ │ │ ├── adc.c │ │ │ ├── crc.c │ │ │ ├── dac.c │ │ │ ├── dma.c │ │ │ ├── flash.c │ │ │ ├── gpio.c │ │ │ ├── i2c.c │ │ │ ├── iwdg.c │ │ │ ├── lcd.c │ │ │ ├── libopencm3_stm32l1.ld │ │ │ ├── rcc.c │ │ │ ├── rtc.c │ │ │ ├── spi.c │ │ │ ├── stm32l100xc.ld │ │ │ ├── stm32l15xx6.ld │ │ │ ├── stm32l15xx8.ld │ │ │ ├── stm32l15xxb.ld │ │ │ ├── stm32l15xxc.ld │ │ │ ├── stm32l15xxd.ld │ │ │ ├── timer.c │ │ │ └── usart.c │ │ ├── l4 │ │ │ ├── Makefile │ │ │ └── libopencm3_stm32l4.ld │ │ ├── st_usbfs_v1.c │ │ └── st_usbfs_v2.c │ ├── usb │ │ ├── usb.c │ │ ├── usb_control.c │ │ ├── usb_efm32lg.c │ │ ├── usb_f107.c │ │ ├── usb_f207.c │ │ ├── usb_fx07_common.c │ │ ├── usb_fx07_common.h │ │ ├── usb_lm4f.c │ │ ├── usb_msc.c │ │ ├── usb_private.h │ │ └── usb_standard.c │ └── vf6xx │ │ ├── Makefile │ │ ├── ccm.c │ │ ├── gpio.c │ │ ├── iomuxc.c │ │ ├── libopencm3_vf6xx.ld │ │ ├── uart.c │ │ └── vector_chipset.c ├── locm3.sublime-project ├── mk │ ├── README │ ├── gcc-config.mk │ ├── gcc-rules.mk │ ├── genlink-config.mk │ └── genlink-rules.mk ├── scripts │ ├── black_magic_probe_debug.scr │ ├── black_magic_probe_flash.scr │ ├── checkpatch.pl │ ├── data │ │ └── lpc43xx │ │ │ ├── README │ │ │ ├── adc.yaml │ │ │ ├── atimer.yaml │ │ │ ├── ccu.yaml │ │ │ ├── cgu.yaml │ │ │ ├── creg.yaml │ │ │ ├── csv2yaml.py │ │ │ ├── eventrouter.yaml │ │ │ ├── gen.py │ │ │ ├── gima.yaml │ │ │ ├── gpdma.yaml │ │ │ ├── gpio.yaml │ │ │ ├── i2c.yaml │ │ │ ├── i2s.yaml │ │ │ ├── rgu.yaml │ │ │ ├── ritimer.yaml │ │ │ ├── scu.yaml │ │ │ ├── sgpio.yaml │ │ │ ├── ssp.yaml │ │ │ ├── usb.yaml │ │ │ └── yaml_odict.py │ ├── genlink.awk │ ├── genlinktest.sh │ ├── irq2nvic_h │ └── lpcvtcksum └── tests │ ├── gadget-zero │ ├── Makefile.stm32f072disco │ ├── Makefile.stm32f103-generic │ ├── Makefile.stm32f429i-disco │ ├── Makefile.stm32f4disco │ ├── Makefile.stm32l053disco │ ├── Makefile.stm32l1-generic │ ├── README.md │ ├── main-stm32f072disco.c │ ├── main-stm32f103-generic.c │ ├── main-stm32f429i-disco.c │ ├── main-stm32f4disco.c │ ├── main-stm32l053disco.c │ ├── main-stm32l1-generic.c │ ├── openocd.stm32f072disco.cfg │ ├── openocd.stm32f103-generic.cfg │ ├── openocd.stm32f429i-disco.cfg │ ├── openocd.stm32f4disco.cfg │ ├── openocd.stm32l053disco.cfg │ ├── openocd.stm32l1-generic.cfg │ ├── stub.py │ ├── test_gadget0.py │ ├── usb-gadget0.c │ └── usb-gadget0.h │ ├── rules.mk │ └── shared │ ├── trace.c │ ├── trace.h │ └── trace_stdio.c └── src ├── .gitignore ├── Makefile ├── gt811.c ├── gt811.h ├── main.c ├── systick.c ├── systick.h ├── usb_device.c └── usb_device.h /.gitignore: -------------------------------------------------------------------------------- 1 | # Object files 2 | *.o 3 | *.ko 4 | *.obj 5 | *.elf 6 | 7 | # Libraries 8 | *.lib 9 | *.a 10 | 11 | # Shared objects (inc. Windows DLLs) 12 | *.dll 13 | *.so 14 | *.so.* 15 | *.dylib 16 | 17 | # Executables 18 | *.exe 19 | *.out 20 | *.app 21 | *.i*86 22 | *.x86_64 23 | *.hex 24 | -------------------------------------------------------------------------------- /.vscode/tasks.json: -------------------------------------------------------------------------------- 1 | { 2 | // See https://go.microsoft.com/fwlink/?LinkId=733558 3 | // for the documentation about the tasks.json format 4 | "version": "0.1.0", 5 | "command": "make", 6 | "isShellCommand": true, 7 | "options": { 8 | "cwd": "${workspaceRoot}/firmware/src/" 9 | }, 10 | "args": [], 11 | "showOutput": "always" 12 | } -------------------------------------------------------------------------------- /common/gd32f103.ld: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2010 Thomas Otto 5 | * 6 | * This program is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program. If not, see . 18 | */ 19 | 20 | /* Linker script for Olimex STM32-H103 (STM32F103RBT6, 128K flash, 20K RAM). */ 21 | 22 | /* Define memory regions. */ 23 | MEMORY 24 | { 25 | rom (rx) : ORIGIN = 0x08000000, LENGTH = 128K 26 | ram (rwx) : ORIGIN = 0x20000000, LENGTH = 20K 27 | } 28 | 29 | /* Include the common ld script. */ 30 | INCLUDE libopencm3_gd32f1.ld 31 | -------------------------------------------------------------------------------- /documentation/GD32F103C8T6.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pysco68/waveshare-hid/e0784af33ed352d2ac72ba3511d1f3d44a771252/documentation/GD32F103C8T6.pdf -------------------------------------------------------------------------------- /documentation/GT811 - I2C register map.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pysco68/waveshare-hid/e0784af33ed352d2ac72ba3511d1f3d44a771252/documentation/GT811 - I2C register map.xlsx -------------------------------------------------------------------------------- /documentation/GT811.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pysco68/waveshare-hid/e0784af33ed352d2ac72ba3511d1f3d44a771252/documentation/GT811.pdf -------------------------------------------------------------------------------- /libopencm3/.gitignore: -------------------------------------------------------------------------------- 1 | *.d 2 | 3 | *.o 4 | 5 | *.bin 6 | 7 | *.hex 8 | 9 | *.list 10 | 11 | *.srec 12 | 13 | *.a 14 | 15 | *.elf 16 | 17 | lib/*.ld 18 | 19 | *.stylecheck 20 | 21 | *.swp 22 | 23 | \#* 24 | 25 | .\#* 26 | 27 | *~ 28 | 29 | *.map 30 | 31 | *.log 32 | 33 | *.pyc 34 | 35 | html/ 36 | 37 | latex/ 38 | 39 | *.pdf 40 | 41 | *.tag 42 | 43 | .DS_Store 44 | 45 | # These are generated 46 | 47 | include/libopencm3/**/nvic.h 48 | 49 | include/libopencm3/**/**/nvic.h 50 | 51 | lib/**/vector_nvic.c 52 | 53 | lib/**/**/vector_nvic.c 54 | 55 | include/libopencmsis/efm32/ 56 | 57 | include/libopencmsis/lm3s/ 58 | 59 | include/libopencmsis/lpc13xx/ 60 | 61 | include/libopencmsis/lpc17xx/ 62 | 63 | include/libopencmsis/lpc43xx/ 64 | 65 | include/libopencmsis/sam/ 66 | 67 | include/libopencmsis/stm32/ 68 | 69 | include/libopencmsis/vf6xx/ 70 | 71 | 72 | 73 | # netbeans, intellij, eclipse project files 74 | 75 | nbproject/ 76 | 77 | .idea/ 78 | 79 | .project 80 | 81 | 82 | 83 | # cscope databases 84 | 85 | cscope.out 86 | -------------------------------------------------------------------------------- /libopencm3/doc/Doxyfile: -------------------------------------------------------------------------------- 1 | # Doxygen include file to generate top level entry document 2 | 3 | # 14 September 2012 4 | # (C) Ken Sarkies 5 | 6 | #--------------------------------------------------------------------------- 7 | # Common Include File 8 | #--------------------------------------------------------------------------- 9 | 10 | @INCLUDE = ./Doxyfile_common 11 | 12 | #--------------------------------------------------------------------------- 13 | # Local settings 14 | #--------------------------------------------------------------------------- 15 | 16 | INPUT = ../include/libopencm3/docmain.dox 17 | 18 | LAYOUT_FILE = DoxygenLayout.xml 19 | 20 | GENERATE_LATEX = NO 21 | 22 | -------------------------------------------------------------------------------- /libopencm3/doc/Makefile: -------------------------------------------------------------------------------- 1 | # Makefile to build libopencm3 documentation 2 | 3 | # 14 September 2012 4 | # (C) Ken Sarkies 5 | 6 | ARCHS := stm32f0 stm32f1 stm32f2 stm32f3 stm32f4 stm32f7 7 | ARCHS += stm32l0 stm32l1 stm32l4 8 | ARCHS += efm32g efm32gg efm32lg efm32tg 9 | ARCHS += lm3s lm4f 10 | ARCHS += lpc13xx lpc17xx lpc43xx 11 | ARCHS += sam3a sam3n sam3s sam3u sam3x 12 | ARCHS += vf6xx 13 | 14 | PDFS := $(ARCHS:=.pdf) 15 | 16 | doc: html latex 17 | 18 | html: cm3 usb $(ARCHS) 19 | doxygen 20 | 21 | latex: $(PDFS) 22 | 23 | cm3: 24 | cd cm3/; doxygen 25 | 26 | usb: 27 | cd usb/; doxygen 28 | 29 | $(ARCHS): 30 | cd $@/; doxygen 31 | 32 | %.pdf: 33 | cd $*/; doxygen Doxyfile_latex; cd latex/; $(MAKE); cp refman.pdf ../../$(*).pdf 34 | 35 | clean: 36 | @rm -rf html/ */html/ */latex/ *.pdf */*.tag 37 | 38 | .PHONY: doc html cm3 usb $(ARCHS) latex 39 | 40 | -------------------------------------------------------------------------------- /libopencm3/doc/README: -------------------------------------------------------------------------------- 1 | libopencm3 Documentation 2 | 14 September 2012 (C) K Sarkies 3 | ------------------------------- 4 | 5 | To generate all documentation run 'make doc' in the doc directory, or 6 | for html documentation only run 'make html' (much faster). This runs doxygen 7 | for each of the processor families then integrates the whole. 8 | 9 | Alternatively run 'make doc' in the top directory to make html documentation. 10 | LaTeX and pdf documentation is currently very large in size. 11 | 12 | This requires doxygen v 1.8.2 or later. 13 | 14 | HTML, LaTeX, and pdf output can be produced. 15 | 16 | Generation of HTML 17 | ------------------ 18 | 19 | To view HTML, point a browser to libopencm3/doc/html/index.html. 20 | 21 | Generation of PDF 22 | ----------------- 23 | 24 | The pdf is generated via LaTeX. The pdf files are placed in the 25 | doc directory. Each file contains all documentation for the core and common 26 | features. The resulting files are huge. 27 | 28 | 29 | Requirements 30 | ------------ 31 | On Fedora 19, the following packages (at least!) are needed to build the pdf 32 | output 33 | 34 | texlive texlive-sectsty texlive-tocloft texlive-xtab texlive-multirow 35 | -------------------------------------------------------------------------------- /libopencm3/doc/cm3/Doxyfile: -------------------------------------------------------------------------------- 1 | # HTML Documentation for CM3 Core features. 2 | 3 | # 14 September 2012 4 | # (C) Ken Sarkies 5 | 6 | #--------------------------------------------------------------------------- 7 | # Common Include File 8 | #--------------------------------------------------------------------------- 9 | 10 | @INCLUDE = ../Doxyfile_common 11 | 12 | #--------------------------------------------------------------------------- 13 | # Local settings 14 | #--------------------------------------------------------------------------- 15 | 16 | WARN_LOGFILE = doxygen_cm3.log 17 | 18 | INPUT = ../../include/libopencm3/license.dox \ 19 | ../../include/libopencm3/cm3/ 20 | 21 | LAYOUT_FILE = DoxygenLayout_cm3.xml 22 | 23 | GENERATE_TAGFILE = cm3.tag 24 | 25 | -------------------------------------------------------------------------------- /libopencm3/doc/efm32g/Doxyfile: -------------------------------------------------------------------------------- 1 | # HTML Documentation for efm32 code level 2 | 3 | # 11 November 2012 4 | # (C) Ken Sarkies 5 | 6 | #--------------------------------------------------------------------------- 7 | # Common Include File 8 | #--------------------------------------------------------------------------- 9 | 10 | @INCLUDE = ../Doxyfile_common 11 | 12 | #--------------------------------------------------------------------------- 13 | # Local settings 14 | #--------------------------------------------------------------------------- 15 | 16 | WARN_LOGFILE = doxygen_efm32g.log 17 | 18 | INPUT = ../../include/libopencm3/license.dox \ 19 | ../../include/libopencm3/efm32/efm32g \ 20 | ../../lib/efm32/efm32g 21 | 22 | EXCLUDE = 23 | 24 | LAYOUT_FILE = DoxygenLayout_efm32g.xml 25 | 26 | GENERATE_TAGFILE = efm32g.tag 27 | 28 | ENABLE_PREPROCESSING = YES 29 | 30 | 31 | -------------------------------------------------------------------------------- /libopencm3/doc/efm32g/Doxyfile_latex: -------------------------------------------------------------------------------- 1 | # LaTeX Documentation for efm32 code level 2 | 3 | # 12 November 2012 4 | # (C) Ken Sarkies 5 | 6 | #--------------------------------------------------------------------------- 7 | # Common Include File 8 | #--------------------------------------------------------------------------- 9 | 10 | @INCLUDE = ../Doxyfile_common 11 | 12 | #--------------------------------------------------------------------------- 13 | # Local settings 14 | #--------------------------------------------------------------------------- 15 | 16 | WARN_LOGFILE = doxygen_efm32g_latex.log 17 | 18 | INPUT = ../../include/libopencm3/docmain.dox \ 19 | ../../include/libopencm3/license.dox \ 20 | ../../include/libopencm3/efm32/efm32g \ 21 | ../../lib/efm32/efm32g 22 | 23 | EXCLUDE = ../../include/libopencm3/efm32/doc-efm32g.h 24 | 25 | LAYOUT_FILE = DoxygenLayout_efm32g.xml 26 | 27 | GENERATE_HTML = NO 28 | 29 | GENERATE_LATEX = YES 30 | 31 | LATEX_HEADER = header_efm32g.tex 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/doc/efm32gg/Doxyfile: -------------------------------------------------------------------------------- 1 | # HTML Documentation for efm32 code level 2 | 3 | # 11 November 2012 4 | # (C) Ken Sarkies 5 | 6 | #--------------------------------------------------------------------------- 7 | # Common Include File 8 | #--------------------------------------------------------------------------- 9 | 10 | @INCLUDE = ../Doxyfile_common 11 | 12 | #--------------------------------------------------------------------------- 13 | # Local settings 14 | #--------------------------------------------------------------------------- 15 | 16 | WARN_LOGFILE = doxygen_efm32gg.log 17 | 18 | INPUT = ../../include/libopencm3/license.dox \ 19 | ../../include/libopencm3/efm32/efm32gg \ 20 | ../../lib/efm32/efm32gg 21 | 22 | EXCLUDE = 23 | 24 | LAYOUT_FILE = DoxygenLayout_efm32gg.xml 25 | 26 | GENERATE_TAGFILE = efm32gg.tag 27 | 28 | ENABLE_PREPROCESSING = YES 29 | 30 | 31 | -------------------------------------------------------------------------------- /libopencm3/doc/efm32gg/Doxyfile_latex: -------------------------------------------------------------------------------- 1 | # LaTeX Documentation for efm32 code level 2 | 3 | # 12 November 2012 4 | # (C) Ken Sarkies 5 | 6 | #--------------------------------------------------------------------------- 7 | # Common Include File 8 | #--------------------------------------------------------------------------- 9 | 10 | @INCLUDE = ../Doxyfile_common 11 | 12 | #--------------------------------------------------------------------------- 13 | # Local settings 14 | #--------------------------------------------------------------------------- 15 | 16 | WARN_LOGFILE = doxygen_efm32gg_latex.log 17 | 18 | INPUT = ../../include/libopencm3/docmain.dox \ 19 | ../../include/libopencm3/license.dox \ 20 | ../../include/libopencm3/efm32/efm32gg \ 21 | ../../lib/efm32/efm32gg 22 | 23 | EXCLUDE = ../../include/libopencm3/efm32/doc-efm32gg.h 24 | 25 | LAYOUT_FILE = DoxygenLayout_efm32gg.xml 26 | 27 | GENERATE_HTML = NO 28 | 29 | GENERATE_LATEX = YES 30 | 31 | LATEX_HEADER = header_efm32gg.tex 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/doc/efm32lg/Doxyfile: -------------------------------------------------------------------------------- 1 | # HTML Documentation for efm32 code level 2 | 3 | # 11 November 2012 4 | # (C) Ken Sarkies 5 | 6 | #--------------------------------------------------------------------------- 7 | # Common Include File 8 | #--------------------------------------------------------------------------- 9 | 10 | @INCLUDE = ../Doxyfile_common 11 | 12 | #--------------------------------------------------------------------------- 13 | # Local settings 14 | #--------------------------------------------------------------------------- 15 | 16 | WARN_LOGFILE = doxygen_efm32lg.log 17 | 18 | INPUT = ../../include/libopencm3/license.dox \ 19 | ../../include/libopencm3/efm32/efm32lg \ 20 | ../../lib/efm32/efm32lg 21 | 22 | EXCLUDE = 23 | 24 | LAYOUT_FILE = DoxygenLayout_efm32lg.xml 25 | 26 | GENERATE_TAGFILE = efm32lg.tag 27 | 28 | ENABLE_PREPROCESSING = YES 29 | 30 | 31 | -------------------------------------------------------------------------------- /libopencm3/doc/efm32lg/Doxyfile_latex: -------------------------------------------------------------------------------- 1 | # LaTeX Documentation for efm32 code level 2 | 3 | # 12 November 2012 4 | # (C) Ken Sarkies 5 | 6 | #--------------------------------------------------------------------------- 7 | # Common Include File 8 | #--------------------------------------------------------------------------- 9 | 10 | @INCLUDE = ../Doxyfile_common 11 | 12 | #--------------------------------------------------------------------------- 13 | # Local settings 14 | #--------------------------------------------------------------------------- 15 | 16 | WARN_LOGFILE = doxygen_efm32lg_latex.log 17 | 18 | INPUT = ../../include/libopencm3/docmain.dox \ 19 | ../../include/libopencm3/license.dox \ 20 | ../../include/libopencm3/efm32/efm32lg \ 21 | ../../lib/efm32/efm32lg 22 | 23 | EXCLUDE = ../../include/libopencm3/efm32/doc-efm32lg.h 24 | 25 | LAYOUT_FILE = DoxygenLayout_efm32lg.xml 26 | 27 | GENERATE_HTML = NO 28 | 29 | GENERATE_LATEX = YES 30 | 31 | LATEX_HEADER = header_efm32lg.tex 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/doc/efm32tg/Doxyfile: -------------------------------------------------------------------------------- 1 | # HTML Documentation for efm32 code level 2 | 3 | # 11 November 2012 4 | # (C) Ken Sarkies 5 | 6 | #--------------------------------------------------------------------------- 7 | # Common Include File 8 | #--------------------------------------------------------------------------- 9 | 10 | @INCLUDE = ../Doxyfile_common 11 | 12 | #--------------------------------------------------------------------------- 13 | # Local settings 14 | #--------------------------------------------------------------------------- 15 | 16 | WARN_LOGFILE = doxygen_efm32tg.log 17 | 18 | INPUT = ../../include/libopencm3/license.dox \ 19 | ../../include/libopencm3/efm32/efm32tg \ 20 | ../../lib/efm32/efm32tg 21 | 22 | EXCLUDE = 23 | 24 | LAYOUT_FILE = DoxygenLayout_efm32tg.xml 25 | 26 | GENERATE_TAGFILE = efm32tg.tag 27 | 28 | ENABLE_PREPROCESSING = YES 29 | 30 | 31 | -------------------------------------------------------------------------------- /libopencm3/doc/efm32tg/Doxyfile_latex: -------------------------------------------------------------------------------- 1 | # LaTeX Documentation for efm32 code level 2 | 3 | # 12 November 2012 4 | # (C) Ken Sarkies 5 | 6 | #--------------------------------------------------------------------------- 7 | # Common Include File 8 | #--------------------------------------------------------------------------- 9 | 10 | @INCLUDE = ../Doxyfile_common 11 | 12 | #--------------------------------------------------------------------------- 13 | # Local settings 14 | #--------------------------------------------------------------------------- 15 | 16 | WARN_LOGFILE = doxygen_efm32tg_latex.log 17 | 18 | INPUT = ../../include/libopencm3/docmain.dox \ 19 | ../../include/libopencm3/license.dox \ 20 | ../../include/libopencm3/efm32/efm32tg \ 21 | ../../lib/efm32/efm32tg 22 | 23 | EXCLUDE = ../../include/libopencm3/efm32/doc-efm32tg.h 24 | 25 | LAYOUT_FILE = DoxygenLayout_efm32tg.xml 26 | 27 | GENERATE_HTML = NO 28 | 29 | GENERATE_LATEX = YES 30 | 31 | LATEX_HEADER = header_efm32tg.tex 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/doc/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Documentation index

7 | 8 | 9 | -------------------------------------------------------------------------------- /libopencm3/doc/lm3s/Doxyfile: -------------------------------------------------------------------------------- 1 | # HTML Documentation for LM3S code level 2 | 3 | # 14 September 2012 4 | # (C) Ken Sarkies 5 | 6 | #--------------------------------------------------------------------------- 7 | # Common Include File 8 | #--------------------------------------------------------------------------- 9 | 10 | @INCLUDE = ../Doxyfile_common 11 | 12 | #--------------------------------------------------------------------------- 13 | # Local settings 14 | #--------------------------------------------------------------------------- 15 | 16 | WARN_LOGFILE = doxygen_lm3s.log 17 | 18 | INPUT = ../../include/libopencm3/license.dox \ 19 | ../../include/libopencm3/lm3s \ 20 | ../../lib/lm3s 21 | 22 | LAYOUT_FILE = DoxygenLayout_lm3s.xml 23 | 24 | GENERATE_TAGFILE = lm3s.tag 25 | 26 | ENABLE_PREPROCESSING = YES 27 | 28 | 29 | -------------------------------------------------------------------------------- /libopencm3/doc/lm3s/Doxyfile_latex: -------------------------------------------------------------------------------- 1 | # LaTeX Documentation for LM3S code level 2 | 3 | # 14 September 2012 4 | # (C) Ken Sarkies 5 | 6 | #--------------------------------------------------------------------------- 7 | # Common Include File 8 | #--------------------------------------------------------------------------- 9 | 10 | @INCLUDE = ../Doxyfile_common 11 | 12 | #--------------------------------------------------------------------------- 13 | # Local settings 14 | #--------------------------------------------------------------------------- 15 | 16 | WARN_LOGFILE = doxygen_lm3s_latex.log 17 | 18 | INPUT = ../../include/libopencm3/docmain.dox \ 19 | ../../include/libopencm3/license.dox \ 20 | ../../include/libopencm3/lm3s \ 21 | ../../lib/lm3s 22 | 23 | EXCLUDE = ../../include/libopencm3/lm3s/doc-lm3s.h 24 | 25 | LAYOUT_FILE = DoxygenLayout_lm3s.xml 26 | 27 | GENERATE_HTML = NO 28 | 29 | GENERATE_LATEX = YES 30 | 31 | LATEX_HEADER = header_lm3s.tex 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/doc/lm4f/Doxyfile: -------------------------------------------------------------------------------- 1 | # HTML Documentation for LM3S code level 2 | 3 | # 14 September 2012 4 | # (C) Ken Sarkies 5 | 6 | #--------------------------------------------------------------------------- 7 | # Common Include File 8 | #--------------------------------------------------------------------------- 9 | 10 | @INCLUDE = ../Doxyfile_common 11 | 12 | #--------------------------------------------------------------------------- 13 | # Local settings 14 | #--------------------------------------------------------------------------- 15 | 16 | WARN_LOGFILE = doxygen_lm4f.log 17 | 18 | INPUT = ../../include/libopencm3/license.dox \ 19 | ../../include/libopencm3/lm4f \ 20 | ../../lib/lm4f 21 | 22 | LAYOUT_FILE = DoxygenLayout_lm4f.xml 23 | 24 | GENERATE_TAGFILE = lm4f.tag 25 | 26 | ENABLE_PREPROCESSING = YES 27 | 28 | 29 | -------------------------------------------------------------------------------- /libopencm3/doc/lm4f/Doxyfile_latex: -------------------------------------------------------------------------------- 1 | # LaTeX Documentation for LM3S code level 2 | 3 | # 14 September 2012 4 | # Copyright (C) Ken Sarkies 5 | # Copyright (C) 2012 Alexandru Gagniuc 6 | 7 | #--------------------------------------------------------------------------- 8 | # Common Include File 9 | #--------------------------------------------------------------------------- 10 | 11 | @INCLUDE = ../Doxyfile_common 12 | 13 | #--------------------------------------------------------------------------- 14 | # Local settings 15 | #--------------------------------------------------------------------------- 16 | 17 | WARN_LOGFILE = doxygen_lm4f_latex.log 18 | 19 | INPUT = ../../include/libopencm3/docmain.dox \ 20 | ../../include/libopencm3/license.dox \ 21 | ../../include/libopencm3/lm4f \ 22 | ../../lib/lm4f 23 | 24 | EXCLUDE = ../../include/libopencm3/lm4f/doc-lm4f.h 25 | 26 | LAYOUT_FILE = DoxygenLayout_lm4f.xml 27 | 28 | GENERATE_HTML = NO 29 | 30 | GENERATE_LATEX = YES 31 | 32 | LATEX_HEADER = header_lm4f.tex 33 | 34 | -------------------------------------------------------------------------------- /libopencm3/doc/lpc13xx/Doxyfile: -------------------------------------------------------------------------------- 1 | # HTML Documentation for LPC13xx code level 2 | 3 | # 14 September 2012 4 | # (C) Ken Sarkies 5 | 6 | #--------------------------------------------------------------------------- 7 | # Common Include File 8 | #--------------------------------------------------------------------------- 9 | 10 | @INCLUDE = ../Doxyfile_common 11 | 12 | #--------------------------------------------------------------------------- 13 | # Local settings 14 | #--------------------------------------------------------------------------- 15 | 16 | WARN_LOGFILE = doxygen_lpc13xx.log 17 | 18 | INPUT = ../../include/libopencm3/license.dox \ 19 | ../../include/libopencm3/lpc13xx \ 20 | ../../lib/lpc13xx 21 | 22 | LAYOUT_FILE = DoxygenLayout_lpc13xx.xml 23 | 24 | GENERATE_TAGFILE = lpc13xx.tag 25 | 26 | ENABLE_PREPROCESSING = YES 27 | 28 | 29 | -------------------------------------------------------------------------------- /libopencm3/doc/lpc13xx/Doxyfile_latex: -------------------------------------------------------------------------------- 1 | # LaTeX Documentation for LPC13xx code level 2 | 3 | # 14 September 2012 4 | # (C) Ken Sarkies 5 | 6 | #--------------------------------------------------------------------------- 7 | # Common Include File 8 | #--------------------------------------------------------------------------- 9 | 10 | @INCLUDE = ../Doxyfile_common 11 | 12 | #--------------------------------------------------------------------------- 13 | # Local settings 14 | #--------------------------------------------------------------------------- 15 | 16 | WARN_LOGFILE = doxygen_lpc13xx_latex.log 17 | 18 | INPUT = ../../include/libopencm3/docmain.dox \ 19 | ../../include/libopencm3/license.dox \ 20 | ../../include/libopencm3/lpc13xx/ \ 21 | ../../lib/lpc13xx 22 | 23 | EXCLUDE = ../../include/libopencm3/lpc13xx/doc-lpc13xx.h 24 | 25 | LAYOUT_FILE = DoxygenLayout_lpc13xx.xml 26 | 27 | GENERATE_HTML = NO 28 | 29 | GENERATE_LATEX = YES 30 | 31 | LATEX_HEADER = header_lpc13xx.tex 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/doc/lpc17xx/Doxyfile: -------------------------------------------------------------------------------- 1 | # HTML Documentation for LPC17xx code level 2 | 3 | # 14 September 2012 4 | # (C) Ken Sarkies 5 | 6 | #--------------------------------------------------------------------------- 7 | # Common Include File 8 | #--------------------------------------------------------------------------- 9 | 10 | @INCLUDE = ../Doxyfile_common 11 | 12 | #--------------------------------------------------------------------------- 13 | # Local settings 14 | #--------------------------------------------------------------------------- 15 | 16 | WARN_LOGFILE = doxygen_lpc17xx.log 17 | 18 | INPUT = ../../include/libopencm3/license.dox \ 19 | ../../include/libopencm3/lpc17xx \ 20 | ../../lib/lpc17xx 21 | 22 | LAYOUT_FILE = DoxygenLayout_lpc17xx.xml 23 | 24 | GENERATE_TAGFILE = lpc17xx.tag 25 | 26 | ENABLE_PREPROCESSING = YES 27 | 28 | 29 | -------------------------------------------------------------------------------- /libopencm3/doc/lpc17xx/Doxyfile_latex: -------------------------------------------------------------------------------- 1 | # LaTeX Documentation for LPC17xx code level 2 | 3 | # 14 September 2012 4 | # (C) Ken Sarkies 5 | 6 | #--------------------------------------------------------------------------- 7 | # Common Include File 8 | #--------------------------------------------------------------------------- 9 | 10 | @INCLUDE = ../Doxyfile_common 11 | 12 | #--------------------------------------------------------------------------- 13 | # Local settings 14 | #--------------------------------------------------------------------------- 15 | 16 | WARN_LOGFILE = doxygen_lpc17xx_latex.log 17 | 18 | INPUT = ../../include/libopencm3/docmain.dox \ 19 | ../../include/libopencm3/license.dox \ 20 | ../../include/libopencm3/lpc17xx/ \ 21 | ../../lib/lpc17xx 22 | 23 | EXCLUDE = ../../include/libopencm3/lpc17xx/doc-lpc17xx.h 24 | 25 | LAYOUT_FILE = DoxygenLayout_lpc17xx.xml 26 | 27 | GENERATE_HTML = NO 28 | 29 | GENERATE_LATEX = YES 30 | 31 | LATEX_HEADER = header_lpc17xx.tex 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/doc/lpc43xx/Doxyfile: -------------------------------------------------------------------------------- 1 | # HTML Documentation for LPC43xx code level 2 | 3 | # 14 September 2012 4 | # (C) Ken Sarkies 5 | 6 | #--------------------------------------------------------------------------- 7 | # Common Include File 8 | #--------------------------------------------------------------------------- 9 | 10 | @INCLUDE = ../Doxyfile_common 11 | 12 | #--------------------------------------------------------------------------- 13 | # Local settings 14 | #--------------------------------------------------------------------------- 15 | 16 | WARN_LOGFILE = doxygen_lpc43xx.log 17 | 18 | INPUT = ../../include/libopencm3/license.dox \ 19 | ../../include/libopencm3/lpc43xx \ 20 | ../../lib/lpc43xx 21 | 22 | LAYOUT_FILE = DoxygenLayout_lpc43xx.xml 23 | 24 | GENERATE_TAGFILE = lpc43xx.tag 25 | 26 | ENABLE_PREPROCESSING = YES 27 | 28 | 29 | -------------------------------------------------------------------------------- /libopencm3/doc/lpc43xx/Doxyfile_latex: -------------------------------------------------------------------------------- 1 | # LaTeX Documentation for LPC43xx code level 2 | 3 | # 14 September 2012 4 | # (C) Ken Sarkies 5 | 6 | #--------------------------------------------------------------------------- 7 | # Common Include File 8 | #--------------------------------------------------------------------------- 9 | 10 | @INCLUDE = ../Doxyfile_common 11 | 12 | #--------------------------------------------------------------------------- 13 | # Local settings 14 | #--------------------------------------------------------------------------- 15 | 16 | WARN_LOGFILE = doxygen_lpc43xx_latex.log 17 | 18 | INPUT = ../../include/libopencm3/docmain.dox \ 19 | ../../include/libopencm3/license.dox \ 20 | ../../include/libopencm3/lpc43xx/ \ 21 | ../../lib/lpc43xx 22 | 23 | EXCLUDE = ../../include/libopencm3/lpc43xx/doc-lpc43xx.h 24 | 25 | LAYOUT_FILE = DoxygenLayout_lpc43xx.xml 26 | 27 | GENERATE_HTML = NO 28 | 29 | GENERATE_LATEX = YES 30 | 31 | LATEX_HEADER = header_lpc43xx.tex 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/doc/stm32f0/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Documentation index

7 | 8 | 9 | -------------------------------------------------------------------------------- /libopencm3/doc/stm32f1/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Documentation index

7 | 8 | 9 | -------------------------------------------------------------------------------- /libopencm3/doc/stm32f2/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Documentation index

7 | 8 | 9 | -------------------------------------------------------------------------------- /libopencm3/doc/stm32f3/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Documentation index

7 | 8 | 9 | -------------------------------------------------------------------------------- /libopencm3/doc/stm32f4/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Documentation index

7 | 8 | 9 | -------------------------------------------------------------------------------- /libopencm3/doc/stm32f7/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Documentation index

7 | 8 | 9 | -------------------------------------------------------------------------------- /libopencm3/doc/stm32l0/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Documentation index

7 | 8 | 9 | -------------------------------------------------------------------------------- /libopencm3/doc/stm32l1/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Documentation index

7 | 8 | 9 | -------------------------------------------------------------------------------- /libopencm3/doc/stm32l4/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Documentation index

7 | 8 | 9 | -------------------------------------------------------------------------------- /libopencm3/doc/usb/Doxyfile: -------------------------------------------------------------------------------- 1 | # HTML Documentation for USB code level 2 | 3 | # 10 March 2013 4 | # (C) Ken Sarkies 5 | 6 | #--------------------------------------------------------------------------- 7 | # Common Include File 8 | #--------------------------------------------------------------------------- 9 | 10 | @INCLUDE = ../Doxyfile_common 11 | 12 | #--------------------------------------------------------------------------- 13 | # Local settings 14 | #--------------------------------------------------------------------------- 15 | 16 | WARN_LOGFILE = doxygen_usb.log 17 | 18 | INPUT = ../../include/libopencm3/license.dox \ 19 | ../../include/libopencm3/usb 20 | 21 | INPUT += ../../lib/usb 22 | 23 | EXCLUDE_PATTERNS = 24 | 25 | LAYOUT_FILE = DoxygenLayout_usb.xml 26 | 27 | GENERATE_TAGFILE = usb.tag 28 | 29 | ENABLE_PREPROCESSING = NO 30 | 31 | 32 | -------------------------------------------------------------------------------- /libopencm3/doc/usb/Doxyfile_latex: -------------------------------------------------------------------------------- 1 | # LaTeX Documentation for USB code level 2 | 3 | # 10 March 2013 4 | # (C) Ken Sarkies 5 | 6 | #--------------------------------------------------------------------------- 7 | # Common Include File 8 | #--------------------------------------------------------------------------- 9 | 10 | @INCLUDE = ../Doxyfile_common 11 | 12 | #--------------------------------------------------------------------------- 13 | # Local settings 14 | #--------------------------------------------------------------------------- 15 | 16 | WARN_LOGFILE = doxygen_usb_latex.log 17 | 18 | WARN_LOGFILE = doxygen_usb.log 19 | 20 | INPUT = ../../include/libopencm3/license.dox \ 21 | ../../include/libopencm3/usb 22 | 23 | INPUT += ../../lib/usb 24 | 25 | EXCLUDE_PATTERNS = 26 | 27 | LAYOUT_FILE = DoxygenLayout_usb.xml 28 | 29 | TAGFILES = 30 | 31 | GENERATE_TAGFILE = usb.tag 32 | 33 | ENABLE_PREPROCESSING = NO 34 | 35 | GENERATE_HTML = NO 36 | 37 | GENERATE_LATEX = YES 38 | 39 | LATEX_HEADER = header_usb.tex 40 | 41 | -------------------------------------------------------------------------------- /libopencm3/doc/vf6xx/Doxyfile: -------------------------------------------------------------------------------- 1 | # HTML Documentation for VF6XX code level 2 | 3 | # 14 September 2012 4 | # (C) Ken Sarkies 5 | 6 | #--------------------------------------------------------------------------- 7 | # Common Include File 8 | #--------------------------------------------------------------------------- 9 | 10 | @INCLUDE = ../Doxyfile_common 11 | 12 | #--------------------------------------------------------------------------- 13 | # Local settings 14 | #--------------------------------------------------------------------------- 15 | 16 | WARN_LOGFILE = doxygen_vf6xx.log 17 | 18 | INPUT = ../../include/libopencm3/license.dox \ 19 | ../../include/libopencm3/vf6xx 20 | 21 | INPUT += ../../lib/vf6xx 22 | 23 | EXCLUDE = 24 | 25 | LAYOUT_FILE = DoxygenLayout_vf6xx.xml 26 | 27 | GENERATE_TAGFILE = vf6xx.tag 28 | 29 | ENABLE_PREPROCESSING = YES 30 | 31 | 32 | -------------------------------------------------------------------------------- /libopencm3/doc/vf6xx/Doxyfile_latex: -------------------------------------------------------------------------------- 1 | # LaTeX Documentation for VF6XX code level 2 | 3 | # 14 September 2012 4 | # (C) Ken Sarkies 5 | 6 | #--------------------------------------------------------------------------- 7 | # Common Include File 8 | #--------------------------------------------------------------------------- 9 | 10 | @INCLUDE = ../Doxyfile_common 11 | 12 | #--------------------------------------------------------------------------- 13 | # Local settings 14 | #--------------------------------------------------------------------------- 15 | 16 | WARN_LOGFILE = doxygen_vf6xx_latex.log 17 | 18 | INPUT = ../../include/libopencm3/docmain.dox \ 19 | ../../include/libopencm3/license.dox \ 20 | ../../include/libopencm3/vf6xx 21 | 22 | INPUT += ../../lib/vf6xx 23 | 24 | EXCLUDE_PATTERNS = 25 | 26 | EXCLUDE = ../../include/libopencm3/vf6xx/doc-vf6xx.h 27 | 28 | LAYOUT_FILE = DoxygenLayout_vf6xx.xml 29 | 30 | GENERATE_HTML = NO 31 | 32 | GENERATE_LATEX = YES 33 | 34 | LATEX_HEADER = header_vf6xx.tex 35 | 36 | -------------------------------------------------------------------------------- /libopencm3/doc/vf6xx/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Documentation index

7 | 8 | 9 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/cm3/doc-cm3.h: -------------------------------------------------------------------------------- 1 | /** @mainpage libopencm3 Core CM3 2 | 3 | @version 1.0.0 4 | 5 | @date 14 September 2012 6 | 7 | API documentation for Cortex M3 core features. 8 | 9 | LGPL License Terms @ref lgpl_license 10 | */ 11 | 12 | /** @defgroup CM3_defines CM3 Defines 13 | 14 | @brief Defined Constants and Types for Cortex M3 core features 15 | 16 | @version 1.0.0 17 | 18 | @date 14 September 2012 19 | 20 | LGPL License Terms @ref lgpl_license 21 | */ 22 | 23 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/docmain.dox: -------------------------------------------------------------------------------- 1 | /** @mainpage libopencm3 Developer Documentation 2 | 3 | @version 1.0.0 4 | 5 | @date 7 September 2012 6 | 7 | * The libopencm3 project (previously known as libopenstm32) aims to create 8 | * a free/libre/open-source (LGPL v3, or later) firmware library for various 9 | * ARM Cortex-M microcontrollers, including ST STM32, Atmel SAM, NXP LPC, 10 | * TI Stellaris/Tiva/MSP432, Silabs (Energy Micro) and others. 11 | * 12 | * @par "" 13 | * 14 | * See the libopencm3 wiki for 15 | * more information. 16 | 17 | LGPL License Terms @ref lgpl_license 18 | */ 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/acmp.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2015 Kuldeep Singh Dhaka 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #if defined(EFM32LG) 21 | # include 22 | #else 23 | # error "efm32 family not defined." 24 | #endif 25 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/adc.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2015 Kuldeep Singh Dhaka 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #if defined(EFM32LG) 21 | # include 22 | #else 23 | # error "efm32 family not defined." 24 | #endif 25 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/burtc.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2015 Kuldeep Singh Dhaka 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #if defined(EFM32LG) 21 | # include 22 | #else 23 | # error "efm32 family not defined." 24 | #endif 25 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/cmu.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2015 Kuldeep Singh Dhaka 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #if defined(EFM32LG) 21 | # include 22 | #else 23 | # error "efm32 family not defined." 24 | #endif 25 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/dac.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2015 Kuldeep Singh Dhaka 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #if defined(EFM32LG) 21 | # include 22 | #else 23 | # error "efm32 family not defined." 24 | #endif 25 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/dma.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2015 Kuldeep Singh Dhaka 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #if defined(EFM32LG) 21 | # include 22 | #else 23 | # error "efm32 family not defined." 24 | #endif 25 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/emu.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2015 Kuldeep Singh Dhaka 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #if defined(EFM32LG) 21 | # include 22 | #else 23 | # error "efm32 family not defined." 24 | #endif 25 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/g/doc-efm32g.h: -------------------------------------------------------------------------------- 1 | /** @mainpage libopencm3 EFM32 Gecko 2 | 3 | @version 1.0.0 4 | 5 | @date 11 November 2012 6 | 7 | API documentation for Energy Micro EFM32 Gecko Cortex M3 series. 8 | 9 | LGPL License Terms @ref lgpl_license 10 | */ 11 | 12 | /** @defgroup EFM32G EFM32 Gecko 13 | Libraries for Energy Micro EFM32 Gecko series. 14 | 15 | @version 1.0.0 16 | 17 | @date 11 November 2012 18 | 19 | LGPL License Terms @ref lgpl_license 20 | */ 21 | 22 | /** @defgroup EFM32G_defines EFM32 Gecko Defines 23 | 24 | @brief Defined Constants and Types for the Energy Micro EFM32 Gecko series 25 | 26 | @version 1.0.0 27 | 28 | @date 11 November 2012 29 | 30 | LGPL License Terms @ref lgpl_license 31 | */ 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/g/irq.json: -------------------------------------------------------------------------------- 1 | { 2 | "_source": "The names and sequence are taken from d0001_efm32g_reference_manual.pdf table 4.1.", 3 | "irqs": [ 4 | "dma", 5 | "gpio_even", 6 | "timer0", 7 | "usart0_rx", 8 | "usart0_tx", 9 | "acmp01", 10 | "adc0", 11 | "dac0", 12 | "i2c0", 13 | "gpio_odd", 14 | "timer1", 15 | "timer2", 16 | "usart1_rx", 17 | "usart1_tx", 18 | "usart2_rx", 19 | "usart2_tx", 20 | "uart0_rx", 21 | "uart0_tx", 22 | "leuart0", 23 | "leuart1", 24 | "letimer0", 25 | "pcnt0", 26 | "pcnt1", 27 | "pcnt2", 28 | "rtc", 29 | "cmu", 30 | "vcmp", 31 | "lcd", 32 | "msc", 33 | "aes" 34 | ], 35 | "partname_humanreadable": "EFM32 Gecko series", 36 | "partname_doxygen": "EFM32G", 37 | "includeguard": "LIBOPENCM3_EFM32G_NVIC_H" 38 | } 39 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/gg/doc-efm32gg.h: -------------------------------------------------------------------------------- 1 | /** @mainpage libopencm3 EFM32 Giant Gecko 2 | 3 | @version 1.0.0 4 | 5 | @date 11 November 2012 6 | 7 | API documentation for Energy Micro EFM32 Giant Gecko Cortex M3 series. 8 | 9 | LGPL License Terms @ref lgpl_license 10 | */ 11 | 12 | /** @defgroup EFM32GG EFM32 Giant Gecko 13 | Libraries for Energy Micro EFM32 Giant Gecko series. 14 | 15 | @version 1.0.0 16 | 17 | @date 11 November 2012 18 | 19 | LGPL License Terms @ref lgpl_license 20 | */ 21 | 22 | /** @defgroup EFM32GG_defines EFM32 Giant Gecko Defines 23 | 24 | @brief Defined Constants and Types for the Energy Micro EFM32 Giant Gecko series 25 | 26 | @version 1.0.0 27 | 28 | @date 11 November 2012 29 | 30 | LGPL License Terms @ref lgpl_license 31 | */ 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/gpio.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2015 Kuldeep Singh Dhaka 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #if defined(EFM32LG) 21 | # include 22 | #else 23 | # error "efm32 family not defined." 24 | #endif 25 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/i2c.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2015 Kuldeep Singh Dhaka 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #if defined(EFM32LG) 21 | # include 22 | #else 23 | # error "efm32 family not defined." 24 | #endif 25 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/letimer.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2015 Kuldeep Singh Dhaka 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #if defined(EFM32LG) 21 | # include 22 | #else 23 | # error "efm32 family not defined." 24 | #endif 25 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/lg/doc-efm32lg.h: -------------------------------------------------------------------------------- 1 | /** @mainpage libopencm3 EFM32 Leopard Gecko 2 | 3 | @version 1.0.0 4 | 5 | @date 4 March 2013 6 | 7 | API documentation for Energy Micro EFM32 Leopard Gecko Cortex M3 series. 8 | 9 | LGPL License Terms @ref lgpl_license 10 | */ 11 | 12 | /** @defgroup EFM32LG EFM32 LeopardGecko 13 | Libraries for Energy Micro EFM32 Leopard Gecko series. 14 | 15 | @version 1.0.0 16 | 17 | @date 4 March 2013 18 | 19 | LGPL License Terms @ref lgpl_license 20 | */ 21 | 22 | /** @defgroup EFM32LG_defines EFM32 Leopard Gecko Defines 23 | 24 | @brief Defined Constants and Types for the Energy Micro EFM32 Leopard Gecko 25 | series 26 | 27 | @version 1.0.0 28 | 29 | @date 4 March 2013 30 | 31 | LGPL License Terms @ref lgpl_license 32 | */ 33 | 34 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/lg/opamp.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2015 Kuldeep Singh Dhaka 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | /* OpAmp register are in dac.h */ 21 | #include 22 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/msc.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2015 Kuldeep Singh Dhaka 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #if defined(EFM32LG) 21 | # include 22 | #else 23 | # error "efm32 family not defined." 24 | #endif 25 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/opamp.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2015 Kuldeep Singh Dhaka 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #if defined(EFM32LG) 21 | # include 22 | #else 23 | # error "efm32 family not defined." 24 | #endif 25 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/prs.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2015 Kuldeep Singh Dhaka 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #if defined(EFM32LG) 21 | # include 22 | #else 23 | # error "efm32 family not defined." 24 | #endif 25 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/rmu.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2015 Kuldeep Singh Dhaka 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #if defined(EFM32LG) 21 | # include 22 | #else 23 | # error "efm32 family not defined." 24 | #endif 25 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/rtc.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2015 Kuldeep Singh Dhaka 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #if defined(EFM32LG) 21 | # include 22 | #else 23 | # error "efm32 family not defined." 24 | #endif 25 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/tg/doc-efm32tg.h: -------------------------------------------------------------------------------- 1 | /** @mainpage libopencm3 EFM32 Tiny Gecko 2 | 3 | @version 1.0.0 4 | 5 | @date 4 March 2013 6 | 7 | API documentation for Energy Micro EFM32 Tiny Gecko Cortex M3 series. 8 | 9 | LGPL License Terms @ref lgpl_license 10 | */ 11 | 12 | /** @defgroup EFM32TG EFM32 TinyGecko 13 | Libraries for Energy Micro EFM32 Tiny Gecko series. 14 | 15 | @version 1.0.0 16 | 17 | @date 4 March 2013 18 | 19 | LGPL License Terms @ref lgpl_license 20 | */ 21 | 22 | /** @defgroup EFM32TG_defines EFM32 Tiny Gecko Defines 23 | 24 | @brief Defined Constants and Types for the Energy Micro EFM32 Tiny Gecko series 25 | 26 | @version 1.0.0 27 | 28 | @date 4 March 2013 29 | 30 | LGPL License Terms @ref lgpl_license 31 | */ 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/tg/irq.json: -------------------------------------------------------------------------------- 1 | { 2 | "_source": "The names and sequence are taken from d0034_efm32tg_reference_manual.pdf table 4.1.", 3 | "irqs": [ 4 | "dma", 5 | "gpio_even", 6 | "timer0", 7 | "usart0_rx", 8 | "usart0_tx", 9 | "acmp01", 10 | "adc0", 11 | "dac0", 12 | "i2c0", 13 | "gpio_odd", 14 | "timer1", 15 | "usart1_rx", 16 | "usart1_tx", 17 | "lesense", 18 | "leuart0", 19 | "letimer0", 20 | "pcnt0", 21 | "rtc", 22 | "cmu", 23 | "vcmp", 24 | "lcd", 25 | "msc", 26 | "aes" 27 | ], 28 | "partname_humanreadable": "EFM32 Tiny Gecko series", 29 | "partname_doxygen": "EFM32TG", 30 | "includeguard": "LIBOPENCM3_EFM32TG_NVIC_H" 31 | } 32 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/timer.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2015 Kuldeep Singh Dhaka 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #if defined(EFM32LG) 21 | # include 22 | #else 23 | # error "efm32 family not defined." 24 | #endif 25 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/uart.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2015 Kuldeep Singh Dhaka 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #if defined(EFM32LG) 21 | # include 22 | #else 23 | # error "efm32 family not defined." 24 | #endif 25 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/usart.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2015 Kuldeep Singh Dhaka 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #if defined(EFM32LG) 21 | # include 22 | #else 23 | # error "efm32 family not defined." 24 | #endif 25 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/usb.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2015 Kuldeep Singh Dhaka 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #if defined(EFM32LG) 21 | # include 22 | #else 23 | # error "efm32 family not defined." 24 | #endif 25 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/efm32/wdog.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2015 Kuldeep Singh Dhaka 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #el defined(EFM32LG) 21 | # include 22 | #else 23 | # error "efm32 family not defined." 24 | #endif 25 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/gd32/adc.h: -------------------------------------------------------------------------------- 1 | /* This provides unification of code over GD32F subfamilies */ 2 | 3 | /* 4 | * This file is part of the libopencm3 project. 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #include 21 | #include 22 | 23 | #if defined(GD32F1) 24 | # include 25 | #else 26 | # error "GD32 family not defined." 27 | #endif 28 | 29 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/gd32/cec.h: -------------------------------------------------------------------------------- 1 | /* This provides unification of code over GD32F subfamilies */ 2 | 3 | /* 4 | * This file is part of the libopencm3 project. 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #include 21 | #include 22 | 23 | #if defined(GD32F0) 24 | # include 25 | #else 26 | # error "gd32 family not defined." 27 | #endif 28 | 29 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/gd32/comparator.h: -------------------------------------------------------------------------------- 1 | /* This provides unification of code over GD32F subfamilies */ 2 | 3 | /* 4 | * This file is part of the libopencm3 project. 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #include 21 | #include 22 | 23 | #if defined(GD32F0) 24 | # include 25 | #else 26 | # error "gd32 family not defined." 27 | #endif 28 | 29 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/gd32/ethernet.h: -------------------------------------------------------------------------------- 1 | /* This provides unification of code over GD32F subfamilies */ 2 | 3 | /* 4 | * This file is part of the libopencm3 project. 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #if defined(GD32F1) 21 | # include 22 | #elif defined(GD32F4) 23 | # include 24 | #else 25 | # error "gd32 family not defined." 26 | #endif 27 | 28 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/gd32/f1/doc-stm32f1.h: -------------------------------------------------------------------------------- 1 | /** @mainpage libopencm3 GD32F1 2 | 3 | @version 1.0.0 4 | 5 | @date 7 September 2012 6 | 7 | API documentation for ST Microelectronics GD32F1 Cortex M3 series. 8 | 9 | LGPL License Terms @ref lgpl_license 10 | */ 11 | 12 | /** @defgroup GD32F1xx GD32F1xx 13 | Libraries for ST Microelectronics GD32F1xx series. 14 | 15 | @version 1.0.0 16 | 17 | @date 7 September 2012 18 | 19 | LGPL License Terms @ref lgpl_license 20 | */ 21 | 22 | /** @defgroup GD32F1xx_defines GD32F1xx Defines 23 | 24 | @brief Defined Constants and Types for the GD32F1xx series 25 | 26 | @version 1.0.0 27 | 28 | @date 7 September 2012 29 | 30 | LGPL License Terms @ref lgpl_license 31 | */ 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/gd32/f1/st_usbfs.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * This library is free software: you can redistribute it and/or modify 5 | * it under the terms of the GNU Lesser General Public License as published by 6 | * the Free Software Foundation, either version 3 of the License, or 7 | * (at your option) any later version. 8 | * 9 | * This library is distributed in the hope that it will be useful, 10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 | * GNU Lesser General Public License for more details. 13 | * 14 | * You should have received a copy of the GNU Lesser General Public License 15 | * along with this library. If not, see . 16 | */ 17 | /* THIS FILE SHOULD NOT BE INCLUDED DIRECTLY ! 18 | * Use top-level 19 | */ 20 | 21 | #ifndef LIBOPENCM3_ST_USBFS_H 22 | # error Do not include directly ! 23 | #else 24 | 25 | #include 26 | 27 | #endif 28 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/gd32/ltdc.h: -------------------------------------------------------------------------------- 1 | /* This provides unification of code over GD32F subfamilies */ 2 | 3 | /* 4 | * This file is part of the libopencm3 project. 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #include 21 | #include 22 | 23 | #if defined(GD32F4) 24 | # include 25 | #else 26 | # error "LCD-TFT only defined for GD32F4" 27 | #endif 28 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/gd32/rcc.h: -------------------------------------------------------------------------------- 1 | /* This provides unification of code over GD32F subfamilies */ 2 | 3 | /* 4 | * This file is part of the libopencm3 project. 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #include 21 | #include 22 | 23 | #if defined(GD32F1) 24 | # include 25 | #else 26 | # error "gd32 family not defined." 27 | #endif 28 | 29 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/gd32/tsc.h: -------------------------------------------------------------------------------- 1 | /* This provides unification of code over GD32F subfamilies */ 2 | 3 | /* 4 | * This file is part of the libopencm3 project. 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #include 21 | #include 22 | 23 | #if defined(GD32F0) 24 | # include 25 | #else 26 | # error "gd32 family not defined." 27 | #endif 28 | 29 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/license.dox: -------------------------------------------------------------------------------- 1 | /** @page lgpl_license libopencm3 License 2 | 3 | libopencm3 is free software: you can redistribute it and/or modify 4 | it under the terms of the GNU Lesser General Public License as published by the Free 5 | Software Foundation, either version 3 of the License, or (at your option) any 6 | later version. 7 | 8 | libopencm3 is distributed in the hope that it will be useful, but WITHOUT ANY 9 | WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A 10 | PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. 11 | 12 | You should have received a copy of the GNU Lesser General Public License along with this 13 | program. If not, see . 14 | 15 | */ 16 | 17 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/lm3s/doc-lm3s.h: -------------------------------------------------------------------------------- 1 | /** @mainpage libopencm3 LM3S 2 | 3 | @version 1.0.0 4 | 5 | @date 14 September 2012 6 | 7 | API documentation for TI Stellaris LM3S Cortex M3 series. 8 | 9 | LGPL License Terms @ref lgpl_license 10 | */ 11 | 12 | /** @defgroup LM3Sxx LM3S 13 | Libraries for TI Stellaris LM3S series. 14 | 15 | @version 1.0.0 16 | 17 | @date 7 September 2012 18 | 19 | LGPL License Terms @ref lgpl_license 20 | */ 21 | 22 | /** @defgroup LM3Sxx_defines LM3S Defines 23 | 24 | @brief Defined Constants and Types for the LM3S series 25 | 26 | @version 1.0.0 27 | 28 | @date 14 September 2012 29 | 30 | LGPL License Terms @ref lgpl_license 31 | */ 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/lm4f/doc-lm4f.h: -------------------------------------------------------------------------------- 1 | /** @mainpage libopencm3 LM4F 2 | 3 | @version 1.0.0 4 | 5 | @date 22 November 2012 6 | 7 | API documentation for TI Stellaris LM4F Cortex M4F series. 8 | 9 | LGPL License Terms @ref lgpl_license 10 | */ 11 | 12 | /** @defgroup LM4Fxx LM4F 13 | Libraries for TI Stellaris LM4F series. 14 | 15 | @version 1.0.0 16 | 17 | @date 22 November 2012 18 | 19 | LGPL License Terms @ref lgpl_license 20 | */ 21 | 22 | /** @defgroup LM4Fxx_defines LM4F Defines 23 | 24 | @brief Defined Constants and Types for the LM4F series 25 | 26 | @version 1.0.0 27 | 28 | @date 22 November 2012 29 | 30 | LGPL License Terms @ref lgpl_license 31 | */ 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/lpc13xx/doc-lpc13xx.h: -------------------------------------------------------------------------------- 1 | /** @mainpage libopencm3 LPC13xx 2 | 3 | @version 1.0.0 4 | 5 | @date 14 September 2012 6 | 7 | API documentation for NXP Semiconductors LPC13xx Cortex M3 series. 8 | 9 | LGPL License Terms @ref lgpl_license 10 | */ 11 | 12 | /** @defgroup LPC13xx LPC13xx 13 | Libraries for NXP Semiconductors LPC13xx series. 14 | 15 | @version 1.0.0 16 | 17 | @date 14 September 2012 18 | 19 | LGPL License Terms @ref lgpl_license 20 | */ 21 | 22 | /** @defgroup LPC13xx_defines LPC13xx Defines 23 | 24 | @brief Defined Constants and Types for the LPC13xx series 25 | 26 | @version 1.0.0 27 | 28 | @date 14 September 2012 29 | 30 | LGPL License Terms @ref lgpl_license 31 | */ 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/lpc17xx/doc-lpc17xx.h: -------------------------------------------------------------------------------- 1 | /** @mainpage libopencm3 LPC17xx 2 | 3 | @version 1.0.0 4 | 5 | @date 14 September 2012 6 | 7 | API documentation for NXP Semiconductors LPC17xx Cortex M3 series. 8 | 9 | LGPL License Terms @ref lgpl_license 10 | */ 11 | 12 | /** @defgroup LPC17xx LPC17xx 13 | Libraries for NXP Semiconductors LPC17xx series. 14 | 15 | @version 1.0.0 16 | 17 | @date 14 September 2012 18 | 19 | LGPL License Terms @ref lgpl_license 20 | */ 21 | 22 | /** @defgroup LPC17xx_defines LPC17xx Defines 23 | 24 | @brief Defined Constants and Types for the LPC17xx series 25 | 26 | @version 1.0.0 27 | 28 | @date 14 September 2012 29 | 30 | LGPL License Terms @ref lgpl_license 31 | */ 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/lpc17xx/irq.json: -------------------------------------------------------------------------------- 1 | { 2 | "irqs": { 3 | "0": "wdt", 4 | "1": "timer0", 5 | "2": "timer1", 6 | "3": "timer2", 7 | "4": "timer3", 8 | "5": "uart0", 9 | "6": "uart1", 10 | "7": "uart2", 11 | "8": "uart3", 12 | "9": "pwm", 13 | "10": "i2c0", 14 | "11": "i2c1", 15 | "12": "i2c2", 16 | "13": "spi", 17 | "14": "ssp0", 18 | "15": "ssp1", 19 | "16": "pll0", 20 | "17": "rtc", 21 | "18": "eint0", 22 | "19": "eint1", 23 | "20": "eint2", 24 | "21": "eint3", 25 | "22": "adc", 26 | "23": "bod", 27 | "24": "usb", 28 | "25": "can", 29 | "26": "gpdma", 30 | "27": "i2s", 31 | "28": "ethernet", 32 | "29": "rit", 33 | "30": "motor_pwm", 34 | "31": "qei", 35 | "32": "pll1", 36 | "33": "usb_act", 37 | "34": "can_act" 38 | }, 39 | "partname_humanreadable": "LPC 17xx series", 40 | "partname_doxygen": "LPC17xx", 41 | "includeguard": "LIBOPENCM3_LPC17xx_NVIC_H" 42 | } -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/lpc43xx/doc-lpc43xx.h: -------------------------------------------------------------------------------- 1 | /** @mainpage libopencm3 LPC43xx 2 | 3 | @version 1.0.0 4 | 5 | @date 14 September 2012 6 | 7 | API documentation for NXP Semiconductors LPC43xx Cortex M3 series. 8 | 9 | LGPL License Terms @ref lgpl_license 10 | */ 11 | 12 | /** @defgroup LPC43xx LPC43xx 13 | Libraries for NXP Semiconductors LPC43xx series. 14 | 15 | @version 1.0.0 16 | 17 | @date 14 September 2012 18 | 19 | LGPL License Terms @ref lgpl_license 20 | */ 21 | 22 | /** @defgroup LPC43xx_defines LPC43xx Defines 23 | 24 | @brief Defined Constants and Types for the LPC43xx series 25 | 26 | @version 1.0.0 27 | 28 | @date 14 September 2012 29 | 30 | LGPL License Terms @ref lgpl_license 31 | */ 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/lpc43xx/ipc.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2012 Benjamin Vernoux 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #ifndef LPC43XX_IPC_H 21 | #define LPC43XX_IPC_H 22 | 23 | #include 24 | #include 25 | 26 | void ipc_halt_m0(void); 27 | 28 | void ipc_start_m0(uint32_t cm0_baseaddr); 29 | 30 | #endif 31 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/lpc43xx/m0/irq.json: -------------------------------------------------------------------------------- 1 | { 2 | "irqs": { 3 | "0": "rtc", 4 | "1": "m4core", 5 | "2": "dma", 6 | "4": "flasheepromat", 7 | "5": "ethernet", 8 | "6": "sdio", 9 | "7": "lcd", 10 | "8": "usb0", 11 | "9": "usb1", 12 | "10": "sct", 13 | "11": "ritimer_or_wwdt", 14 | "12": "timer0", 15 | "13": "gint1", 16 | "14": "pin_int4", 17 | "15": "timer3", 18 | "16": "mcpwm", 19 | "17": "adc0", 20 | "18": "i2c0_or_irc1", 21 | "19": "sgpio", 22 | "20": "spi_or_dac", 23 | "21": "adc1", 24 | "22": "ssp0_or_ssp1", 25 | "23": "eventrouter", 26 | "24": "usart0", 27 | "25": "uart1", 28 | "26": "usart2_or_c_can1", 29 | "27": "usart3", 30 | "28": "i2s0_or_i2s1", 31 | "29": "c_can0" 32 | }, 33 | "partname_humanreadable": "LPC 43xx series M0 core", 34 | "partname_doxygen": "LPC43xx (M0)", 35 | "includeguard": "LIBOPENCM3_LPC43xx_M0_NVIC_H" 36 | } -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/sam/3a/gpio.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2014 Felix Held 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #ifndef LIBOPENCM3_GPIO_H 21 | #define LIBOPENCM3_GPIO_H 22 | 23 | #include 24 | #include 25 | #include 26 | 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/sam/3a/irq.json: -------------------------------------------------------------------------------- 1 | { 2 | "irqs": [ 3 | "supc", 4 | "rstc", 5 | "rtc", 6 | "rtt", 7 | "wdt", 8 | "pmc", 9 | "eefc0", 10 | "eefc1", 11 | "uart", 12 | "smc_sdramc", 13 | "sdramc", 14 | "pioa", 15 | "piob", 16 | "pioc", 17 | "piod", 18 | "pioe", 19 | "piof", 20 | "usart0", 21 | "usart1", 22 | "usart2", 23 | "usart3", 24 | "hsmci", 25 | "twi0", 26 | "twi1", 27 | "spi0", 28 | "spi1", 29 | "ssc", 30 | "tc0", 31 | "tc1", 32 | "tc2", 33 | "tc3", 34 | "tc4", 35 | "tc5", 36 | "tc6", 37 | "tc7", 38 | "tc8", 39 | "pwm", 40 | "adc", 41 | "dacc", 42 | "dmac", 43 | "uotghs", 44 | "trng", 45 | "reserved0", 46 | "can0", 47 | "can1" 48 | ], 49 | "partname_humanreadable": "Atmel SAM3A series", 50 | "partname_doxygen": "SAM3A", 51 | "includeguard": "LIBOPENCM3_SAM3A_NVIC_H" 52 | } -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/sam/3a/pio.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2014 Felix Held 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #ifndef LIBOPENCM3_PIO_H 21 | #define LIBOPENCM3_PIO_H 22 | 23 | #include 24 | #include 25 | 26 | 27 | #endif 28 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/sam/3n/gpio.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2014 Felix Held 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #ifndef LIBOPENCM3_GPIO_H 21 | #define LIBOPENCM3_GPIO_H 22 | 23 | #include 24 | #include 25 | #include 26 | 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/sam/3n/irq.json: -------------------------------------------------------------------------------- 1 | { 2 | "irqs": [ 3 | "supc", 4 | "rstc", 5 | "rtc", 6 | "rtt", 7 | "wdt", 8 | "pmc", 9 | "eefc", 10 | "reserved0", 11 | "uart0", 12 | "uart1", 13 | "reserved1", 14 | "pioa", 15 | "piob", 16 | "pioc", 17 | "usart0", 18 | "usart1", 19 | "reserved2", 20 | "reserved3", 21 | "reserved4", 22 | "twi0", 23 | "twi1", 24 | "spi", 25 | "reserved5", 26 | "tc0", 27 | "tc1", 28 | "tc2", 29 | "tc3", 30 | "tc4", 31 | "tc5", 32 | "adc", 33 | "dacc", 34 | "pwm" 35 | ], 36 | "partname_humanreadable": "Atmel SAM3N series", 37 | "partname_doxygen": "SAM3N", 38 | "includeguard": "LIBOPENCM3_SAM3N_NVIC_H" 39 | } -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/sam/3n/pio.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2014 Felix Held 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #ifndef LIBOPENCM3_PIO_H 21 | #define LIBOPENCM3_PIO_H 22 | 23 | #include 24 | #include 25 | 26 | 27 | #endif 28 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/sam/3s/gpio.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2014 Felix Held 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #ifndef LIBOPENCM3_GPIO_H 21 | #define LIBOPENCM3_GPIO_H 22 | 23 | #include 24 | #include 25 | #include 26 | 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/sam/3s/irq.json: -------------------------------------------------------------------------------- 1 | { 2 | "irqs": [ 3 | "supc", 4 | "rstc", 5 | "rtc", 6 | "rtt", 7 | "wdt", 8 | "pmc", 9 | "eefc", 10 | "reserved0", 11 | "uart0", 12 | "uart1", 13 | "smc", 14 | "pioa", 15 | "piob", 16 | "pioc", 17 | "usart0", 18 | "usart1", 19 | "usart2", 20 | "reserved1", 21 | "hsmci", 22 | "twi0", 23 | "twi1", 24 | "spi", 25 | "ssc", 26 | "tc0", 27 | "tc1", 28 | "tc2", 29 | "tc3", 30 | "tc4", 31 | "tc5", 32 | "adc", 33 | "dacc", 34 | "pwm", 35 | "crccu", 36 | "acc", 37 | "udp" 38 | ], 39 | "partname_humanreadable": "Atmel SAM3S series", 40 | "partname_doxygen": "SAM3S", 41 | "includeguard": "LIBOPENCM3_SAM3S_NVIC_H" 42 | } -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/sam/3u/gpio.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2014 Felix Held 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #ifndef LIBOPENCM3_GPIO_H 21 | #define LIBOPENCM3_GPIO_H 22 | 23 | #include 24 | #include 25 | #include 26 | 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/sam/3u/irq.json: -------------------------------------------------------------------------------- 1 | { 2 | "irqs": [ 3 | "supc", 4 | "rstc", 5 | "rtc", 6 | "rtt", 7 | "wdt", 8 | "pmc", 9 | "eefc0", 10 | "eefc1", 11 | "uart", 12 | "smc", 13 | "pioa", 14 | "piob", 15 | "pioc", 16 | "usart0", 17 | "usart1", 18 | "usart2", 19 | "usart3", 20 | "hsmci", 21 | "twi0", 22 | "twi1", 23 | "spi", 24 | "ssc", 25 | "tc0", 26 | "tc1", 27 | "tc2", 28 | "pwm", 29 | "adc12b", 30 | "adc", 31 | "dmac", 32 | "udphs" 33 | ], 34 | "partname_humanreadable": "Atmel SAM3U series", 35 | "partname_doxygen": "SAM3U", 36 | "includeguard": "LIBOPENCM3_SAM3U_NVIC_H" 37 | } -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/sam/3u/pio.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2014 Felix Held 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #ifndef LIBOPENCM3_PIO_H 21 | #define LIBOPENCM3_PIO_H 22 | 23 | #include 24 | #include 25 | 26 | 27 | #endif 28 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/sam/3x/gpio.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2014 Felix Held 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #ifndef LIBOPENCM3_GPIO_H 21 | #define LIBOPENCM3_GPIO_H 22 | 23 | #include 24 | #include 25 | #include 26 | 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/sam/3x/irq.json: -------------------------------------------------------------------------------- 1 | { 2 | "irqs": [ 3 | "supc", 4 | "rstc", 5 | "rtc", 6 | "rtt", 7 | "wdt", 8 | "pmc", 9 | "eefc0", 10 | "eefc1", 11 | "uart", 12 | "smc_sdramc", 13 | "sdramc", 14 | "pioa", 15 | "piob", 16 | "pioc", 17 | "piod", 18 | "pioe", 19 | "piof", 20 | "usart0", 21 | "usart1", 22 | "usart2", 23 | "usart3", 24 | "hsmci", 25 | "twi0", 26 | "twi1", 27 | "spi0", 28 | "spi1", 29 | "ssc", 30 | "tc0", 31 | "tc1", 32 | "tc2", 33 | "tc3", 34 | "tc4", 35 | "tc5", 36 | "tc6", 37 | "tc7", 38 | "tc8", 39 | "pwm", 40 | "adc", 41 | "dacc", 42 | "dmac", 43 | "uotghs", 44 | "trng", 45 | "emac", 46 | "can0", 47 | "can1" 48 | ], 49 | "partname_humanreadable": "Atmel SAM3X series", 50 | "partname_doxygen": "SAM3X", 51 | "includeguard": "LIBOPENCM3_SAM3X_NVIC_H" 52 | } -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/sam/3x/pio.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2014 Felix Held 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #ifndef LIBOPENCM3_PIO_H 21 | #define LIBOPENCM3_PIO_H 22 | 23 | #include 24 | #include 25 | 26 | 27 | #endif 28 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/stm32/cec.h: -------------------------------------------------------------------------------- 1 | /* This provides unification of code over STM32F subfamilies */ 2 | 3 | /* 4 | * This file is part of the libopencm3 project. 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #include 21 | #include 22 | 23 | #if defined(STM32F0) 24 | # include 25 | #else 26 | # error "stm32 family not defined." 27 | #endif 28 | 29 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/stm32/comparator.h: -------------------------------------------------------------------------------- 1 | /* This provides unification of code over STM32F subfamilies */ 2 | 3 | /* 4 | * This file is part of the libopencm3 project. 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #include 21 | #include 22 | 23 | #if defined(STM32F0) 24 | # include 25 | #else 26 | # error "stm32 family not defined." 27 | #endif 28 | 29 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/stm32/ethernet.h: -------------------------------------------------------------------------------- 1 | /* This provides unification of code over STM32F subfamilies */ 2 | 3 | /* 4 | * This file is part of the libopencm3 project. 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #if defined(STM32F1) 21 | # include 22 | #elif defined(STM32F4) 23 | # include 24 | #else 25 | # error "stm32 family not defined." 26 | #endif 27 | 28 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/stm32/f0/doc-stm32f0.h: -------------------------------------------------------------------------------- 1 | /** @mainpage libopencm3 STM32F0 2 | * 3 | * @version 1.0.0 4 | * 5 | * @date 11 July 2013 6 | * 7 | * API documentation for ST Microelectronics STM32F0 Cortex M0 series. 8 | * 9 | * LGPL License Terms @ref lgpl_license 10 | */ 11 | 12 | /** @defgroup STM32F0xx STM32F0xx 13 | * Libraries for ST Microelectronics STM32F0xx series. 14 | * 15 | * @version 1.0.0 16 | * 17 | * @date 11 July 2013 18 | * 19 | * LGPL License Terms @ref lgpl_license 20 | */ 21 | 22 | /** @defgroup STM32F0xx_defines STM32F0xx Defines 23 | * 24 | * @brief Defined Constants and Types for the STM32F0xx series 25 | * 26 | * @version 1.0.0 27 | * 28 | * @date 11 July 2013 29 | * 30 | * LGPL License Terms @ref lgpl_license 31 | */ 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/stm32/f0/irq.json: -------------------------------------------------------------------------------- 1 | { 2 | "irqs": [ 3 | "wwdg", 4 | "pvd", 5 | "rtc", 6 | "flash", 7 | "rcc", 8 | "exti0_1", 9 | "exti2_3", 10 | "exti4_15", 11 | "tsc", 12 | "dma1_channel1", 13 | "dma1_channel2_3", 14 | "dma1_channel4_5", 15 | "adc_comp", 16 | "tim1_brk_up_trg_com", 17 | "tim1_cc", 18 | "tim2", 19 | "tim3", 20 | "tim6_dac", 21 | "tim7", 22 | "tim14", 23 | "tim15", 24 | "tim16", 25 | "tim17", 26 | "i2c1", 27 | "i2c2", 28 | "spi1", 29 | "spi2", 30 | "usart1", 31 | "usart2", 32 | "usart3_4", 33 | "cec_can", 34 | "usb" 35 | ], 36 | "partname_humanreadable": "STM32 F0 series", 37 | "partname_doxygen": "STM32F0", 38 | "includeguard": "LIBOPENCM3_STM32_F0_NVIC_H" 39 | } -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/stm32/f0/st_usbfs.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * This library is free software: you can redistribute it and/or modify 5 | * it under the terms of the GNU Lesser General Public License as published by 6 | * the Free Software Foundation, either version 3 of the License, or 7 | * (at your option) any later version. 8 | * 9 | * This library is distributed in the hope that it will be useful, 10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 | * GNU Lesser General Public License for more details. 13 | * 14 | * You should have received a copy of the GNU Lesser General Public License 15 | * along with this library. If not, see . 16 | */ 17 | /* THIS FILE SHOULD NOT BE INCLUDED DIRECTLY ! 18 | * Use top-level 19 | */ 20 | 21 | #ifndef LIBOPENCM3_ST_USBFS_H 22 | # error Do not include directly ! 23 | #else 24 | 25 | #include 26 | 27 | #endif 28 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/stm32/f1/doc-stm32f1.h: -------------------------------------------------------------------------------- 1 | /** @mainpage libopencm3 STM32F1 2 | 3 | @version 1.0.0 4 | 5 | @date 7 September 2012 6 | 7 | API documentation for ST Microelectronics STM32F1 Cortex M3 series. 8 | 9 | LGPL License Terms @ref lgpl_license 10 | */ 11 | 12 | /** @defgroup STM32F1xx STM32F1xx 13 | Libraries for ST Microelectronics STM32F1xx series. 14 | 15 | @version 1.0.0 16 | 17 | @date 7 September 2012 18 | 19 | LGPL License Terms @ref lgpl_license 20 | */ 21 | 22 | /** @defgroup STM32F1xx_defines STM32F1xx Defines 23 | 24 | @brief Defined Constants and Types for the STM32F1xx series 25 | 26 | @version 1.0.0 27 | 28 | @date 7 September 2012 29 | 30 | LGPL License Terms @ref lgpl_license 31 | */ 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/stm32/f1/st_usbfs.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * This library is free software: you can redistribute it and/or modify 5 | * it under the terms of the GNU Lesser General Public License as published by 6 | * the Free Software Foundation, either version 3 of the License, or 7 | * (at your option) any later version. 8 | * 9 | * This library is distributed in the hope that it will be useful, 10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 | * GNU Lesser General Public License for more details. 13 | * 14 | * You should have received a copy of the GNU Lesser General Public License 15 | * along with this library. If not, see . 16 | */ 17 | /* THIS FILE SHOULD NOT BE INCLUDED DIRECTLY ! 18 | * Use top-level 19 | */ 20 | 21 | #ifndef LIBOPENCM3_ST_USBFS_H 22 | # error Do not include directly ! 23 | #else 24 | 25 | #include 26 | 27 | #endif 28 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/stm32/f2/doc-stm32f2.h: -------------------------------------------------------------------------------- 1 | /** @mainpage libopencm3 STM32F2 2 | 3 | @version 1.0.0 4 | 5 | @date 14 September 2012 6 | 7 | API documentation for ST Microelectronics STM32F2 Cortex M3 series. 8 | 9 | LGPL License Terms @ref lgpl_license 10 | */ 11 | 12 | 13 | /** @defgroup STM32F2xx STM32F2xx 14 | Libraries for ST Microelectronics STM32F2xx series. 15 | 16 | @version 1.0.0 17 | 18 | @date 14 September 2012 19 | 20 | LGPL License Terms @ref lgpl_license 21 | */ 22 | 23 | /** @defgroup STM32F2xx_defines STM32F2xx Defines 24 | 25 | @brief Defined Constants and Types for the STM32F2xx series 26 | 27 | @version 1.0.0 28 | 29 | @date 14 September 2012 30 | 31 | LGPL License Terms @ref lgpl_license 32 | */ 33 | 34 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/stm32/f2/rng.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * This library is free software: you can redistribute it and/or modify 5 | * it under the terms of the GNU Lesser General Public License as published by 6 | * the Free Software Foundation, either version 3 of the License, or 7 | * (at your option) any later version. 8 | * 9 | * This library is distributed in the hope that it will be useful, 10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 | * GNU Lesser General Public License for more details. 13 | * 14 | * You should have received a copy of the GNU Lesser General Public License 15 | * along with this library. If not, see . 16 | */ 17 | 18 | #ifndef LIBOPENCM3_RNG_H 19 | #define LIBOPENCM3_RNG_H 20 | 21 | #include 22 | 23 | #endif 24 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/stm32/f3/doc-stm32f3.h: -------------------------------------------------------------------------------- 1 | /** @mainpage libopencm3 STM32F3 2 | * 3 | * @version 1.0.0 4 | * 5 | * @date 11 July 2013 6 | * 7 | * API documentation for ST Microelectronics STM32F3 Cortex M3 series. 8 | * 9 | * LGPL License Terms @ref lgpl_license 10 | */ 11 | 12 | /** @defgroup STM32F3xx STM32F3xx 13 | * Libraries for ST Microelectronics STM32F3xx series. 14 | * 15 | * @version 1.0.0 16 | * 17 | * @date 11 July 2013 18 | * 19 | * LGPL License Terms @ref lgpl_license 20 | */ 21 | 22 | /** @defgroup STM32F3xx_defines STM32F3xx Defines 23 | * 24 | * @brief Defined Constants and Types for the STM32F3xx series 25 | * 26 | * @version 1.0.0 27 | * 28 | * @date 11 July 2013 29 | * 30 | * LGPL License Terms @ref lgpl_license 31 | */ 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/stm32/f3/st_usbfs.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * This library is free software: you can redistribute it and/or modify 5 | * it under the terms of the GNU Lesser General Public License as published by 6 | * the Free Software Foundation, either version 3 of the License, or 7 | * (at your option) any later version. 8 | * 9 | * This library is distributed in the hope that it will be useful, 10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 | * GNU Lesser General Public License for more details. 13 | * 14 | * You should have received a copy of the GNU Lesser General Public License 15 | * along with this library. If not, see . 16 | */ 17 | /* THIS FILE SHOULD NOT BE INCLUDED DIRECTLY ! 18 | * Use top-level 19 | */ 20 | 21 | #ifndef LIBOPENCM3_ST_USBFS_H 22 | # error Do not include directly ! 23 | #else 24 | 25 | #include 26 | 27 | #endif 28 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/stm32/f4/doc-stm32f4.h: -------------------------------------------------------------------------------- 1 | /** @mainpage libopencm3 STM32F4 2 | 3 | @version 1.0.0 4 | 5 | @date 7 September 2012 6 | 7 | API documentation for ST Microelectronics STM32F4 Cortex M3 series. 8 | 9 | LGPL License Terms @ref lgpl_license 10 | */ 11 | 12 | /** @defgroup STM32F4xx STM32F4xx 13 | Libraries for ST Microelectronics STM32F4xx series. 14 | 15 | @version 1.0.0 16 | 17 | @date 7 September 2012 18 | 19 | LGPL License Terms @ref lgpl_license 20 | */ 21 | 22 | /** @defgroup STM32F4xx_defines STM32F4xx Defines 23 | 24 | @brief Defined Constants and Types for the STM32F4xx series 25 | 26 | @version 1.0.0 27 | 28 | @date 7 September 2012 29 | 30 | LGPL License Terms @ref lgpl_license 31 | */ 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/stm32/f4/rng.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * This library is free software: you can redistribute it and/or modify 5 | * it under the terms of the GNU Lesser General Public License as published by 6 | * the Free Software Foundation, either version 3 of the License, or 7 | * (at your option) any later version. 8 | * 9 | * This library is distributed in the hope that it will be useful, 10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 | * GNU Lesser General Public License for more details. 13 | * 14 | * You should have received a copy of the GNU Lesser General Public License 15 | * along with this library. If not, see . 16 | */ 17 | 18 | #ifndef LIBOPENCM3_RNG_H 19 | #define LIBOPENCM3_RNG_H 20 | 21 | #include 22 | 23 | #endif 24 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/stm32/f7/doc-stm32f7.h: -------------------------------------------------------------------------------- 1 | /** @mainpage libopencm3 STM32F7 2 | 3 | @version 1.0.0 4 | 5 | @date 15 September 2014 6 | 7 | API documentation for ST Microelectronics STM32F7 Cortex M7 series. 8 | 9 | LGPL License Terms @ref lgpl_license 10 | */ 11 | 12 | /** @defgroup STM32F7xx STM32F7xx 13 | Libraries for ST Microelectronics STM32F7xx series. 14 | 15 | @version 1.0.0 16 | 17 | @date 15 September 2014 18 | 19 | LGPL License Terms @ref lgpl_license 20 | */ 21 | 22 | /** @defgroup STM32F7xx_defines STM32F7xx Defines 23 | 24 | @brief Defined Constants and Types for the STM32F7xx series 25 | 26 | @version 1.0.0 27 | 28 | @date 15 September 2014 29 | 30 | LGPL License Terms @ref lgpl_license 31 | */ 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/stm32/l0/doc-stm32l0.h: -------------------------------------------------------------------------------- 1 | /** @mainpage libopencm3 STM32L0 2 | 3 | @version 1.0.0 4 | 5 | @date 15 November 2014 6 | 7 | API documentation for ST Microelectronics STM32L0 Cortex M0 series. 8 | 9 | LGPL License Terms @ref lgpl_license 10 | */ 11 | 12 | /** @defgroup STM32L0xx STM32L0xx 13 | Libraries for ST Microelectronics STM32L0xx series. 14 | 15 | @version 1.0.0 16 | 17 | @date 15 November 2014 18 | 19 | LGPL License Terms @ref lgpl_license 20 | */ 21 | 22 | /** @defgroup STM32L0xx_defines STM32L0xx Defines 23 | 24 | @brief Defined Constants and Types for the STM32L0xx series 25 | 26 | @version 1.0.0 27 | 28 | @date 7 September 2012 29 | 30 | LGPL License Terms @ref lgpl_license 31 | */ 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/stm32/l0/irq.json: -------------------------------------------------------------------------------- 1 | { 2 | "irqs": [ 3 | "wwdg", 4 | "pvd", 5 | "rtc", 6 | "flash", 7 | "rcc", 8 | "exti0_1", 9 | "exti2_3", 10 | "exti4_15", 11 | "tsc", 12 | "dma1_channel1", 13 | "dma1_channel2_3", 14 | "dma1_channel4_5", 15 | "adc_comp", 16 | "lptim1", 17 | "reserved1", 18 | "tim2", 19 | "reserved2", 20 | "tim6_dac", 21 | "reserved3", 22 | "reserved4", 23 | "tim21", 24 | "reserved5", 25 | "tim22", 26 | "i2c1", 27 | "i2c2", 28 | "spi1", 29 | "spi2", 30 | "usart1", 31 | "usart2", 32 | "lpuart1", 33 | "lcd", 34 | "usb" 35 | ], 36 | "partname_humanreadable": "STM32 L0 series", 37 | "partname_doxygen": "STM32L0", 38 | "includeguard": "LIBOPENCM3_STM32_L0_NVIC_H" 39 | } -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/stm32/l0/st_usbfs.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * This library is free software: you can redistribute it and/or modify 5 | * it under the terms of the GNU Lesser General Public License as published by 6 | * the Free Software Foundation, either version 3 of the License, or 7 | * (at your option) any later version. 8 | * 9 | * This library is distributed in the hope that it will be useful, 10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 | * GNU Lesser General Public License for more details. 13 | * 14 | * You should have received a copy of the GNU Lesser General Public License 15 | * along with this library. If not, see . 16 | */ 17 | /* THIS FILE SHOULD NOT BE INCLUDED DIRECTLY ! 18 | * Use top-level 19 | */ 20 | 21 | #ifndef LIBOPENCM3_ST_USBFS_H 22 | # error Do not include directly ! 23 | #else 24 | 25 | #include 26 | 27 | #endif 28 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/stm32/l1/doc-stm32l1.h: -------------------------------------------------------------------------------- 1 | /** @mainpage libopencm3 STM32L1 2 | 3 | @version 1.0.0 4 | 5 | @date 12 November 2012 6 | 7 | API documentation for ST Microelectronics STM32L1 Cortex M3 series. 8 | 9 | LGPL License Terms @ref lgpl_license 10 | */ 11 | 12 | /** @defgroup STM32L1xx STM32L1xx 13 | Libraries for ST Microelectronics STM32L1xx series. 14 | 15 | @version 1.0.0 16 | 17 | @date 12 November 2012 18 | 19 | LGPL License Terms @ref lgpl_license 20 | */ 21 | 22 | /** @defgroup STM32L1xx_defines STM32L1xx Defines 23 | 24 | @brief Defined Constants and Types for the STM32L1xx series 25 | 26 | @version 1.0.0 27 | 28 | @date 12 November 2012 29 | 30 | LGPL License Terms @ref lgpl_license 31 | */ 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/stm32/l1/st_usbfs.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * This library is free software: you can redistribute it and/or modify 5 | * it under the terms of the GNU Lesser General Public License as published by 6 | * the Free Software Foundation, either version 3 of the License, or 7 | * (at your option) any later version. 8 | * 9 | * This library is distributed in the hope that it will be useful, 10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 | * GNU Lesser General Public License for more details. 13 | * 14 | * You should have received a copy of the GNU Lesser General Public License 15 | * along with this library. If not, see . 16 | */ 17 | /* THIS FILE SHOULD NOT BE INCLUDED DIRECTLY ! 18 | * Use top-level 19 | */ 20 | 21 | #ifndef LIBOPENCM3_ST_USBFS_H 22 | # error Do not include directly ! 23 | #else 24 | 25 | #include 26 | 27 | #endif 28 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/stm32/ltdc.h: -------------------------------------------------------------------------------- 1 | /* This provides unification of code over STM32F subfamilies */ 2 | 3 | /* 4 | * This file is part of the libopencm3 project. 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #include 21 | #include 22 | 23 | #if defined(STM32F4) 24 | # include 25 | #else 26 | # error "LCD-TFT only defined for STM32F4" 27 | #endif 28 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/stm32/tsc.h: -------------------------------------------------------------------------------- 1 | /* This provides unification of code over STM32F subfamilies */ 2 | 3 | /* 4 | * This file is part of the libopencm3 project. 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | #include 21 | #include 22 | 23 | #if defined(STM32F0) 24 | # include 25 | #else 26 | # error "stm32 family not defined." 27 | #endif 28 | 29 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/usb/doc-usb.h: -------------------------------------------------------------------------------- 1 | /** @mainpage libopencm3 Generic USB 2 | 3 | @version 1.0.0 4 | 5 | @date 10 March 2013 6 | 7 | API documentation for Generic USB. 8 | 9 | LGPL License Terms @ref lgpl_license 10 | */ 11 | 12 | /** @defgroup USB Generic USB 13 | Libraries for Generic USB. 14 | 15 | @version 1.0.0 16 | 17 | @date 10 March 2013 18 | 19 | LGPL License Terms @ref lgpl_license 20 | */ 21 | 22 | /** @defgroup USB_defines Generic USB Defines 23 | 24 | @brief Defined Constants and Types for Generic USB. 25 | 26 | @version 1.0.0 27 | 28 | @date 10 March 2013 29 | 30 | LGPL License Terms @ref lgpl_license 31 | */ 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/include/libopencm3/vf6xx/doc-vf6xx.h: -------------------------------------------------------------------------------- 1 | /** @mainpage libopencm3 VF6xx 2 | * 3 | * @version 1.0.0 4 | * 5 | * @date 03 July 2014 6 | * 7 | * API documentation for Freescale VF6xx series Cortex-M4 core. 8 | * 9 | * LGPL License Terms @ref lgpl_license 10 | */ 11 | 12 | /** @defgroup VF6xx VF6xx 13 | * Libraries for Freescale VF6xx series Cortex-M4 core. 14 | * 15 | * @version 1.0.0 16 | * 17 | * @date 03 July 2014 18 | * 19 | * LGPL License Terms @ref lgpl_license 20 | */ 21 | 22 | /** @defgroup VF6xx_defines VF6xx Defines 23 | * 24 | * @brief Defined Constants and Types for the VF6xx series 25 | * 26 | * @version 1.0.0 27 | * 28 | * @date 03 July 2014 29 | * 30 | * LGPL License Terms @ref lgpl_license 31 | */ 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/ld/Makefile.example: -------------------------------------------------------------------------------- 1 | BINARY = button 2 | 3 | DEVICE = stm32f407vgt6 4 | 5 | # common Makefile.include from examples directory unpacked and stripped 6 | #include ../../Makefile.include 7 | 8 | CC = arm-none-eabi-gcc 9 | LD = arm-none-eabi-gcc 10 | OBJCOPY = arm-none-eabi-objcopy 11 | OBJDUMP = arm-none-eabi-objdump 12 | GDB = arm-none-eabi-gdb 13 | 14 | TOOLCHAIN_DIR ?= ../../../../../libopencm3 15 | 16 | CFLAGS += <...> 17 | LDSCRIPT ?= $(BINARY).ld 18 | LDFLAGS += <..> 19 | OBJS += $(BINARY).o 20 | 21 | GENFILES ?= *.o 22 | 23 | all: images 24 | 25 | ## This is the place where the translation DEVICE->LDSCRIPT will be executed 26 | include $(TOOLCHAIN_DIR)/ld/Makefile.linker 27 | 28 | images: $(BINARY).images 29 | flash: $(BINARY).flash 30 | 31 | <... comon makefile continues ...> 32 | 33 | clean: 34 | $(Q)rm -f *.o 35 | $(Q)rm -f *.d 36 | $(Q)rm -f *.elf 37 | $(Q)rm -f *.bin 38 | $(Q)rm -f *.hex 39 | $(Q)rm -f *.srec 40 | $(Q)rm -f *.list 41 | $(Q)rm -f $(GENFILES) 42 | 43 | .PHONY: images clean 44 | 45 | -include $(OBJS:.o=.d) 46 | 47 | -------------------------------------------------------------------------------- /libopencm3/ld/tests/dash.data: -------------------------------------------------------------------------------- 1 | dash END A B C D -mcpu=cortex-m0 -------------------------------------------------------------------------------- /libopencm3/ld/tests/dash.result: -------------------------------------------------------------------------------- 1 | -D_A -D_B -D_C -D_D -mcpu=cortex-m0 -------------------------------------------------------------------------------- /libopencm3/ld/tests/longline.data: -------------------------------------------------------------------------------- 1 | longline + A=parameter B=parameter C=parameter D=parameter E==parameter 2 | longline END F=parameter G=parameter -------------------------------------------------------------------------------- /libopencm3/ld/tests/longline.result: -------------------------------------------------------------------------------- 1 | -D_A=parameter -D_B=parameter -D_C=parameter -D_D=parameter -D_E==parameter -D_F=parameter -D_G=parameter -------------------------------------------------------------------------------- /libopencm3/ld/tests/single.data: -------------------------------------------------------------------------------- 1 | single END A B C D -------------------------------------------------------------------------------- /libopencm3/ld/tests/single.result: -------------------------------------------------------------------------------- 1 | -D_A -D_B -D_C -D_D -------------------------------------------------------------------------------- /libopencm3/ld/tests/tree1.data: -------------------------------------------------------------------------------- 1 | tree1 treeparent A B C D 2 | treeparent END E F 3 | -------------------------------------------------------------------------------- /libopencm3/ld/tests/tree1.result: -------------------------------------------------------------------------------- 1 | -D_A -D_B -D_C -D_D -D_E -D_F -------------------------------------------------------------------------------- /libopencm3/ld/tests/tree5.data: -------------------------------------------------------------------------------- 1 | tree5 tree4 A 2 | tree4 tree3 B 3 | tree3 tree2 C 4 | tree2 tree1 D 5 | tree1 END E F 6 | -------------------------------------------------------------------------------- /libopencm3/ld/tests/tree5.result: -------------------------------------------------------------------------------- 1 | -D_A -D_B -D_C -D_D -D_E -D_F -------------------------------------------------------------------------------- /libopencm3/ld/tests/twomatch.data: -------------------------------------------------------------------------------- 1 | twomatch treeparent A B C D 2 | # the next line will be ignored because previous matches before and no + there 3 | twomatch treeparent P Q R S 4 | treeparent END E F 5 | -------------------------------------------------------------------------------- /libopencm3/ld/tests/twomatch.result: -------------------------------------------------------------------------------- 1 | -D_A -D_B -D_C -D_D -D_E -D_F -------------------------------------------------------------------------------- /libopencm3/lib/dispatch/vector_chipset.c: -------------------------------------------------------------------------------- 1 | #if defined(STM32F3) 2 | # include "../stm32/f3/vector_chipset.c" 3 | #elif defined(STM32F4) 4 | # include "../stm32/f4/vector_chipset.c" 5 | #elif defined(STM32F7) 6 | # include "../stm32/f7/vector_chipset.c" 7 | #elif defined(LPC43XX_M4) 8 | # include "../lpc43xx/m4/vector_chipset.c" 9 | #elif defined(VF6XX) 10 | # include "../vf6xx/vector_chipset.c" 11 | 12 | #else 13 | 14 | static void pre_main(void) {} 15 | 16 | #endif 17 | -------------------------------------------------------------------------------- /libopencm3/lib/efm32/g/libopencm3_efm32g880f128.ld: -------------------------------------------------------------------------------- 1 | /* lengths from d011_efm32tg840_datasheet.pdf table 1.1, offset from 2 | * d0034_efm32tg_reference_manual.pdf figure 5.2. 3 | * 4 | * the origins and memory structure are constant over all tinygeckos, but the 5 | * MEMORY section requires the use of constants, and has thus to be duplicated 6 | * over the chip variants. 7 | * */ 8 | 9 | MEMORY 10 | { 11 | rom (rx) : ORIGIN = 0, LENGTH = 128k 12 | ram (rwx) : ORIGIN = 0x20000000, LENGTH = 16k 13 | } 14 | 15 | INCLUDE libopencm3_efm32g.ld; 16 | -------------------------------------------------------------------------------- /libopencm3/lib/efm32/gg/libopencm3_efm32gg990f1024.ld: -------------------------------------------------------------------------------- 1 | /* lengths from d046_efm32gg990_datasheet.pdf table 1.1, offset from 2 | * d0034_efm32tg_reference_manual.pdf figure 5.2. 3 | * 4 | * the origins and memory structure are constant over all giantgeckos, but the 5 | * MEMORY section requires the use of constants, and has thus to be duplicated 6 | * over the chip variants. 7 | * */ 8 | 9 | MEMORY 10 | { 11 | rom (rx) : ORIGIN = 0, LENGTH = 1024k 12 | ram (rwx) : ORIGIN = 0x20000000, LENGTH = 128k 13 | } 14 | 15 | INCLUDE libopencm3_efm32gg.ld; 16 | -------------------------------------------------------------------------------- /libopencm3/lib/efm32/tg/libopencm3_efm32tg840f32.ld: -------------------------------------------------------------------------------- 1 | /* lengths from d011_efm32tg840_datasheet.pdf table 1.1, offset from 2 | * d0034_efm32tg_reference_manual.pdf figure 5.2. 3 | * 4 | * the origins and memory structure are constant over all tinygeckos, but the 5 | * MEMORY section requires the use of constants, and has thus to be duplicated 6 | * over the chip variants. 7 | * */ 8 | 9 | MEMORY 10 | { 11 | rom (rx) : ORIGIN = 0, LENGTH = 32k 12 | ram (rwx) : ORIGIN = 0x20000000, LENGTH = 4k 13 | } 14 | 15 | INCLUDE libopencm3_efm32tg.ld; 16 | -------------------------------------------------------------------------------- /libopencm3/lib/gd32/f1/crc.c: -------------------------------------------------------------------------------- 1 | /** @defgroup crc_file CRC 2 | 3 | @ingroup GD32F1xx 4 | 5 | @brief libopencm3 GD32F1xx CRC 6 | 7 | @version 1.0.0 8 | 9 | @date 15 October 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/gd32/f1/dac.c: -------------------------------------------------------------------------------- 1 | /** @defgroup dac_file DAC 2 | 3 | @ingroup GD32F1xx 4 | 5 | @brief libopencm3 GD32F1xx DAC 6 | 7 | @version 1.0.0 8 | 9 | @date 18 August 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/gd32/f1/dma.c: -------------------------------------------------------------------------------- 1 | /** @defgroup dma_file DMA 2 | 3 | @ingroup GD32F1xx 4 | 5 | @brief libopencm3 GD32F1xx DMA 6 | 7 | @version 1.0.0 8 | 9 | @date 18 August 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/gd32/f1/i2c.c: -------------------------------------------------------------------------------- 1 | /** @defgroup i2c_file I2C 2 | 3 | @ingroup GD32F1xx 4 | 5 | @brief libopencm3 GD32F1xx I2C 6 | 7 | @version 1.0.0 8 | 9 | @date 15 October 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/gd32/f1/iwdg.c: -------------------------------------------------------------------------------- 1 | /** @defgroup iwdg_file IWDG 2 | 3 | @ingroup GD32F1xx 4 | 5 | @brief libopencm3 GD32F1xx Independent Watchdog Timer 6 | 7 | @version 1.0.0 8 | 9 | @date 18 August 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/gd32/f1/spi.c: -------------------------------------------------------------------------------- 1 | /** @defgroup spi_file SPI 2 | 3 | @ingroup GD32F1xx 4 | 5 | @brief libopencm3 GD32F1xx SPI 6 | 7 | @version 1.0.0 8 | 9 | @date 15 October 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/gd32/f1/usart.c: -------------------------------------------------------------------------------- 1 | /** @defgroup usart_file USART 2 | 3 | @ingroup GD32F1xx 4 | 5 | @brief libopencm3 GD32F1xx USART 6 | 7 | @version 1.0.0 8 | 9 | @date 30 August 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/lm4f/libopencm3_lm4f.ld: -------------------------------------------------------------------------------- 1 | /* Yes, we can simply use the lm3s linker script */ 2 | INCLUDE "libopencm3_lm3s.ld" 3 | -------------------------------------------------------------------------------- /libopencm3/lib/lpc43xx/m0/libopencm3_lpc43xx_m0.ld: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pysco68/waveshare-hid/e0784af33ed352d2ac72ba3511d1f3d44a771252/libopencm3/lib/lpc43xx/m0/libopencm3_lpc43xx_m0.ld -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f0/crc.c: -------------------------------------------------------------------------------- 1 | /** @defgroup crc_file CRC 2 | * 3 | * @ingroup STM32F0xx 4 | * 5 | * @brief libopencm3 STM32F0xx CRC 6 | * 7 | * @version 1.0.0 8 | * 9 | * @date 11 July 2013 10 | * 11 | * LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f0/dac.c: -------------------------------------------------------------------------------- 1 | /** @defgroup dac_file DAC 2 | * 3 | * @ingroup STM32F0xx 4 | * 5 | * @brief libopencm3 STM32F0xx DAC 6 | * 7 | * @version 1.0.0 8 | * 9 | * @date 11 July 2013 10 | * 11 | * LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f0/dma.c: -------------------------------------------------------------------------------- 1 | /** @defgroup dma_file DMA 2 | * 3 | * @ingroup STM32F0xx 4 | * 5 | * @brief libopencm3 STM32F0xx DMA 6 | * 7 | * @version 1.0.0 8 | * 9 | * @date 10 July 2013 10 | * 11 | * LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f0/gpio.c: -------------------------------------------------------------------------------- 1 | /** @defgroup gpio_file GPIO 2 | * 3 | * @ingroup STM32F0xx 4 | * 5 | * @brief libopencm3 STM32F0xx General Purpose I/O 6 | * 7 | * @version 1.0.0 8 | * 9 | * @date 18 August 2012 10 | * 11 | * LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f0/i2c.c: -------------------------------------------------------------------------------- 1 | /** @defgroup i2c_file I2C 2 | * 3 | * @ingroup STM32F0xx 4 | * 5 | * @brief libopencm3 STM32F0xx I2C 6 | * 7 | * @version 1.0.0 8 | * 9 | * @date 11 July 2013 10 | * 11 | * LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f0/iwdg.c: -------------------------------------------------------------------------------- 1 | /** @defgroup iwdg_file IWDG 2 | * 3 | * @ingroup STM32F0xx 4 | * 5 | * @brief libopencm3 STM32F0xx Independent Watchdog Timer 6 | * 7 | * @version 1.0.0 8 | * 9 | * @date 11 July 2013 10 | * 11 | * LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f0/rtc.c: -------------------------------------------------------------------------------- 1 | /** @defgroup rtc_file RTC 2 | * 3 | * @ingroup STM32F0xx 4 | * 5 | * @brief libopencm3 STM32F0xx RTC 6 | * 7 | * @version 1.0.0 8 | * 9 | * @date 10 July 2013 10 | * 11 | * LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f0/spi.c: -------------------------------------------------------------------------------- 1 | /** @defgroup spi_file SPI 2 | 3 | @ingroup STM32F0xx 4 | 5 | @brief libopencm3 STM32F0xx SPI 6 | 7 | @version 1.0.0 8 | 9 | @date 20 February 2014 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f0/syscfg.c: -------------------------------------------------------------------------------- 1 | /** @defgroup syscfg_file SYSCFG 2 | * 3 | * @ingroup STM32F0xx 4 | * 5 | * @brief libopencm3 STM32F0xx SYSCFG 6 | * 7 | * @version 1.0.0 8 | * 9 | * @date 10 July 2013 10 | * 11 | * LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f1/crc.c: -------------------------------------------------------------------------------- 1 | /** @defgroup crc_file CRC 2 | 3 | @ingroup STM32F1xx 4 | 5 | @brief libopencm3 STM32F1xx CRC 6 | 7 | @version 1.0.0 8 | 9 | @date 15 October 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f1/dac.c: -------------------------------------------------------------------------------- 1 | /** @defgroup dac_file DAC 2 | 3 | @ingroup STM32F1xx 4 | 5 | @brief libopencm3 STM32F1xx DAC 6 | 7 | @version 1.0.0 8 | 9 | @date 18 August 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f1/dma.c: -------------------------------------------------------------------------------- 1 | /** @defgroup dma_file DMA 2 | 3 | @ingroup STM32F1xx 4 | 5 | @brief libopencm3 STM32F1xx DMA 6 | 7 | @version 1.0.0 8 | 9 | @date 18 August 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f1/i2c.c: -------------------------------------------------------------------------------- 1 | /** @defgroup i2c_file I2C 2 | 3 | @ingroup STM32F1xx 4 | 5 | @brief libopencm3 STM32F1xx I2C 6 | 7 | @version 1.0.0 8 | 9 | @date 15 October 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f1/iwdg.c: -------------------------------------------------------------------------------- 1 | /** @defgroup iwdg_file IWDG 2 | 3 | @ingroup STM32F1xx 4 | 5 | @brief libopencm3 STM32F1xx Independent Watchdog Timer 6 | 7 | @version 1.0.0 8 | 9 | @date 18 August 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f1/spi.c: -------------------------------------------------------------------------------- 1 | /** @defgroup spi_file SPI 2 | 3 | @ingroup STM32F1xx 4 | 5 | @brief libopencm3 STM32F1xx SPI 6 | 7 | @version 1.0.0 8 | 9 | @date 15 October 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f1/usart.c: -------------------------------------------------------------------------------- 1 | /** @defgroup usart_file USART 2 | 3 | @ingroup STM32F1xx 4 | 5 | @brief libopencm3 STM32F1xx USART 6 | 7 | @version 1.0.0 8 | 9 | @date 30 August 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f2/crc.c: -------------------------------------------------------------------------------- 1 | /** @defgroup crc_file CRC 2 | 3 | @ingroup STM32F2xx 4 | 5 | @brief libopencm3 STM32F2xx CRC 6 | 7 | @version 1.0.0 8 | 9 | @date 15 October 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | 33 | 34 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f2/crypto.c: -------------------------------------------------------------------------------- 1 | /** @defgroup crypto_file CRYPTO 2 | * 3 | * @ingroup STM32F2xx 4 | * 5 | * @brief libopencm3 STM32F2xx Cryptographic controller 6 | * 7 | * @version 1.0.0 8 | * 9 | * @date 14 January 2014 10 | * 11 | * LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f2/dac.c: -------------------------------------------------------------------------------- 1 | /** @defgroup dac_file DAC 2 | 3 | @ingroup STM32F2xx 4 | 5 | @brief libopencm3 STM32F2xx DAC 6 | 7 | @version 1.0.0 8 | 9 | @date 18 August 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f2/dma.c: -------------------------------------------------------------------------------- 1 | /** @defgroup dma_file DMA 2 | 3 | @ingroup STM32F2xx 4 | 5 | @brief libopencm3 STM32F2xx DMA 6 | 7 | @version 1.0.0 8 | 9 | @date 30 November 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f2/gpio.c: -------------------------------------------------------------------------------- 1 | /** @defgroup gpio_file GPIO 2 | 3 | @ingroup STM32F2xx 4 | 5 | @brief libopencm3 STM32F2xx General Purpose I/O 6 | 7 | @version 1.0.0 8 | 9 | @date 18 August 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f2/hash.c: -------------------------------------------------------------------------------- 1 | /** @defgroup hash_file HASH 2 | * 3 | * @ingroup STM32F2xx 4 | * 5 | * @brief libopencm3 STM32F2xx Hash Processor 6 | * 7 | * @version 1.0.0 8 | * 9 | * @date 14 January 2014 10 | * 11 | * LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f2/i2c.c: -------------------------------------------------------------------------------- 1 | /** @defgroup i2c_file I2C 2 | * 3 | * @ingroup STM32F2xx 4 | * 5 | * @brief libopencm3 STM32F2xx I2C 6 | * 7 | * @version 1.0.0 8 | * 9 | * @date 15 October 2012 10 | * 11 | * LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | #include 33 | 34 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f2/iwdg.c: -------------------------------------------------------------------------------- 1 | /** @defgroup iwdg_file IWDG 2 | 3 | @ingroup STM32F2xx 4 | 5 | @brief libopencm3 STM32F2xx Independent Watchdog Timer 6 | 7 | @version 1.0.0 8 | 9 | @date 18 August 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f2/rtc.c: -------------------------------------------------------------------------------- 1 | /** @defgroup rtc_file RTC 2 | * 3 | * @ingroup STM32F2xx 4 | * 5 | * @brief libopencm3 STM32F2xx RTC 6 | * 7 | * @version 1.0.0 8 | * 9 | * @date 4 March 2013 10 | * 11 | * LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f2/spi.c: -------------------------------------------------------------------------------- 1 | /** @defgroup spi_file SPI 2 | 3 | @ingroup STM32F2xx 4 | 5 | @brief libopencm3 STM32F2xx SPI 6 | 7 | @version 1.0.0 8 | 9 | @date 15 October 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f2/usart.c: -------------------------------------------------------------------------------- 1 | /** @defgroup usart_file USART 2 | 3 | @ingroup STM32F2xx 4 | 5 | @brief libopencm3 STM32F2xx USART 6 | 7 | @version 1.0.0 8 | 9 | @date 30 August 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f3/crc.c: -------------------------------------------------------------------------------- 1 | /** @defgroup crc_file CRC 2 | * 3 | * @ingroup STM32F3xx 4 | * 5 | * @brief libopencm3 STM32F3xx CRC 6 | * 7 | * @version 1.0.0 8 | * 9 | * @date 15 October 2012 10 | * 11 | * LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | 33 | 34 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f3/dac.c: -------------------------------------------------------------------------------- 1 | /** @defgroup dac_file DAC 2 | * 3 | * @ingroup STM32F3xx 4 | * 5 | * @brief libopencm3 STM32F3xx DAC 6 | * 7 | * @version 1.0.0 8 | * 9 | * @date 18 August 2012 10 | * 11 | * LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f3/dma.c: -------------------------------------------------------------------------------- 1 | /** @defgroup dma_file DMA 2 | * 3 | * @ingroup STM32F3xx 4 | * 5 | * @brief libopencm3 STM32F3xx Direct Memory Access 6 | * 7 | * @version 1.0.0 8 | * 9 | * @date 11 July 2013 10 | * 11 | * LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f3/iwdg.c: -------------------------------------------------------------------------------- 1 | /** @defgroup iwdg_file IWDG 2 | * 3 | * @ingroup STM32F3xx 4 | * 5 | * @brief libopencm3 STM32F3xx Independent Watchdog Timer 6 | * 7 | * @version 1.0.0 8 | * 9 | * @date 18 August 2012 10 | * 11 | * LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f3/spi.c: -------------------------------------------------------------------------------- 1 | /** @defgroup spi_file SPI 2 | 3 | @ingroup STM32F3xx 4 | 5 | @brief libopencm3 STM32F3xx SPI 6 | 7 | @version 1.0.0 8 | 9 | @date 20 February 2014 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f3/stm32f303xc.ld: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2015 Karl Palsson 5 | * 6 | * This library is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Lesser General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This library is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Lesser General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Lesser General Public License 17 | * along with this library. If not, see . 18 | */ 19 | 20 | /* Linker script for the STM32F303xC chip. */ 21 | 22 | /* Define memory regions. */ 23 | MEMORY 24 | { 25 | rom (rx) : ORIGIN = 0x08000000, LENGTH = 256K 26 | ram (rwx) : ORIGIN = 0x20000000, LENGTH = 40K 27 | } 28 | 29 | /* Include the common ld script. */ 30 | INCLUDE libopencm3_stm32f3.ld 31 | 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f3/timer.c: -------------------------------------------------------------------------------- 1 | /** @defgroup timer_file TIMER 2 | * 3 | * @ingroup STM32F3xx 4 | * 5 | * @brief libopencm3 STM32F3xx Timers 6 | * 7 | * @version 1.0.0 8 | * 9 | * @date 11 July 2013 10 | * 11 | * LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | 33 | 34 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f3/vector_chipset.c: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2010 Piotr Esden-Tempski 5 | * Copyright (C) 2011 Fergus Noble 6 | * 7 | * This library is free software: you can redistribute it and/or modify 8 | * it under the terms of the GNU Lesser General Public License as published by 9 | * the Free Software Foundation, either version 3 of the License, or 10 | * (at your option) any later version. 11 | * 12 | * This library is distributed in the hope that it will be useful, 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | * GNU Lesser General Public License for more details. 16 | * 17 | * You should have received a copy of the GNU Lesser General Public License 18 | * along with this library. If not, see . 19 | */ 20 | 21 | #include 22 | 23 | static void pre_main(void) 24 | { 25 | /* Enable access to Floating-Point coprocessor. */ 26 | SCB_CPACR |= SCB_CPACR_FULL * (SCB_CPACR_CP10 | SCB_CPACR_CP11); 27 | } 28 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f4/crc.c: -------------------------------------------------------------------------------- 1 | /** @defgroup crc_file CRC 2 | 3 | @ingroup STM32F4xx 4 | 5 | @brief libopencm3 STM32F4xx CRC 6 | 7 | @version 1.0.0 8 | 9 | @date 15 October 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | 33 | 34 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f4/dac.c: -------------------------------------------------------------------------------- 1 | /** @defgroup dac_file DAC 2 | 3 | @ingroup STM32F4xx 4 | 5 | @brief libopencm3 STM32F4xx DAC 6 | 7 | @version 1.0.0 8 | 9 | @date 18 August 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f4/dma.c: -------------------------------------------------------------------------------- 1 | /** @defgroup dma_file DMA 2 | 3 | @ingroup STM32F4xx 4 | 5 | @brief libopencm3 STM32F4xx DMA 6 | 7 | @version 1.0.0 8 | 9 | @date 30 November 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f4/gpio.c: -------------------------------------------------------------------------------- 1 | /** @defgroup gpio_file GPIO 2 | 3 | @ingroup STM32F4xx 4 | 5 | @brief libopencm3 STM32F4xx General Purpose I/O 6 | 7 | @version 1.0.0 8 | 9 | @date 18 August 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f4/hash.c: -------------------------------------------------------------------------------- 1 | /** @defgroup hash_file HASH 2 | * 3 | * @ingroup STM32F4xx 4 | * 5 | * @brief libopencm3 STM32F4xx Hash Processor 6 | * 7 | * @version 1.0.0 8 | * 9 | * @date 13 January 2014 10 | * 11 | * LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f4/i2c.c: -------------------------------------------------------------------------------- 1 | /** @defgroup i2c_file I2C 2 | 3 | @ingroup STM32F4xx 4 | 5 | @brief libopencm3 STM32F4xx I2C 6 | 7 | @version 1.0.0 8 | 9 | @date 15 October 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f4/iwdg.c: -------------------------------------------------------------------------------- 1 | /** @defgroup iwdg_file IWDG 2 | 3 | @ingroup STM32F4xx 4 | 5 | @brief libopencm3 STM32F4xx Independent Watchdog Timer 6 | 7 | @version 1.0.0 8 | 9 | @date 18 August 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f4/spi.c: -------------------------------------------------------------------------------- 1 | /** @defgroup spi_file SPI 2 | 3 | @ingroup STM32F4xx 4 | 5 | @brief libopencm3 STM32F4xx SPI 6 | 7 | @version 1.0.0 8 | 9 | @date 15 October 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f4/usart.c: -------------------------------------------------------------------------------- 1 | /** @defgroup usart_file USART 2 | 3 | @ingroup STM32F4xx 4 | 5 | @brief libopencm3 STM32F4xx USART 6 | 7 | @version 1.0.0 8 | 9 | @date 30 August 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f4/vector_chipset.c: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2010 Piotr Esden-Tempski 5 | * Copyright (C) 2011 Fergus Noble 6 | * 7 | * This library is free software: you can redistribute it and/or modify 8 | * it under the terms of the GNU Lesser General Public License as published by 9 | * the Free Software Foundation, either version 3 of the License, or 10 | * (at your option) any later version. 11 | * 12 | * This library is distributed in the hope that it will be useful, 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | * GNU Lesser General Public License for more details. 16 | * 17 | * You should have received a copy of the GNU Lesser General Public License 18 | * along with this library. If not, see . 19 | */ 20 | 21 | #include 22 | 23 | static void pre_main(void) 24 | { 25 | /* Enable access to Floating-Point coprocessor. */ 26 | SCB_CPACR |= SCB_CPACR_FULL * (SCB_CPACR_CP10 | SCB_CPACR_CP11); 27 | } 28 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f7/gpio.c: -------------------------------------------------------------------------------- 1 | /** @defgroup gpio_file GPIO 2 | 3 | @ingroup STM32F7xx 4 | 5 | @brief libopencm3 STM32F7xx General Purpose I/O 6 | 7 | @version 1.0.0 8 | 9 | @date 18 August 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/f7/vector_chipset.c: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the libopencm3 project. 3 | * 4 | * Copyright (C) 2010 Piotr Esden-Tempski 5 | * Copyright (C) 2011 Fergus Noble 6 | * 7 | * This library is free software: you can redistribute it and/or modify 8 | * it under the terms of the GNU Lesser General Public License as published by 9 | * the Free Software Foundation, either version 3 of the License, or 10 | * (at your option) any later version. 11 | * 12 | * This library is distributed in the hope that it will be useful, 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | * GNU Lesser General Public License for more details. 16 | * 17 | * You should have received a copy of the GNU Lesser General Public License 18 | * along with this library. If not, see . 19 | */ 20 | 21 | #include 22 | 23 | static void pre_main(void) 24 | { 25 | /* Enable access to Floating-Point coprocessor. */ 26 | SCB_CPACR |= SCB_CPACR_FULL * (SCB_CPACR_CP10 | SCB_CPACR_CP11); 27 | } 28 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/l0/gpio.c: -------------------------------------------------------------------------------- 1 | /** @defgroup gpio_file GPIO 2 | * 3 | * @ingroup STM32L0xx 4 | * 5 | * @brief libopencm3 STM32L0xx General Purpose I/O 6 | * 7 | * @version 1.0.0 8 | * 9 | * @date 8 September 2014 10 | * 11 | * LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/l1/crc.c: -------------------------------------------------------------------------------- 1 | /** @defgroup crc_file CRC 2 | 3 | @ingroup STM32L1xx 4 | 5 | @brief libopencm3 STM32L1xx CRC 6 | 7 | @version 1.0.0 8 | 9 | @date 15 October 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | 33 | 34 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/l1/dac.c: -------------------------------------------------------------------------------- 1 | /** @defgroup dac_file DAC 2 | 3 | @ingroup STM32L1xx 4 | 5 | @brief libopencm3 STM32L1xx DAC 6 | 7 | @version 1.0.0 8 | 9 | @date 18 August 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/l1/dma.c: -------------------------------------------------------------------------------- 1 | /** @defgroup dma_file DMA 2 | * 3 | * @ingroup STM32L1xx 4 | * 5 | * @brief libopencm3 STM32L1xx DMA 6 | * 7 | * @version 1.0.0 8 | * 9 | * @date 10 July 2013 10 | * 11 | * LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/l1/gpio.c: -------------------------------------------------------------------------------- 1 | /** @defgroup gpio_file GPIO 2 | 3 | @ingroup STM32L1xx 4 | 5 | @brief libopencm3 STM32L1xx General Purpose I/O 6 | 7 | @version 1.0.0 8 | 9 | @date 18 August 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/l1/i2c.c: -------------------------------------------------------------------------------- 1 | /** @defgroup i2c_file I2C 2 | 3 | @ingroup STM32L1xx 4 | 5 | @brief libopencm3 STM32L1xx I2C 6 | 7 | @version 1.0.0 8 | 9 | @date 15 October 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/l1/iwdg.c: -------------------------------------------------------------------------------- 1 | /** @defgroup iwdg_file IWDG 2 | 3 | @ingroup STM32L1xx 4 | 5 | @brief libopencm3 STM32L1xx Independent Watchdog Timer 6 | 7 | @version 1.0.0 8 | 9 | @date 18 August 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/l1/rtc.c: -------------------------------------------------------------------------------- 1 | /** @defgroup rtc_file RTC 2 | * 3 | * @ingroup STM32L1xx 4 | * 5 | * @brief libopencm3 STM32L1xx RTC 6 | * 7 | * @version 1.0.0 8 | * 9 | * @date 4 March 2013 10 | * 11 | * LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/l1/spi.c: -------------------------------------------------------------------------------- 1 | /** @defgroup spi_file SPI 2 | 3 | @ingroup STM32L1xx 4 | 5 | @brief libopencm3 STM32L1xx SPI 6 | 7 | @version 1.0.0 8 | 9 | @date 15 October 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/lib/stm32/l1/usart.c: -------------------------------------------------------------------------------- 1 | /** @defgroup usart_file USART 2 | 3 | @ingroup STM32L1xx 4 | 5 | @brief libopencm3 STM32L1xx USART 6 | 7 | @version 1.0.0 8 | 9 | @date 30 August 2012 10 | 11 | LGPL License Terms @ref lgpl_license 12 | */ 13 | 14 | /* 15 | * This file is part of the libopencm3 project. 16 | * 17 | * This library is free software: you can redistribute it and/or modify 18 | * it under the terms of the GNU Lesser General Public License as published by 19 | * the Free Software Foundation, either version 3 of the License, or 20 | * (at your option) any later version. 21 | * 22 | * This library is distributed in the hope that it will be useful, 23 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 24 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 25 | * GNU Lesser General Public License for more details. 26 | * 27 | * You should have received a copy of the GNU Lesser General Public License 28 | * along with this library. If not, see . 29 | */ 30 | 31 | #include 32 | -------------------------------------------------------------------------------- /libopencm3/locm3.sublime-project: -------------------------------------------------------------------------------- 1 | { 2 | "folders": 3 | [ 4 | { 5 | "path": ".", 6 | "file_exclude_patterns": 7 | [ 8 | "*.o", 9 | "*.a", 10 | "*.d", 11 | "*.sublime-project", 12 | "*.sublime-workspace", 13 | "*.swp" 14 | ], 15 | "folder_exclude_patterns": 16 | [ 17 | ] 18 | } 19 | ], 20 | "settings": 21 | { 22 | "tab_size": 8, 23 | "translate_tabs_to_spaces": false, 24 | "rulers": [80] 25 | }, 26 | "build_systems": 27 | [ 28 | { 29 | "name": "libopencm3", 30 | "working_dir": "${project_path}", 31 | "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$", 32 | "cmd": ["make"] 33 | } 34 | ] 35 | } 36 | -------------------------------------------------------------------------------- /libopencm3/mk/genlink-rules.mk: -------------------------------------------------------------------------------- 1 | ## 2 | ## This file is part of the libopencm3 project. 3 | ## 4 | ## Copyright (C) 2014 Frantisek Burian 5 | ## 6 | ## This library is free software: you can redistribute it and/or modify 7 | ## it under the terms of the GNU Lesser General Public License as published by 8 | ## the Free Software Foundation, either version 3 of the License, or 9 | ## (at your option) any later version. 10 | ## 11 | ## This library is distributed in the hope that it will be useful, 12 | ## but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ## GNU Lesser General Public License for more details. 15 | ## 16 | ## You should have received a copy of the GNU Lesser General Public License 17 | ## along with this library. If not, see . 18 | ## 19 | 20 | $(LDSCRIPT):$(OPENCM3_DIR)/ld/linker.ld.S 21 | ifeq ($(GENLINK_DEFS),) 22 | $(error unknown device $(DEVICE) for the linker. Cannot generate ldscript) 23 | endif 24 | @printf " GENLNK $@\n" 25 | $(Q)$(CPP) $(GENLINK_DEFS) -P -E $< > $@ 26 | -------------------------------------------------------------------------------- /libopencm3/scripts/black_magic_probe_debug.scr: -------------------------------------------------------------------------------- 1 | monitor version 2 | monitor swdp_scan 3 | attach 1 4 | run 5 | -------------------------------------------------------------------------------- /libopencm3/scripts/black_magic_probe_flash.scr: -------------------------------------------------------------------------------- 1 | monitor version 2 | monitor swdp_scan 3 | attach 1 4 | load 5 | -------------------------------------------------------------------------------- /libopencm3/scripts/data/lpc43xx/README: -------------------------------------------------------------------------------- 1 | These files contain information derived from the LPC43xx user manual (UM10503). 2 | They are intended to be used by scripts for the generation of header files and 3 | functions. 4 | 5 | Each line describes a field within a register. The comma separated values are: 6 | register name (as found in include/lpc43xx/*.h), 7 | bit position, 8 | length in bits, 9 | field name, 10 | description/comment (may be empty if not specified in data sheet), 11 | reset value (may be empty if not specified in data sheet), 12 | access (may be empty if not specified in data sheet) 13 | 14 | The access field may consist of any of the following codes: 15 | r: read only 16 | rw: read/write 17 | rwc: read/write one to clear 18 | rwo: read/write once 19 | rws: read/write one to set 20 | w: write only 21 | ws: write one to set 22 | 23 | Descriptions containing commas are quoted. 24 | -------------------------------------------------------------------------------- /libopencm3/scripts/data/lpc43xx/gen.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | import sys 4 | import yaml 5 | import yaml_odict 6 | from collections import OrderedDict 7 | 8 | from pprint import pprint 9 | 10 | registers = yaml.load(open(sys.argv[1], 'r')) 11 | 12 | for register_name, register in registers.iteritems(): 13 | print('/* --- %s values %s */' % (register_name, '-' * (50 - len(register_name)))) 14 | print 15 | fields = register['fields'] 16 | #for field_name, field in sorted(fields.items(), lambda x, y: cmp(x[1]['lsb'], y[1]['lsb'])): 17 | for field_name, field in fields.items(): 18 | mask_bits = (1 << field['width']) - 1 19 | print('/* %s: %s */' % (field_name, field['description'])) 20 | print('#define %s_%s_SHIFT (%d)' % ( 21 | register_name, field_name, field['lsb'], 22 | )) 23 | print('#define %s_%s_MASK (0x%x << %s_%s_SHIFT)' % ( 24 | register_name, field_name, mask_bits, register_name, field_name, 25 | )) 26 | print('#define %s_%s(x) ((x) << %s_%s_SHIFT)' % ( 27 | register_name, field_name, register_name, field_name, 28 | )) 29 | print 30 | -------------------------------------------------------------------------------- /libopencm3/tests/gadget-zero/README.md: -------------------------------------------------------------------------------- 1 | This project, inspired by [usbtest](http://www.linux-usb.org/usbtest/) and 2 | the linux usb gadget zero driver is used for regression testing changes to the 3 | libopencm3 usb stack. 4 | 5 | The firmware itself is meant to be portable to any supported hardware, and then 6 | identical unit test code is run against all platforms. This project can and 7 | should be built for multiple devices. 8 | 9 | Requirements: 10 | pyusb for running the tests. 11 | openocd >= 0.9 for automated flashing of specific boards 12 | python3 for running the tests at the command line. 13 | 14 | You _will_ need to modify the openocd config files, as they contain specific 15 | serial numbers of programming hardware. You should set these up for the set of 16 | available boards at your disposal. 17 | 18 | Tests marked as @unittest.skip are either for functionality that is known to be 19 | broken, and are awaiting code fixes, or are long running performance tests 20 | 21 | An example of a successful test run: 22 | 23 | 24 | -------------------------------------------------------------------------------- /libopencm3/tests/gadget-zero/openocd.stm32f072disco.cfg: -------------------------------------------------------------------------------- 1 | source [find interface/stlink-v2.cfg] 2 | set WORKAREASIZE 0x4000 3 | source [find target/stm32f0x.cfg] 4 | 5 | # serial of my f072 disco board. 6 | hla_serial "Q?o\x06PgHW#$\x16?" 7 | 8 | # no trace on cm0 9 | #tpiu config internal swodump.stm32f4disco.log uart off 168000000 10 | 11 | # Uncomment to reset on connect, for grabbing under WFI et al 12 | reset_config srst_only srst_nogate 13 | # reset_config srst_only srst_nogate connect_assert_srst 14 | 15 | -------------------------------------------------------------------------------- /libopencm3/tests/gadget-zero/openocd.stm32f103-generic.cfg: -------------------------------------------------------------------------------- 1 | # Unfortunately, with no f103 disco, we're currently 2 | # using a separate disco board 3 | source [find interface/stlink-v2.cfg] 4 | set WORKAREASIZE 0x2000 5 | source [find target/stm32f1x.cfg] 6 | 7 | # Serial of my l1 disco used as stlink here. 8 | hla_serial "S?l\x06H?WQ%\x10\x18?" 9 | 10 | tpiu config internal swodump.stm32f103-generic.log uart off 72000000 11 | 12 | # Uncomment to reset on connect, for grabbing under WFI et al 13 | reset_config srst_only srst_nogate 14 | # reset_config srst_only srst_nogate connect_assert_srst 15 | 16 | -------------------------------------------------------------------------------- /libopencm3/tests/gadget-zero/openocd.stm32f429i-disco.cfg: -------------------------------------------------------------------------------- 1 | source [find interface/stlink-v2.cfg] 2 | set WORKAREASIZE 0x4000 3 | source [find target/stm32f4x.cfg] 4 | 5 | # serial of "your" f429i disco board. 6 | hla_serial "xxxxxW?k\x06IgHV0H\x10?" 7 | 8 | tpiu config internal swodump.stm32f429i-disco.log uart off 168000000 9 | 10 | # Uncomment to reset on connect, for grabbing under WFI et al 11 | reset_config srst_only srst_nogate 12 | # reset_config srst_only srst_nogate connect_assert_srst 13 | 14 | -------------------------------------------------------------------------------- /libopencm3/tests/gadget-zero/openocd.stm32f4disco.cfg: -------------------------------------------------------------------------------- 1 | source [find interface/stlink-v2.cfg] 2 | set WORKAREASIZE 0x4000 3 | source [find target/stm32f4x.cfg] 4 | 5 | # serial of my f4 disco board. 6 | hla_serial "W?k\x06IgHV0H\x10?" 7 | 8 | tpiu config internal swodump.stm32f4disco.log uart off 168000000 9 | 10 | # Uncomment to reset on connect, for grabbing under WFI et al 11 | reset_config srst_only srst_nogate 12 | # reset_config srst_only srst_nogate connect_assert_srst 13 | 14 | -------------------------------------------------------------------------------- /libopencm3/tests/gadget-zero/openocd.stm32l053disco.cfg: -------------------------------------------------------------------------------- 1 | source [find interface/stlink-v2-1.cfg] 2 | set WORKAREASIZE 0x1000 3 | source [find target/stm32l0.cfg] 4 | 5 | # serial of my l053 disco board. 6 | hla_serial "0670FF484849785087085514" 7 | 8 | # no trace on cm0 9 | #tpiu config internal swodump.stm32f4disco.log uart off 168000000 10 | 11 | # Uncomment to reset on connect, for grabbing under WFI et al 12 | reset_config srst_only srst_nogate 13 | # reset_config srst_only srst_nogate connect_assert_srst 14 | 15 | -------------------------------------------------------------------------------- /libopencm3/tests/gadget-zero/openocd.stm32l1-generic.cfg: -------------------------------------------------------------------------------- 1 | # l1 generic, using a l4 disco board 2 | source [find interface/stlink-v2-1.cfg] 3 | set WORKAREASIZE 0x2000 4 | source [find target/stm32l1.cfg] 5 | 6 | hla_serial "066DFF495351885087171826" # My l4 disco 7 | 8 | # Serial of my l1 disco used as stlink here. 9 | #hla_serial "S?l\x06H?WQ%\x10\x18?" # My l1 disco 10 | 11 | tpiu config internal swodump.stm32l1-generic.log uart off 32000000 12 | 13 | # Uncomment to reset on connect, for grabbing under WFI et al 14 | reset_config srst_only srst_nogate 15 | # reset_config srst_only srst_nogate connect_assert_srst 16 | -------------------------------------------------------------------------------- /libopencm3/tests/gadget-zero/stub.py: -------------------------------------------------------------------------------- 1 | __author__ = 'karlp' 2 | 3 | def config_switch(): 4 | pass 5 | -------------------------------------------------------------------------------- /libopencm3/tests/shared/trace.h: -------------------------------------------------------------------------------- 1 | /* 2 | * File: trace.h 3 | * Author: karlp 4 | * 5 | * Created on November 21, 2013, 4:35 PM 6 | */ 7 | 8 | #ifndef TRACE_H 9 | #define TRACE_H 10 | 11 | #include 12 | 13 | #ifdef __cplusplus 14 | extern "C" { 15 | #endif 16 | 17 | void trace_send_blocking8(int stimulus_port, char c); 18 | void trace_send8(int stimulus_port, char c); 19 | 20 | void trace_send_blocking16(int stimulus_port, uint16_t val); 21 | void trace_send16(int stimulus_port, uint16_t val); 22 | 23 | void trace_send_blocking32(int stimulus_port, uint32_t val); 24 | void trace_send32(int stimulus_port, uint32_t val); 25 | 26 | 27 | #ifdef __cplusplus 28 | } 29 | #endif 30 | 31 | #endif /* TRACE_H */ 32 | 33 | -------------------------------------------------------------------------------- /libopencm3/tests/shared/trace_stdio.c: -------------------------------------------------------------------------------- 1 | /* 2 | * support for stdio output to a trace port 3 | * Karl Palsson, 2014 4 | */ 5 | 6 | #include 7 | #include 8 | #include 9 | 10 | #include "trace.h" 11 | 12 | #ifndef STIMULUS_STDIO 13 | #define STIMULUS_STDIO 0 14 | #endif 15 | 16 | int _write(int file, char *ptr, int len); 17 | int _write(int file, char *ptr, int len) 18 | { 19 | int i; 20 | 21 | if (file == STDOUT_FILENO || file == STDERR_FILENO) { 22 | for (i = 0; i < len; i++) { 23 | if (ptr[i] == '\n') { 24 | trace_send_blocking8(STIMULUS_STDIO, '\r'); 25 | } 26 | trace_send_blocking8(STIMULUS_STDIO, ptr[i]); 27 | } 28 | return i; 29 | } 30 | errno = EIO; 31 | return -1; 32 | } 33 | 34 | 35 | -------------------------------------------------------------------------------- /src/.gitignore: -------------------------------------------------------------------------------- 1 | *.hex 2 | *.map 3 | *.o 4 | *.d 5 | *.bin 6 | *.elf 7 | *.swp 8 | *.coproj 9 | *.comarker 10 | *.cogui 11 | -------------------------------------------------------------------------------- /src/Makefile: -------------------------------------------------------------------------------- 1 | ## 2 | ## This file is part of the libopencm3 project. 3 | ## 4 | ## Copyright (C) 2009 Uwe Hermann 5 | ## 6 | ## This library is free software: you can redistribute it and/or modify 7 | ## it under the terms of the GNU Lesser General Public License as published by 8 | ## the Free Software Foundation, either version 3 of the License, or 9 | ## (at your option) any later version. 10 | ## 11 | ## This library is distributed in the hope that it will be useful, 12 | ## but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | ## GNU Lesser General Public License for more details. 15 | ## 16 | ## You should have received a copy of the GNU Lesser General Public License 17 | ## along with this library. If not, see . 18 | ## 19 | ## Modified for UKHAS 2014 Badge by Jon Sowman 20 | ## 21 | 22 | BINARY = main 23 | 24 | SOURCES = $(filter-out $(BINARY).c, $(wildcard *.c)) 25 | OBJS = $(SOURCES:.c=.o) 26 | 27 | # Set this to f0 or f4 depending on which STM32 you're using. 28 | include ../common/Makefile.gd32f103.include 29 | -------------------------------------------------------------------------------- /src/systick.h: -------------------------------------------------------------------------------- 1 | /** 2 | Open firmware for Waveshare 7" capacitive touchscreen 3 | Copyright (C) 2016 Yannic Staudt / Staudt Engineering 4 | 5 | This program is free software: you can redistribute it and/or modify 6 | it under the terms of the GNU General Public License as published by 7 | the Free Software Foundation, either version 3 of the License, or 8 | (at your option) any later version. 9 | 10 | This program is distributed in the hope that it will be useful, 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | GNU General Public License for more details. 14 | 15 | You should have received a copy of the GNU General Public License 16 | along with this program. If not, see . 17 | 18 | */ 19 | 20 | #ifndef SYSTICK_H_INCLUDED 21 | #define SYSTICK_H_INCLUDED 22 | 23 | void setup_systick(void); 24 | void msleep(uint32_t delay); 25 | uint16_t get_scan_time(void); 26 | 27 | #endif --------------------------------------------------------------------------------