├── .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
--------------------------------------------------------------------------------