├── 00-Hardware
├── README.md
├── STM32F207VC.PcbDoc
├── STM32F207VC.PrjPCB
└── STM32F207VC.SchDoc
├── 01-Libraries
├── CMSIS
│ ├── CMSIS END USER LICENCE AGREEMENT.pdf
│ ├── Device
│ │ └── ST
│ │ │ └── STM32F2xx
│ │ │ ├── Include
│ │ │ ├── stm32f2xx.h
│ │ │ └── system_stm32f2xx.h
│ │ │ ├── Release_Notes.html
│ │ │ └── Source
│ │ │ └── Templates
│ │ │ ├── TASKING
│ │ │ └── cstart_thumb2.asm
│ │ │ ├── TrueSTUDIO
│ │ │ └── startup_stm32f2xx.s
│ │ │ ├── arm
│ │ │ └── startup_stm32f2xx.s
│ │ │ ├── gcc_ride7
│ │ │ └── startup_stm32f2xx.s
│ │ │ ├── iar
│ │ │ └── startup_stm32f2xx.s
│ │ │ └── system_stm32f2xx.c
│ ├── Documentation
│ │ ├── CMSIS-SVD_Schema_1_0.xsd
│ │ ├── CMSIS_CM4_SIMD.htm
│ │ ├── CMSIS_Core.htm
│ │ ├── CMSIS_DebugSupport.htm
│ │ ├── CMSIS_History.htm
│ │ ├── CMSIS_Logo_Final.jpg
│ │ └── CMSIS_System_View_Description.htm
│ ├── Include
│ │ ├── arm_common_tables.h
│ │ ├── arm_math.h
│ │ ├── core_cm0.h
│ │ ├── core_cm3.h
│ │ ├── core_cm4.h
│ │ ├── core_cm4_simd.h
│ │ ├── core_cmFunc.h
│ │ └── core_cmInstr.h
│ ├── README.txt
│ └── index.htm
├── STM32F2x7_ETH_Driver
│ ├── Release_Notes.html
│ ├── inc
│ │ └── stm32f2x7_eth.h
│ └── src
│ │ └── stm32f2x7_eth.c
├── STM32F2xx_StdPeriph_Driver
│ ├── Release_Notes.html
│ ├── inc
│ │ ├── misc.h
│ │ ├── stm32f2xx_adc.h
│ │ ├── stm32f2xx_can.h
│ │ ├── stm32f2xx_crc.h
│ │ ├── stm32f2xx_cryp.h
│ │ ├── stm32f2xx_dac.h
│ │ ├── stm32f2xx_dbgmcu.h
│ │ ├── stm32f2xx_dcmi.h
│ │ ├── stm32f2xx_dma.h
│ │ ├── stm32f2xx_exti.h
│ │ ├── stm32f2xx_flash.h
│ │ ├── stm32f2xx_fsmc.h
│ │ ├── stm32f2xx_gpio.h
│ │ ├── stm32f2xx_hash.h
│ │ ├── stm32f2xx_i2c.h
│ │ ├── stm32f2xx_iwdg.h
│ │ ├── stm32f2xx_pwr.h
│ │ ├── stm32f2xx_rcc.h
│ │ ├── stm32f2xx_rng.h
│ │ ├── stm32f2xx_rtc.h
│ │ ├── stm32f2xx_sdio.h
│ │ ├── stm32f2xx_spi.h
│ │ ├── stm32f2xx_syscfg.h
│ │ ├── stm32f2xx_tim.h
│ │ ├── stm32f2xx_usart.h
│ │ └── stm32f2xx_wwdg.h
│ └── src
│ │ ├── misc.c
│ │ ├── stm32f2xx_adc.c
│ │ ├── stm32f2xx_can.c
│ │ ├── stm32f2xx_crc.c
│ │ ├── stm32f2xx_cryp.c
│ │ ├── stm32f2xx_cryp_aes.c
│ │ ├── stm32f2xx_cryp_des.c
│ │ ├── stm32f2xx_cryp_tdes.c
│ │ ├── stm32f2xx_dac.c
│ │ ├── stm32f2xx_dbgmcu.c
│ │ ├── stm32f2xx_dcmi.c
│ │ ├── stm32f2xx_dma.c
│ │ ├── stm32f2xx_exti.c
│ │ ├── stm32f2xx_flash.c
│ │ ├── stm32f2xx_fsmc.c
│ │ ├── stm32f2xx_gpio.c
│ │ ├── stm32f2xx_hash.c
│ │ ├── stm32f2xx_hash_md5.c
│ │ ├── stm32f2xx_hash_sha1.c
│ │ ├── stm32f2xx_i2c.c
│ │ ├── stm32f2xx_iwdg.c
│ │ ├── stm32f2xx_pwr.c
│ │ ├── stm32f2xx_rcc.c
│ │ ├── stm32f2xx_rng.c
│ │ ├── stm32f2xx_rtc.c
│ │ ├── stm32f2xx_sdio.c
│ │ ├── stm32f2xx_spi.c
│ │ ├── stm32f2xx_syscfg.c
│ │ ├── stm32f2xx_tim.c
│ │ ├── stm32f2xx_usart.c
│ │ └── stm32f2xx_wwdg.c
├── STM32_USB_Device_Library
│ ├── Class
│ │ ├── audio
│ │ │ ├── inc
│ │ │ │ ├── usbd_audio_core.h
│ │ │ │ └── usbd_audio_out_if.h
│ │ │ └── src
│ │ │ │ ├── usbd_audio_core.c
│ │ │ │ └── usbd_audio_out_if.c
│ │ ├── cdc
│ │ │ ├── inc
│ │ │ │ ├── usbd_cdc_core.h
│ │ │ │ ├── usbd_cdc_core_loopback.h
│ │ │ │ └── usbd_cdc_if_template.h
│ │ │ └── src
│ │ │ │ ├── usbd_cdc_core.c
│ │ │ │ ├── usbd_cdc_core_loopback.c
│ │ │ │ └── usbd_cdc_if_template.c
│ │ ├── customhid
│ │ │ ├── inc
│ │ │ │ └── usbd_customhid_core.h
│ │ │ └── src
│ │ │ │ └── usbd_customhid_core.c
│ │ ├── dfu
│ │ │ ├── inc
│ │ │ │ ├── usbd_dfu_core.h
│ │ │ │ ├── usbd_dfu_mal.h
│ │ │ │ ├── usbd_flash_if.h
│ │ │ │ ├── usbd_mem_if_template.h
│ │ │ │ └── usbd_otp_if.h
│ │ │ └── src
│ │ │ │ ├── usbd_dfu_core.c
│ │ │ │ ├── usbd_dfu_mal.c
│ │ │ │ ├── usbd_flash_if.c
│ │ │ │ ├── usbd_mem_if_template.c
│ │ │ │ └── usbd_otp_if.c
│ │ ├── hid
│ │ │ ├── inc
│ │ │ │ └── usbd_hid_core.h
│ │ │ └── src
│ │ │ │ └── usbd_hid_core.c
│ │ ├── hid_cdc_wrapper
│ │ │ ├── inc
│ │ │ │ └── usbd_hid_cdc_wrapper.h
│ │ │ └── src
│ │ │ │ └── usbd_hid_cdc_wrapper.c
│ │ ├── hid_msc_wrapper
│ │ │ ├── inc
│ │ │ │ └── usbd_msc_hid_core.h
│ │ │ └── src
│ │ │ │ └── usbd_msc_hid_core.c
│ │ └── msc
│ │ │ ├── inc
│ │ │ ├── usbd_msc_bot.h
│ │ │ ├── usbd_msc_core.h
│ │ │ ├── usbd_msc_data.h
│ │ │ ├── usbd_msc_mem.h
│ │ │ └── usbd_msc_scsi.h
│ │ │ └── src
│ │ │ ├── usbd_msc_bot.c
│ │ │ ├── usbd_msc_core.c
│ │ │ ├── usbd_msc_data.c
│ │ │ ├── usbd_msc_scsi.c
│ │ │ └── usbd_storage_template.c
│ ├── Core
│ │ ├── inc
│ │ │ ├── usbd_conf_template.h
│ │ │ ├── usbd_core.h
│ │ │ ├── usbd_def.h
│ │ │ ├── usbd_ioreq.h
│ │ │ ├── usbd_req.h
│ │ │ └── usbd_usr.h
│ │ └── src
│ │ │ ├── usbd_core.c
│ │ │ ├── usbd_ioreq.c
│ │ │ └── usbd_req.c
│ └── Release_Notes.html
├── STM32_USB_HOST_Library
│ ├── Class
│ │ ├── CDC
│ │ │ ├── inc
│ │ │ │ ├── usbh_cdc_core.h
│ │ │ │ └── usbh_cdc_funct.h
│ │ │ └── src
│ │ │ │ ├── usbh_cdc_core.c
│ │ │ │ └── usbh_cdc_funct.c
│ │ ├── HID
│ │ │ ├── inc
│ │ │ │ ├── usbh_hid_core.h
│ │ │ │ ├── usbh_hid_keybd.h
│ │ │ │ └── usbh_hid_mouse.h
│ │ │ └── src
│ │ │ │ ├── usbh_hid_core.c
│ │ │ │ ├── usbh_hid_keybd.c
│ │ │ │ └── usbh_hid_mouse.c
│ │ └── MSC
│ │ │ ├── inc
│ │ │ ├── usbh_msc_bot.h
│ │ │ ├── usbh_msc_core.h
│ │ │ └── usbh_msc_scsi.h
│ │ │ └── src
│ │ │ ├── usbh_msc_bot.c
│ │ │ ├── usbh_msc_core.c
│ │ │ ├── usbh_msc_fatfs.c
│ │ │ └── usbh_msc_scsi.c
│ ├── Core
│ │ ├── inc
│ │ │ ├── usbh_conf_template.h
│ │ │ ├── usbh_core.h
│ │ │ ├── usbh_def.h
│ │ │ ├── usbh_hcs.h
│ │ │ ├── usbh_ioreq.h
│ │ │ └── usbh_stdreq.h
│ │ └── src
│ │ │ ├── usbh_core.c
│ │ │ ├── usbh_hcs.c
│ │ │ ├── usbh_ioreq.c
│ │ │ └── usbh_stdreq.c
│ └── Release_Notes.html
└── STM32_USB_OTG_Driver
│ ├── Release_Notes.html
│ ├── inc
│ ├── usb_bsp.h
│ ├── usb_conf_template.h
│ ├── usb_core.h
│ ├── usb_dcd.h
│ ├── usb_dcd_int.h
│ ├── usb_defines.h
│ ├── usb_hcd.h
│ ├── usb_hcd_int.h
│ ├── usb_otg.h
│ └── usb_regs.h
│ └── src
│ ├── usb_bsp_template.c
│ ├── usb_core.c
│ ├── usb_dcd.c
│ ├── usb_dcd_int.c
│ ├── usb_hcd.c
│ ├── usb_hcd_int.c
│ └── usb_otg.c
├── 02-Template
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 03-ASM
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 04-Delay
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 05-LCD
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 06-GPIO-Input-Output
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 07-GPIO-JTAG
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 08-GPIO-bit-band
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 09-EXTI
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 10-CRC&RNG
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 11-SPI
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── Ex_Flash.c
├── Ex_Flash.h
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 12-SPI-Simulation
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── Ex_Flash.c
├── Ex_Flash.h
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 13-IIC
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── i2c_io.c
├── i2c_io.h
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 14-Flash-Program
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 15-Flash-Write-Protection
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 16-Flash-Read-Protection
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 17-DMA-M-To-M
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 18-IWDG
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 19-WWDG
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 20-Timer-Base
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 21-Timer-PWMOUT
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 22-Timer-InputCapture
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 23-Timer-MultiTimer
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── MultiTimer
│ ├── MultiTimer.c
│ └── MultiTimer.h
├── README.md
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 23-Timer-Touchpad
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 24-ADC
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 25-DAC
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 26-SDIO
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── main.c
├── main.h
├── stm32f2x_sdio_sd.c
├── stm32f2x_sdio_sd.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 27-USART-Interrupt
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 28-USART-Printf
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── LCD_disp.c
├── LCD_disp.h
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 29-IDE-Printf
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 30-ETH
├── Project
│ ├── EWARM
│ │ ├── Project.ewd
│ │ ├── Project.ewp
│ │ ├── Project.eww
│ │ ├── startup_stm32f2xx.s
│ │ └── stm32f2xx_flash.icf
│ ├── MDK-ARM
│ │ ├── Project.uvopt
│ │ ├── Project.uvproj
│ │ └── startup_stm32f2xx.s
│ ├── inc
│ │ ├── app
│ │ │ ├── LCD_disp.h
│ │ │ ├── hard_bsp.h
│ │ │ └── main.h
│ │ ├── lwip
│ │ │ ├── arch
│ │ │ │ ├── bpstruct.h
│ │ │ │ ├── cc.h
│ │ │ │ ├── cpu.h
│ │ │ │ ├── epstruct.h
│ │ │ │ ├── perf.h
│ │ │ │ ├── sys_arch.c
│ │ │ │ └── sys_arch.h
│ │ │ ├── ethernetif.h
│ │ │ ├── lwip_app.h
│ │ │ ├── lwipopts.h
│ │ │ ├── stm32f2x7_eth_bsp.h
│ │ │ └── stm32f2x7_eth_conf.h
│ │ ├── stm32f2x7_eth_conf.h
│ │ ├── stm32f2xx_conf.h
│ │ └── stm32f2xx_it.h
│ └── src
│ │ ├── app
│ │ ├── LCD_disp.c
│ │ ├── hard_bsp.c
│ │ └── main.c
│ │ ├── lwip
│ │ ├── ethernetif.c
│ │ ├── lwip_app.c
│ │ └── stm32f2x7_eth_bsp.c
│ │ └── stm32f2xx_it.c
└── Third_Party
│ └── lwip-1.4.1
│ ├── CHANGELOG
│ ├── COPYING
│ ├── FILES
│ ├── README
│ ├── UPGRADING
│ ├── doc
│ ├── FILES
│ ├── contrib.txt
│ ├── rawapi.txt
│ ├── savannah.txt
│ ├── snmp_agent.txt
│ └── sys_arch.txt
│ ├── src
│ ├── FILES
│ ├── api
│ │ ├── api_lib.c
│ │ ├── api_msg.c
│ │ ├── err.c
│ │ ├── netbuf.c
│ │ ├── netdb.c
│ │ ├── netifapi.c
│ │ ├── sockets.c
│ │ └── tcpip.c
│ ├── core
│ │ ├── def.c
│ │ ├── dhcp.c
│ │ ├── dns.c
│ │ ├── init.c
│ │ ├── ipv4
│ │ │ ├── autoip.c
│ │ │ ├── icmp.c
│ │ │ ├── igmp.c
│ │ │ ├── inet.c
│ │ │ ├── inet_chksum.c
│ │ │ ├── ip.c
│ │ │ ├── ip_addr.c
│ │ │ └── ip_frag.c
│ │ ├── ipv6
│ │ │ ├── README
│ │ │ ├── icmp6.c
│ │ │ ├── inet6.c
│ │ │ ├── ip6.c
│ │ │ └── ip6_addr.c
│ │ ├── mem.c
│ │ ├── memp.c
│ │ ├── netif.c
│ │ ├── pbuf.c
│ │ ├── raw.c
│ │ ├── snmp
│ │ │ ├── asn1_dec.c
│ │ │ ├── asn1_enc.c
│ │ │ ├── mib2.c
│ │ │ ├── mib_structs.c
│ │ │ ├── msg_in.c
│ │ │ └── msg_out.c
│ │ ├── stats.c
│ │ ├── sys.c
│ │ ├── tcp.c
│ │ ├── tcp_in.c
│ │ ├── tcp_out.c
│ │ ├── timers.c
│ │ └── udp.c
│ ├── include
│ │ ├── ipv4
│ │ │ └── lwip
│ │ │ │ ├── autoip.h
│ │ │ │ ├── icmp.h
│ │ │ │ ├── igmp.h
│ │ │ │ ├── inet.h
│ │ │ │ ├── inet_chksum.h
│ │ │ │ ├── ip.h
│ │ │ │ ├── ip_addr.h
│ │ │ │ └── ip_frag.h
│ │ ├── ipv6
│ │ │ └── lwip
│ │ │ │ ├── icmp.h
│ │ │ │ ├── inet.h
│ │ │ │ ├── ip.h
│ │ │ │ └── ip_addr.h
│ │ ├── lwip
│ │ │ ├── api.h
│ │ │ ├── api_msg.h
│ │ │ ├── arch.h
│ │ │ ├── debug.h
│ │ │ ├── def.h
│ │ │ ├── dhcp.h
│ │ │ ├── dns.h
│ │ │ ├── err.h
│ │ │ ├── init.h
│ │ │ ├── mem.h
│ │ │ ├── memp.h
│ │ │ ├── memp_std.h
│ │ │ ├── netbuf.h
│ │ │ ├── netdb.h
│ │ │ ├── netif.h
│ │ │ ├── netifapi.h
│ │ │ ├── opt.h
│ │ │ ├── pbuf.h
│ │ │ ├── raw.h
│ │ │ ├── sio.h
│ │ │ ├── snmp.h
│ │ │ ├── snmp_asn1.h
│ │ │ ├── snmp_msg.h
│ │ │ ├── snmp_structs.h
│ │ │ ├── sockets.h
│ │ │ ├── stats.h
│ │ │ ├── sys.h
│ │ │ ├── tcp.h
│ │ │ ├── tcp_impl.h
│ │ │ ├── tcpip.h
│ │ │ ├── timers.h
│ │ │ └── udp.h
│ │ ├── netif
│ │ │ ├── etharp.h
│ │ │ ├── ppp_oe.h
│ │ │ └── slipif.h
│ │ └── posix
│ │ │ ├── netdb.h
│ │ │ └── sys
│ │ │ └── socket.h
│ └── netif
│ │ ├── FILES
│ │ ├── etharp.c
│ │ ├── ethernetif.c
│ │ ├── ppp
│ │ ├── auth.c
│ │ ├── auth.h
│ │ ├── chap.c
│ │ ├── chap.h
│ │ ├── chpms.c
│ │ ├── chpms.h
│ │ ├── fsm.c
│ │ ├── fsm.h
│ │ ├── ipcp.c
│ │ ├── ipcp.h
│ │ ├── lcp.c
│ │ ├── lcp.h
│ │ ├── magic.c
│ │ ├── magic.h
│ │ ├── md5.c
│ │ ├── md5.h
│ │ ├── pap.c
│ │ ├── pap.h
│ │ ├── ppp.c
│ │ ├── ppp.h
│ │ ├── ppp_impl.h
│ │ ├── ppp_oe.c
│ │ ├── pppdebug.h
│ │ ├── randm.c
│ │ ├── randm.h
│ │ ├── vj.c
│ │ └── vj.h
│ │ └── slipif.c
│ └── test
│ └── unit
│ ├── core
│ ├── test_mem.c
│ └── test_mem.h
│ ├── etharp
│ ├── test_etharp.c
│ └── test_etharp.h
│ ├── lwip_check.h
│ ├── lwip_unittests.c
│ ├── lwipopts.h
│ ├── tcp
│ ├── tcp_helper.c
│ ├── tcp_helper.h
│ ├── test_tcp.c
│ ├── test_tcp.h
│ ├── test_tcp_oos.c
│ └── test_tcp_oos.h
│ └── udp
│ ├── test_udp.c
│ └── test_udp.h
├── 31-USB-Host-MSC
├── Project
│ ├── EWARM
│ │ ├── Project.ewd
│ │ ├── Project.ewp
│ │ ├── Project.eww
│ │ ├── stm32f2xx_flash.icf
│ │ ├── stm32f2xx_flash_extsram.icf
│ │ └── stm32f2xx_sram.icf
│ ├── Ex_Flash.c
│ ├── Ex_Flash.h
│ ├── LCD_disp.c
│ ├── LCD_disp.h
│ ├── MDK-ARM
│ │ ├── Project.uvopt
│ │ └── Project.uvproj
│ ├── USBAPP
│ │ ├── usb_bsp.c
│ │ ├── usb_conf.h
│ │ ├── usbh_conf.h
│ │ ├── usbh_usr.c
│ │ └── usbh_usr.h
│ ├── main.c
│ ├── main.h
│ ├── stm32f2x_sdio_sd.c
│ ├── stm32f2x_sdio_sd.h
│ ├── stm32f2xx_conf.h
│ ├── stm32f2xx_it.c
│ └── stm32f2xx_it.h
└── Third_Party
│ └── fatfs
│ ├── 00history.txt
│ ├── 00readme.txt
│ ├── diskio.c
│ ├── diskio.h
│ ├── ff.c
│ ├── ff.h
│ ├── ffconf.h
│ ├── integer.h
│ └── option
│ ├── cc932.c
│ ├── cc936.c
│ ├── cc949.c
│ ├── cc950.c
│ ├── ccsbcs.c
│ ├── syscall.c
│ └── unicode.c
├── 32-USB-Slave-MSC
└── Project
│ ├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ ├── stm32f2xx_flash.icf
│ ├── stm32f2xx_flash_extsram.icf
│ └── stm32f2xx_sram.icf
│ ├── Ex_Flash.c
│ ├── Ex_Flash.h
│ ├── LCD_disp.c
│ ├── LCD_disp.h
│ ├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
│ ├── USBAPP
│ ├── usb_bsp.c
│ ├── usb_conf.h
│ ├── usbd_conf.h
│ ├── usbd_desc.c
│ ├── usbd_desc.h
│ ├── usbd_storage_msd.c
│ └── usbd_usr.c
│ ├── main.c
│ ├── main.h
│ ├── stm32f2x_sdio_sd.c
│ ├── stm32f2x_sdio_sd.h
│ ├── stm32f2xx_conf.h
│ ├── stm32f2xx_it.c
│ ├── stm32f2xx_it.h
│ ├── systick.c
│ └── systick.h
├── 33-USART-DMA-Receive
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 34-USART-Receive-DMAInterrupt
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 35-USART-DMA-Receive-Interrupt
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 36-USART-DMA-Receive-Send
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 37-USART-Ringbuff
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 38-MPU6050
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── MPU6050
│ ├── eMPL
│ │ ├── dmpKey.h
│ │ ├── dmpmap.h
│ │ ├── inv_mpu.c
│ │ ├── inv_mpu.h
│ │ ├── inv_mpu_dmp_motion_driver.c
│ │ └── inv_mpu_dmp_motion_driver.h
│ ├── mpu6050.c
│ └── mpu6050.h
├── README.md
├── i2c_io.c
├── i2c_io.h
├── main.c
├── main.h
├── report_data.c
├── report_data.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
├── stm32f2xx_it.h
├── sys_delay.c
└── sys_delay.h
├── 39-Measure-Time
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 40-DWT
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 41-SoftwareTask
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── main.c
├── main.h
├── software_task.c
├── software_task.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
├── 42-cmd-parser
├── EWARM
│ ├── Project.ewd
│ ├── Project.ewp
│ ├── Project.eww
│ └── stm32f2xx_flash.icf
├── MDK-ARM
│ ├── Project.uvopt
│ └── Project.uvproj
├── README.md
├── cmd-parser
│ ├── .gitignore
│ ├── LICENSE
│ ├── README.md
│ ├── cmd.c
│ ├── cmd.h
│ └── test.c
├── main.c
├── main.h
├── stm32f2xx_conf.h
├── stm32f2xx_it.c
└── stm32f2xx_it.h
└── README.md
/00-Hardware/README.md:
--------------------------------------------------------------------------------
1 | # Hardware
2 | **兼容ST207和GD207**
3 |
4 | | 引脚编号 | STM32F207 | GD32F207 | 兼容设计 |
5 | | :---------- | --------- |--------- |--------- |
6 | | 19 |接上VDD电源,再接电容接地 |接地|通过0欧姆电阻选择不同电路|
7 | | 20 |接地 |VREF-,可以接地|直接接地|
8 | | 49 |接电容接地 |接地|PCB设计电容接地,ST贴电容,GD贴0欧姆电阻|
9 | | 73 |接电容接地 |悬空|PCB设计电容接地,ST贴电容,GD不贴|
10 | | 99 | 悬空 |接电容接地|PCB设计电容接地,ST不贴,GD贴电容|
11 |
12 | **板载资源**:
13 |
14 | - USB串口
15 | - 网口(RTL8201)
16 | - 两颗LED
17 | - RTC
18 | - NorFlash
19 | - 电源(5V转3.3V)
20 | - TF卡
21 | - 触摸按键
22 | - 4个独立按键
23 | - 8位并口LCD
24 | - USB
25 | - ESP8266的WIFI模块
26 | - ESP8266的USB下载口
27 |
28 | **设计缺陷**
29 |
30 | - 四个角忘记放置定位孔
31 | - BOOT0和BOOT1的丝印错写为GND
32 | - 没有纽扣电池供电给RTC
33 | - 很水的原理图和layout
34 |
35 | **重要说明**
36 |
37 | 使用的LCD的型号是深圳市拓普微科技开发有限公司的LMT028DNHFWL,分辨率320*240,使用565模式显示一整屏幕图片需要150KB的内存。
38 |
39 |
40 |
41 | STM32F207VC只有96KB的SRAM,只能用于显示一些文字,图形等。当然也可以使用曲线救国方式显示一张图片。
42 |
43 |
44 |
45 | GD32F207VG有256KB的SRAM,有足够的内存显示一张图片。
46 |
47 |
48 |
49 | > 上述设计只用于学习参考使用,在普通室温环境下使用没问题,对于参考电路造成商业产品或工业产品故障,本人不负责
--------------------------------------------------------------------------------
/00-Hardware/STM32F207VC.PcbDoc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/00-Hardware/STM32F207VC.PcbDoc
--------------------------------------------------------------------------------
/00-Hardware/STM32F207VC.SchDoc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/00-Hardware/STM32F207VC.SchDoc
--------------------------------------------------------------------------------
/01-Libraries/CMSIS/CMSIS END USER LICENCE AGREEMENT.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/01-Libraries/CMSIS/CMSIS END USER LICENCE AGREEMENT.pdf
--------------------------------------------------------------------------------
/01-Libraries/CMSIS/Device/ST/STM32F2xx/Include/stm32f2xx.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/01-Libraries/CMSIS/Device/ST/STM32F2xx/Include/stm32f2xx.h
--------------------------------------------------------------------------------
/01-Libraries/CMSIS/Documentation/CMSIS_CM4_SIMD.htm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/01-Libraries/CMSIS/Documentation/CMSIS_CM4_SIMD.htm
--------------------------------------------------------------------------------
/01-Libraries/CMSIS/Documentation/CMSIS_Core.htm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/01-Libraries/CMSIS/Documentation/CMSIS_Core.htm
--------------------------------------------------------------------------------
/01-Libraries/CMSIS/Documentation/CMSIS_DebugSupport.htm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/01-Libraries/CMSIS/Documentation/CMSIS_DebugSupport.htm
--------------------------------------------------------------------------------
/01-Libraries/CMSIS/Documentation/CMSIS_History.htm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/01-Libraries/CMSIS/Documentation/CMSIS_History.htm
--------------------------------------------------------------------------------
/01-Libraries/CMSIS/Documentation/CMSIS_Logo_Final.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/01-Libraries/CMSIS/Documentation/CMSIS_Logo_Final.jpg
--------------------------------------------------------------------------------
/01-Libraries/CMSIS/Documentation/CMSIS_System_View_Description.htm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/01-Libraries/CMSIS/Documentation/CMSIS_System_View_Description.htm
--------------------------------------------------------------------------------
/01-Libraries/CMSIS/Include/arm_common_tables.h:
--------------------------------------------------------------------------------
1 | /* ----------------------------------------------------------------------
2 | * Copyright (C) 2010 ARM Limited. All rights reserved.
3 | *
4 | * $Date: 11. November 2010
5 | * $Revision: V1.0.2
6 | *
7 | * Project: CMSIS DSP Library
8 | * Title: arm_common_tables.h
9 | *
10 | * Description: This file has extern declaration for common tables like Bitreverse, reciprocal etc which are used across different functions
11 | *
12 | * Target Processor: Cortex-M4/Cortex-M3
13 | *
14 | * Version 1.0.2 2010/11/11
15 | * Documentation updated.
16 | *
17 | * Version 1.0.1 2010/10/05
18 | * Production release and review comments incorporated.
19 | *
20 | * Version 1.0.0 2010/09/20
21 | * Production release and review comments incorporated.
22 | * -------------------------------------------------------------------- */
23 |
24 | #ifndef _ARM_COMMON_TABLES_H
25 | #define _ARM_COMMON_TABLES_H
26 |
27 | #include "arm_math.h"
28 |
29 | extern uint16_t armBitRevTable[256];
30 | extern q15_t armRecipTableQ15[64];
31 | extern q31_t armRecipTableQ31[64];
32 | extern const q31_t realCoefAQ31[1024];
33 | extern const q31_t realCoefBQ31[1024];
34 |
35 | #endif /* ARM_COMMON_TABLES_H */
36 |
--------------------------------------------------------------------------------
/01-Libraries/CMSIS/README.txt:
--------------------------------------------------------------------------------
1 | * -------------------------------------------------------------------
2 | * Copyright (C) 2011 ARM Limited. All rights reserved.
3 | *
4 | * Date: 25 July 2011
5 | * Revision: V2.10
6 | *
7 | * Project: Cortex Microcontroller Software Interface Standard (CMSIS)
8 | * Title: Release Note for CMSIS
9 | *
10 | * -------------------------------------------------------------------
11 |
12 |
13 | NOTE - Open the index.html file to access CMSIS documentation
14 |
15 |
16 | The Cortex Microcontroller Software Interface Standard (CMSIS) provides a single standard across all
17 | Cortex-Mx processor series vendors. It enables code re-use and code sharing across software projects
18 | and reduces time-to-market for new embedded applications.
19 |
20 | CMSIS is released under the terms of the end user license agreement ("CMSIS END USER LICENCE AGREEMENT.pdf").
21 | Any user of the software package is bound to the terms and conditions of the end user license agreement.
22 |
23 |
24 | You will find the following sub-directories:
25 |
26 | Documentation - Contains CMSIS documentation.
27 |
28 | DSP_Lib - MDK project files, Examples and source files etc.. to build the
29 | CMSIS DSP Software Library for Cortex-M0, Cortex-M3, Cortex-M4 processors.
30 |
31 | Include - CMSIS Core Support and CMSIS DSP Include Files.
32 |
33 | Lib - CMSIS DSP Binaries
34 | ---
--------------------------------------------------------------------------------
/01-Libraries/CMSIS/index.htm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/01-Libraries/CMSIS/index.htm
--------------------------------------------------------------------------------
/01-Libraries/STM32F2x7_ETH_Driver/inc/stm32f2x7_eth.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/01-Libraries/STM32F2x7_ETH_Driver/inc/stm32f2x7_eth.h
--------------------------------------------------------------------------------
/01-Libraries/STM32F2x7_ETH_Driver/src/stm32f2x7_eth.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/01-Libraries/STM32F2x7_ETH_Driver/src/stm32f2x7_eth.c
--------------------------------------------------------------------------------
/01-Libraries/STM32_USB_Device_Library/Class/cdc/inc/usbd_cdc_if_template.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file usbd_cdc_if_template.h
4 | * @author MCD Application Team
5 | * @version V1.2.1
6 | * @date 17-March-2018
7 | * @brief Header for dfu_mal.c file.
8 | ******************************************************************************
9 | * @attention
10 | *
11 | *
© Copyright (c) 2015 STMicroelectronics.
12 | * All rights reserved.
13 | *
14 | * This software component is licensed by ST under Ultimate Liberty license
15 | * SLA0044, the "License"; You may not use this file except in compliance with
16 | * the License. You may obtain a copy of the License at:
17 | *
18 | *
19 | ******************************************************************************
20 | */
21 |
22 | /* Define to prevent recursive inclusion -------------------------------------*/
23 | #ifndef __USBD_CDC_IF_TEMPLATE_H
24 | #define __USBD_CDC_IF_TEMPLATE_H
25 |
26 | /* Includes ------------------------------------------------------------------*/
27 | #include "usb_conf.h"
28 | #include "usbd_conf.h"
29 | #include "usbd_cdc_core.h"
30 |
31 | /* Exported types ------------------------------------------------------------*/
32 | /* Exported constants --------------------------------------------------------*/
33 |
34 | extern CDC_IF_Prop_TypeDef TEMPLATE_fops;
35 |
36 | /* Exported macro ------------------------------------------------------------*/
37 | /* Exported functions ------------------------------------------------------- */
38 | #endif /* __USBD_CDC_IF_TEMPLATE_H */
39 |
40 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
41 |
--------------------------------------------------------------------------------
/01-Libraries/STM32_USB_Device_Library/Class/dfu/inc/usbd_otp_if.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file usbd_otp_if.h
4 | * @author MCD Application Team
5 | * @version V1.2.1
6 | * @date 17-March-2018
7 | * @brief Header for usbd_otp_if.c file.
8 | ******************************************************************************
9 | * @attention
10 | *
11 | * © Copyright (c) 2015 STMicroelectronics.
12 | * All rights reserved.
13 | *
14 | * This software component is licensed by ST under Ultimate Liberty license
15 | * SLA0044, the "License"; You may not use this file except in compliance with
16 | * the License. You may obtain a copy of the License at:
17 | *
18 | *
19 | ******************************************************************************
20 | */
21 |
22 | /* Define to prevent recursive inclusion -------------------------------------*/
23 | #ifndef __OTP_IF_MAL_H
24 | #define __OTP_IF_MAL_H
25 |
26 | /* Includes ------------------------------------------------------------------*/
27 | #include "usbd_dfu_mal.h"
28 |
29 | /* Exported types ------------------------------------------------------------*/
30 | /* Exported constants --------------------------------------------------------*/
31 | #define OTP_START_ADD 0x1FFF7800
32 | #define OTP_END_ADD (uint32_t)(OTP_START_ADD + 528)
33 |
34 | #define OTP_IF_STRING (uint8_t*)"@OTP Area /0x1FFF7800/01*512 g,01*016 g"
35 |
36 | extern DFU_MAL_Prop_TypeDef DFU_Otp_cb;
37 |
38 | /* Exported macro ------------------------------------------------------------*/
39 | /* Exported functions ------------------------------------------------------- */
40 |
41 | #endif /* __OTP_IF_MAL_H */
42 |
43 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
44 |
--------------------------------------------------------------------------------
/01-Libraries/STM32_USB_Device_Library/Class/msc/inc/usbd_msc_core.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file usbd_msc_core.h
4 | * @author MCD Application Team
5 | * @version V1.2.1
6 | * @date 17-March-2018
7 | * @brief header for the usbd_msc_core.c file
8 | ******************************************************************************
9 | * @attention
10 | *
11 | * © Copyright (c) 2015 STMicroelectronics.
12 | * All rights reserved.
13 | *
14 | * This software component is licensed by ST under Ultimate Liberty license
15 | * SLA0044, the "License"; You may not use this file except in compliance with
16 | * the License. You may obtain a copy of the License at:
17 | *
18 | *
19 | ******************************************************************************
20 | */
21 |
22 | /* Define to prevent recursive inclusion -------------------------------------*/
23 | #ifndef _USB_MSC_CORE_H_
24 | #define _USB_MSC_CORE_H_
25 |
26 | #include "usbd_ioreq.h"
27 |
28 | /** @addtogroup USBD_MSC_BOT
29 | * @{
30 | */
31 |
32 | /** @defgroup USBD_MSC
33 | * @brief This file is the Header file for USBD_msc.c
34 | * @{
35 | */
36 |
37 |
38 | /** @defgroup USBD_BOT_Exported_Defines
39 | * @{
40 | */
41 |
42 |
43 | #define BOT_GET_MAX_LUN 0xFE
44 | #define BOT_RESET 0xFF
45 | #define USB_MSC_CONFIG_DESC_SIZ 32
46 |
47 | #define MSC_EPIN_SIZE MSC_MAX_PACKET
48 | #define MSC_EPOUT_SIZE MSC_MAX_PACKET
49 |
50 | /**
51 | * @}
52 | */
53 |
54 | /** @defgroup USB_CORE_Exported_Types
55 | * @{
56 | */
57 |
58 | extern USBD_Class_cb_TypeDef USBD_MSC_cb;
59 | /**
60 | * @}
61 | */
62 |
63 | /**
64 | * @}
65 | */
66 | #endif /* _USB_MSC_CORE_H_ */
67 | /**
68 | * @}
69 | */
70 |
71 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
72 |
--------------------------------------------------------------------------------
/01-Libraries/STM32_USB_HOST_Library/Release_Notes.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/01-Libraries/STM32_USB_HOST_Library/Release_Notes.html
--------------------------------------------------------------------------------
/02-Template/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/02-Template/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/02-Template/README.md:
--------------------------------------------------------------------------------
1 | # Template
2 | 通过SysTick实现LED灯闪烁
3 |
4 |
5 |
6 | IAR版本:iar for arm 7.2.2
7 |
8 | Keil版本:Keil 5 V5.25
9 |
10 |
11 |
12 | **备注:**
13 |
14 | 为解决在IAR编译环境下类似Label 'Reset_Handler' is defined pubweak in a section implicitly declared root一系列错误,对每个向量表做以下修改
15 | ```
16 | Reset_Handler
17 | LDR R0, =SystemInit
18 | BLX R0
19 | LDR R0, =__iar_program_start
20 | BX R0
21 | PUBWEAK NMI_Handler
22 | SECTION .text:CODE:REORDER(1)
23 | ```
24 | 修改为
25 | ```
26 | Reset_Handler
27 | LDR R0, =SystemInit
28 | BLX R0
29 | LDR R0, =__iar_program_start
30 | BX R0
31 | PUBWEAK NMI_Handler
32 | SECTION .text:CODE:REORDER:NOROOT(1)
33 | ```
--------------------------------------------------------------------------------
/02-Template/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/02-Template/main.c
--------------------------------------------------------------------------------
/03-ASM/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/03-ASM/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/03-ASM/README.md:
--------------------------------------------------------------------------------
1 | # ASM
2 |
3 | 在STM32F207平台下使用的汇编代码
4 |
5 | - 使用汇编实现延时代码,优点:不会被编译器优化,时间相对准确
6 |
7 |
--------------------------------------------------------------------------------
/03-ASM/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/03-ASM/main.c
--------------------------------------------------------------------------------
/03-ASM/main.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file Project/STM32F2xx_StdPeriph_Template/main.h
4 | * @author MCD Application Team
5 | * @version V1.1.0
6 | * @date 13-April-2012
7 | * @brief Header for main.c module
8 | ******************************************************************************
9 | * @attention
10 | *
11 | * © COPYRIGHT 2012 STMicroelectronics
12 | *
13 | * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
14 | * You may not use this file except in compliance with the License.
15 | * You may obtain a copy of the License at:
16 | *
17 | * http://www.st.com/software_license_agreement_liberty_v2
18 | *
19 | * Unless required by applicable law or agreed to in writing, software
20 | * distributed under the License is distributed on an "AS IS" BASIS,
21 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22 | * See the License for the specific language governing permissions and
23 | * limitations under the License.
24 | *
25 | ******************************************************************************
26 | */
27 |
28 | /* Define to prevent recursive inclusion -------------------------------------*/
29 | #ifndef __MAIN_H
30 | #define __MAIN_H
31 |
32 | /* Includes ------------------------------------------------------------------*/
33 | #include "stm32f2xx.h"
34 | #include
35 |
36 | /* Exported types ------------------------------------------------------------*/
37 | /* Exported constants --------------------------------------------------------*/
38 | /* Exported macro ------------------------------------------------------------*/
39 | /* Exported functions ------------------------------------------------------- */
40 | void TimingDelay_Decrement(void);
41 | void Delay(__IO uint32_t nTime);
42 |
43 | #endif /* __MAIN_H */
44 |
45 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
46 |
--------------------------------------------------------------------------------
/04-Delay/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/04-Delay/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/04-Delay/README.md:
--------------------------------------------------------------------------------
1 | # Delay
2 | 通过SysTick实现LED灯闪烁
3 |
4 | 没有中断的情况下
5 |
--------------------------------------------------------------------------------
/04-Delay/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/04-Delay/main.c
--------------------------------------------------------------------------------
/04-Delay/main.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file Project/STM32F2xx_StdPeriph_Template/main.h
4 | * @author MCD Application Team
5 | * @version V1.1.0
6 | * @date 13-April-2012
7 | * @brief Header for main.c module
8 | ******************************************************************************
9 | * @attention
10 | *
11 | * © COPYRIGHT 2012 STMicroelectronics
12 | *
13 | * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
14 | * You may not use this file except in compliance with the License.
15 | * You may obtain a copy of the License at:
16 | *
17 | * http://www.st.com/software_license_agreement_liberty_v2
18 | *
19 | * Unless required by applicable law or agreed to in writing, software
20 | * distributed under the License is distributed on an "AS IS" BASIS,
21 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22 | * See the License for the specific language governing permissions and
23 | * limitations under the License.
24 | *
25 | ******************************************************************************
26 | */
27 |
28 | /* Define to prevent recursive inclusion -------------------------------------*/
29 | #ifndef __MAIN_H
30 | #define __MAIN_H
31 |
32 | /* Includes ------------------------------------------------------------------*/
33 | #include "stm32f2xx.h"
34 | #include
35 |
36 | /* Exported types ------------------------------------------------------------*/
37 | /* Exported constants --------------------------------------------------------*/
38 | /* Exported macro ------------------------------------------------------------*/
39 | /* Exported functions ------------------------------------------------------- */
40 |
41 |
42 | #endif /* __MAIN_H */
43 |
44 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
45 |
--------------------------------------------------------------------------------
/05-LCD/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/05-LCD/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/05-LCD/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/05-LCD/LCD_disp.c
--------------------------------------------------------------------------------
/05-LCD/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/05-LCD/LCD_disp.h
--------------------------------------------------------------------------------
/05-LCD/README.md:
--------------------------------------------------------------------------------
1 | # STM32F207VC-LCD
2 |
3 | 驱动LCD,显示红色的字母和数字,字体大小:宽8高16
4 |
5 | LCD的型号是深圳市拓普微科技开发有限公司的LMT028,[官网链接](http://www.topwaydisplay.com/cn/products/LMT028DHHFWL-NBN.html)
6 |
7 |
8 |
--------------------------------------------------------------------------------
/05-LCD/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/05-LCD/main.c
--------------------------------------------------------------------------------
/05-LCD/main.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file Project/STM32F2xx_StdPeriph_Template/main.h
4 | * @author MCD Application Team
5 | * @version V1.1.0
6 | * @date 13-April-2012
7 | * @brief Header for main.c module
8 | ******************************************************************************
9 | * @attention
10 | *
11 | * © COPYRIGHT 2012 STMicroelectronics
12 | *
13 | * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
14 | * You may not use this file except in compliance with the License.
15 | * You may obtain a copy of the License at:
16 | *
17 | * http://www.st.com/software_license_agreement_liberty_v2
18 | *
19 | * Unless required by applicable law or agreed to in writing, software
20 | * distributed under the License is distributed on an "AS IS" BASIS,
21 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22 | * See the License for the specific language governing permissions and
23 | * limitations under the License.
24 | *
25 | ******************************************************************************
26 | */
27 |
28 | /* Define to prevent recursive inclusion -------------------------------------*/
29 | #ifndef __MAIN_H
30 | #define __MAIN_H
31 |
32 | /* Includes ------------------------------------------------------------------*/
33 | #include "stm32f2xx.h"
34 | #include
35 |
36 | /* Exported types ------------------------------------------------------------*/
37 | /* Exported constants --------------------------------------------------------*/
38 | /* Exported macro ------------------------------------------------------------*/
39 | /* Exported functions ------------------------------------------------------- */
40 | void TimingDelay_Decrement(void);
41 | void Delay(__IO uint32_t nTime);
42 |
43 | #endif /* __MAIN_H */
44 |
45 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
46 |
--------------------------------------------------------------------------------
/06-GPIO-Input-Output/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/06-GPIO-Input-Output/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/06-GPIO-Input-Output/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/06-GPIO-Input-Output/LCD_disp.c
--------------------------------------------------------------------------------
/06-GPIO-Input-Output/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/06-GPIO-Input-Output/LCD_disp.h
--------------------------------------------------------------------------------
/06-GPIO-Input-Output/README.md:
--------------------------------------------------------------------------------
1 | # GPIO-Input-Output
2 |
3 | GPIO简单的输入和输出功能
4 |
--------------------------------------------------------------------------------
/06-GPIO-Input-Output/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/06-GPIO-Input-Output/main.c
--------------------------------------------------------------------------------
/07-GPIO-JTAG/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/07-GPIO-JTAG/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/07-GPIO-JTAG/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/07-GPIO-JTAG/LCD_disp.c
--------------------------------------------------------------------------------
/07-GPIO-JTAG/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/07-GPIO-JTAG/LCD_disp.h
--------------------------------------------------------------------------------
/07-GPIO-JTAG/README.md:
--------------------------------------------------------------------------------
1 | # GPIO-JTAG
2 |
3 | 上电前,按住KEY1,锁定JTAG,上电时不按KEY1,不会锁定JTAG
4 |
--------------------------------------------------------------------------------
/07-GPIO-JTAG/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/07-GPIO-JTAG/main.c
--------------------------------------------------------------------------------
/08-GPIO-bit-band/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/08-GPIO-bit-band/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/08-GPIO-bit-band/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/08-GPIO-bit-band/LCD_disp.c
--------------------------------------------------------------------------------
/08-GPIO-bit-band/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/08-GPIO-bit-band/LCD_disp.h
--------------------------------------------------------------------------------
/08-GPIO-bit-band/README.md:
--------------------------------------------------------------------------------
1 | # GPIO-bit-band
2 |
3 | 使用CortexM3的位段功能驱动GPIO
4 |
--------------------------------------------------------------------------------
/08-GPIO-bit-band/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/08-GPIO-bit-band/main.c
--------------------------------------------------------------------------------
/09-EXTI/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/09-EXTI/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/09-EXTI/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/09-EXTI/LCD_disp.c
--------------------------------------------------------------------------------
/09-EXTI/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/09-EXTI/LCD_disp.h
--------------------------------------------------------------------------------
/09-EXTI/README.md:
--------------------------------------------------------------------------------
1 | # STM32F207VC-LCD
2 |
3 | 驱动LCD,显示红色的字母和数字,字体大小:宽8高16
4 |
5 | LCD的型号是深圳市拓普微科技开发有限公司的LMT028,[官网链接](http://www.topwaydisplay.com/cn/products/LMT028DHHFWL-NBN.html)
6 |
7 |
8 |
--------------------------------------------------------------------------------
/09-EXTI/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/09-EXTI/main.c
--------------------------------------------------------------------------------
/09-EXTI/main.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file Project/STM32F2xx_StdPeriph_Template/main.h
4 | * @author MCD Application Team
5 | * @version V1.1.0
6 | * @date 13-April-2012
7 | * @brief Header for main.c module
8 | ******************************************************************************
9 | * @attention
10 | *
11 | * © COPYRIGHT 2012 STMicroelectronics
12 | *
13 | * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
14 | * You may not use this file except in compliance with the License.
15 | * You may obtain a copy of the License at:
16 | *
17 | * http://www.st.com/software_license_agreement_liberty_v2
18 | *
19 | * Unless required by applicable law or agreed to in writing, software
20 | * distributed under the License is distributed on an "AS IS" BASIS,
21 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22 | * See the License for the specific language governing permissions and
23 | * limitations under the License.
24 | *
25 | ******************************************************************************
26 | */
27 |
28 | /* Define to prevent recursive inclusion -------------------------------------*/
29 | #ifndef __MAIN_H
30 | #define __MAIN_H
31 |
32 | /* Includes ------------------------------------------------------------------*/
33 | #include "stm32f2xx.h"
34 | #include
35 |
36 | /* Exported types ------------------------------------------------------------*/
37 | /* Exported constants --------------------------------------------------------*/
38 | /* Exported macro ------------------------------------------------------------*/
39 | /* Exported functions ------------------------------------------------------- */
40 | void TimingDelay_Decrement(void);
41 | void Delay(__IO uint32_t nTime);
42 |
43 | #endif /* __MAIN_H */
44 |
45 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
46 |
--------------------------------------------------------------------------------
/10-CRC&RNG/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/10-CRC&RNG/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/10-CRC&RNG/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/10-CRC&RNG/LCD_disp.c
--------------------------------------------------------------------------------
/10-CRC&RNG/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/10-CRC&RNG/LCD_disp.h
--------------------------------------------------------------------------------
/10-CRC&RNG/README.md:
--------------------------------------------------------------------------------
1 | # 09-CRC
2 |
3 | STM32F207硬件CRC32计算单元
4 |
5 |
--------------------------------------------------------------------------------
/10-CRC&RNG/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/10-CRC&RNG/main.c
--------------------------------------------------------------------------------
/10-CRC&RNG/main.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file Project/STM32F2xx_StdPeriph_Template/main.h
4 | * @author MCD Application Team
5 | * @version V1.1.0
6 | * @date 13-April-2012
7 | * @brief Header for main.c module
8 | ******************************************************************************
9 | * @attention
10 | *
11 | * © COPYRIGHT 2012 STMicroelectronics
12 | *
13 | * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
14 | * You may not use this file except in compliance with the License.
15 | * You may obtain a copy of the License at:
16 | *
17 | * http://www.st.com/software_license_agreement_liberty_v2
18 | *
19 | * Unless required by applicable law or agreed to in writing, software
20 | * distributed under the License is distributed on an "AS IS" BASIS,
21 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22 | * See the License for the specific language governing permissions and
23 | * limitations under the License.
24 | *
25 | ******************************************************************************
26 | */
27 |
28 | /* Define to prevent recursive inclusion -------------------------------------*/
29 | #ifndef __MAIN_H
30 | #define __MAIN_H
31 |
32 | /* Includes ------------------------------------------------------------------*/
33 | #include "stm32f2xx.h"
34 | #include
35 |
36 | /* Exported types ------------------------------------------------------------*/
37 | /* Exported constants --------------------------------------------------------*/
38 | /* Exported macro ------------------------------------------------------------*/
39 | /* Exported functions ------------------------------------------------------- */
40 | void TimingDelay_Decrement(void);
41 | void Delay(__IO uint32_t nTime);
42 |
43 | #endif /* __MAIN_H */
44 |
45 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
46 |
--------------------------------------------------------------------------------
/11-SPI/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/11-SPI/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/11-SPI/Ex_Flash.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/11-SPI/Ex_Flash.c
--------------------------------------------------------------------------------
/11-SPI/Ex_Flash.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/11-SPI/Ex_Flash.h
--------------------------------------------------------------------------------
/11-SPI/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/11-SPI/LCD_disp.c
--------------------------------------------------------------------------------
/11-SPI/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/11-SPI/LCD_disp.h
--------------------------------------------------------------------------------
/11-SPI/README.md:
--------------------------------------------------------------------------------
1 | # SPI
2 |
3 | 使用STM32F207的SPI控制器去读norflash
4 |
--------------------------------------------------------------------------------
/11-SPI/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/11-SPI/main.c
--------------------------------------------------------------------------------
/11-SPI/main.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file Project/STM32F2xx_StdPeriph_Template/main.h
4 | * @author MCD Application Team
5 | * @version V1.1.0
6 | * @date 13-April-2012
7 | * @brief Header for main.c module
8 | ******************************************************************************
9 | * @attention
10 | *
11 | * © COPYRIGHT 2012 STMicroelectronics
12 | *
13 | * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
14 | * You may not use this file except in compliance with the License.
15 | * You may obtain a copy of the License at:
16 | *
17 | * http://www.st.com/software_license_agreement_liberty_v2
18 | *
19 | * Unless required by applicable law or agreed to in writing, software
20 | * distributed under the License is distributed on an "AS IS" BASIS,
21 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22 | * See the License for the specific language governing permissions and
23 | * limitations under the License.
24 | *
25 | ******************************************************************************
26 | */
27 |
28 | /* Define to prevent recursive inclusion -------------------------------------*/
29 | #ifndef __MAIN_H
30 | #define __MAIN_H
31 |
32 | /* Includes ------------------------------------------------------------------*/
33 | #include "stm32f2xx.h"
34 | #include
35 |
36 | /* Exported types ------------------------------------------------------------*/
37 | /* Exported constants --------------------------------------------------------*/
38 | /* Exported macro ------------------------------------------------------------*/
39 | /* Exported functions ------------------------------------------------------- */
40 | void TimingDelay_Decrement(void);
41 | void Delay(__IO uint32_t nTime);
42 |
43 | #endif /* __MAIN_H */
44 |
45 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
46 |
--------------------------------------------------------------------------------
/12-SPI-Simulation/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/12-SPI-Simulation/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/12-SPI-Simulation/Ex_Flash.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/12-SPI-Simulation/Ex_Flash.c
--------------------------------------------------------------------------------
/12-SPI-Simulation/Ex_Flash.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/12-SPI-Simulation/Ex_Flash.h
--------------------------------------------------------------------------------
/12-SPI-Simulation/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/12-SPI-Simulation/LCD_disp.c
--------------------------------------------------------------------------------
/12-SPI-Simulation/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/12-SPI-Simulation/LCD_disp.h
--------------------------------------------------------------------------------
/12-SPI-Simulation/README.md:
--------------------------------------------------------------------------------
1 | # SPI-Simulation
2 |
3 | 用模拟SPI读取norflash
4 |
--------------------------------------------------------------------------------
/12-SPI-Simulation/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/12-SPI-Simulation/main.c
--------------------------------------------------------------------------------
/13-IIC/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/13-IIC/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/13-IIC/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/13-IIC/LCD_disp.c
--------------------------------------------------------------------------------
/13-IIC/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/13-IIC/LCD_disp.h
--------------------------------------------------------------------------------
/13-IIC/README.md:
--------------------------------------------------------------------------------
1 | # STM32F207VC-LCD
2 |
3 | 驱动LCD,显示红色的字母和数字,字体大小:宽8高16
4 |
5 | LCD的型号是深圳市拓普微科技开发有限公司的LMT028,[官网链接](http://www.topwaydisplay.com/cn/products/LMT028DHHFWL-NBN.html)
6 |
7 |
8 |
--------------------------------------------------------------------------------
/13-IIC/i2c_io.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/13-IIC/i2c_io.c
--------------------------------------------------------------------------------
/13-IIC/i2c_io.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/13-IIC/i2c_io.h
--------------------------------------------------------------------------------
/13-IIC/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/13-IIC/main.c
--------------------------------------------------------------------------------
/13-IIC/main.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file Project/STM32F2xx_StdPeriph_Template/main.h
4 | * @author MCD Application Team
5 | * @version V1.1.0
6 | * @date 13-April-2012
7 | * @brief Header for main.c module
8 | ******************************************************************************
9 | * @attention
10 | *
11 | * © COPYRIGHT 2012 STMicroelectronics
12 | *
13 | * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
14 | * You may not use this file except in compliance with the License.
15 | * You may obtain a copy of the License at:
16 | *
17 | * http://www.st.com/software_license_agreement_liberty_v2
18 | *
19 | * Unless required by applicable law or agreed to in writing, software
20 | * distributed under the License is distributed on an "AS IS" BASIS,
21 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22 | * See the License for the specific language governing permissions and
23 | * limitations under the License.
24 | *
25 | ******************************************************************************
26 | */
27 |
28 | /* Define to prevent recursive inclusion -------------------------------------*/
29 | #ifndef __MAIN_H
30 | #define __MAIN_H
31 |
32 | /* Includes ------------------------------------------------------------------*/
33 | #include "stm32f2xx.h"
34 | #include
35 |
36 | /* Exported types ------------------------------------------------------------*/
37 | /* Exported constants --------------------------------------------------------*/
38 | /* Exported macro ------------------------------------------------------------*/
39 | /* Exported functions ------------------------------------------------------- */
40 | void TimingDelay_Decrement(void);
41 | void Delay(__IO uint32_t nTime);
42 |
43 | #endif /* __MAIN_H */
44 |
45 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
46 |
--------------------------------------------------------------------------------
/14-Flash-Program/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/14-Flash-Program/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/14-Flash-Program/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/14-Flash-Program/LCD_disp.c
--------------------------------------------------------------------------------
/14-Flash-Program/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/14-Flash-Program/LCD_disp.h
--------------------------------------------------------------------------------
/14-Flash-Program/README.md:
--------------------------------------------------------------------------------
1 | # STM32F207VC-LCD
2 |
3 | 驱动LCD,显示红色的字母和数字,字体大小:宽8高16
4 |
5 | LCD的型号是深圳市拓普微科技开发有限公司的LMT028,[官网链接](http://www.topwaydisplay.com/cn/products/LMT028DHHFWL-NBN.html)
6 |
7 |
8 |
--------------------------------------------------------------------------------
/14-Flash-Program/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/14-Flash-Program/main.c
--------------------------------------------------------------------------------
/15-Flash-Write-Protection/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/15-Flash-Write-Protection/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/15-Flash-Write-Protection/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/15-Flash-Write-Protection/LCD_disp.c
--------------------------------------------------------------------------------
/15-Flash-Write-Protection/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/15-Flash-Write-Protection/LCD_disp.h
--------------------------------------------------------------------------------
/15-Flash-Write-Protection/README.md:
--------------------------------------------------------------------------------
1 | # STM32F207VC-LCD
2 |
3 | 驱动LCD,显示红色的字母和数字,字体大小:宽8高16
4 |
5 | LCD的型号是深圳市拓普微科技开发有限公司的LMT028,[官网链接](http://www.topwaydisplay.com/cn/products/LMT028DHHFWL-NBN.html)
6 |
7 |
8 |
--------------------------------------------------------------------------------
/15-Flash-Write-Protection/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/15-Flash-Write-Protection/main.c
--------------------------------------------------------------------------------
/16-Flash-Read-Protection/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/16-Flash-Read-Protection/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/16-Flash-Read-Protection/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/16-Flash-Read-Protection/LCD_disp.c
--------------------------------------------------------------------------------
/16-Flash-Read-Protection/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/16-Flash-Read-Protection/LCD_disp.h
--------------------------------------------------------------------------------
/16-Flash-Read-Protection/README.md:
--------------------------------------------------------------------------------
1 | # Flash-Read-Protection
2 |
3 | 没有完成,读保护没有实现
4 |
5 |
6 |
--------------------------------------------------------------------------------
/16-Flash-Read-Protection/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/16-Flash-Read-Protection/main.c
--------------------------------------------------------------------------------
/17-DMA-M-To-M/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/17-DMA-M-To-M/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/17-DMA-M-To-M/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/17-DMA-M-To-M/LCD_disp.c
--------------------------------------------------------------------------------
/17-DMA-M-To-M/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/17-DMA-M-To-M/LCD_disp.h
--------------------------------------------------------------------------------
/17-DMA-M-To-M/README.md:
--------------------------------------------------------------------------------
1 | # STM32F207VC-LCD
2 |
3 | 驱动LCD,显示红色的字母和数字,字体大小:宽8高16
4 |
5 | LCD的型号是深圳市拓普微科技开发有限公司的LMT028,[官网链接](http://www.topwaydisplay.com/cn/products/LMT028DHHFWL-NBN.html)
6 |
7 |
8 |
--------------------------------------------------------------------------------
/17-DMA-M-To-M/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/17-DMA-M-To-M/main.c
--------------------------------------------------------------------------------
/18-IWDG/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/18-IWDG/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/18-IWDG/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/18-IWDG/LCD_disp.c
--------------------------------------------------------------------------------
/18-IWDG/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/18-IWDG/LCD_disp.h
--------------------------------------------------------------------------------
/18-IWDG/README.md:
--------------------------------------------------------------------------------
1 | # STM32F207VC-LCD
2 |
3 | 驱动LCD,显示红色的字母和数字,字体大小:宽8高16
4 |
5 | LCD的型号是深圳市拓普微科技开发有限公司的LMT028,[官网链接](http://www.topwaydisplay.com/cn/products/LMT028DHHFWL-NBN.html)
6 |
7 |
8 |
--------------------------------------------------------------------------------
/18-IWDG/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/18-IWDG/main.c
--------------------------------------------------------------------------------
/18-IWDG/main.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file Project/STM32F2xx_StdPeriph_Template/main.h
4 | * @author MCD Application Team
5 | * @version V1.1.0
6 | * @date 13-April-2012
7 | * @brief Header for main.c module
8 | ******************************************************************************
9 | * @attention
10 | *
11 | * © COPYRIGHT 2012 STMicroelectronics
12 | *
13 | * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
14 | * You may not use this file except in compliance with the License.
15 | * You may obtain a copy of the License at:
16 | *
17 | * http://www.st.com/software_license_agreement_liberty_v2
18 | *
19 | * Unless required by applicable law or agreed to in writing, software
20 | * distributed under the License is distributed on an "AS IS" BASIS,
21 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22 | * See the License for the specific language governing permissions and
23 | * limitations under the License.
24 | *
25 | ******************************************************************************
26 | */
27 |
28 | /* Define to prevent recursive inclusion -------------------------------------*/
29 | #ifndef __MAIN_H
30 | #define __MAIN_H
31 |
32 | /* Includes ------------------------------------------------------------------*/
33 | #include "stm32f2xx.h"
34 | #include
35 |
36 | /* Exported types ------------------------------------------------------------*/
37 | /* Exported constants --------------------------------------------------------*/
38 | /* Exported macro ------------------------------------------------------------*/
39 | /* Exported functions ------------------------------------------------------- */
40 | void TimingDelay_Decrement(void);
41 | void Delay(__IO uint32_t nTime);
42 |
43 | #endif /* __MAIN_H */
44 |
45 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
46 |
--------------------------------------------------------------------------------
/19-WWDG/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/19-WWDG/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/19-WWDG/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/19-WWDG/LCD_disp.c
--------------------------------------------------------------------------------
/19-WWDG/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/19-WWDG/LCD_disp.h
--------------------------------------------------------------------------------
/19-WWDG/README.md:
--------------------------------------------------------------------------------
1 | # STM32F207VC-LCD
2 |
3 | 驱动LCD,显示红色的字母和数字,字体大小:宽8高16
4 |
5 | LCD的型号是深圳市拓普微科技开发有限公司的LMT028,[官网链接](http://www.topwaydisplay.com/cn/products/LMT028DHHFWL-NBN.html)
6 |
7 |
8 |
--------------------------------------------------------------------------------
/19-WWDG/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/19-WWDG/main.c
--------------------------------------------------------------------------------
/19-WWDG/main.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file Project/STM32F2xx_StdPeriph_Template/main.h
4 | * @author MCD Application Team
5 | * @version V1.1.0
6 | * @date 13-April-2012
7 | * @brief Header for main.c module
8 | ******************************************************************************
9 | * @attention
10 | *
11 | * © COPYRIGHT 2012 STMicroelectronics
12 | *
13 | * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
14 | * You may not use this file except in compliance with the License.
15 | * You may obtain a copy of the License at:
16 | *
17 | * http://www.st.com/software_license_agreement_liberty_v2
18 | *
19 | * Unless required by applicable law or agreed to in writing, software
20 | * distributed under the License is distributed on an "AS IS" BASIS,
21 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22 | * See the License for the specific language governing permissions and
23 | * limitations under the License.
24 | *
25 | ******************************************************************************
26 | */
27 |
28 | /* Define to prevent recursive inclusion -------------------------------------*/
29 | #ifndef __MAIN_H
30 | #define __MAIN_H
31 |
32 | /* Includes ------------------------------------------------------------------*/
33 | #include "stm32f2xx.h"
34 | #include
35 |
36 | /* Exported types ------------------------------------------------------------*/
37 | /* Exported constants --------------------------------------------------------*/
38 | /* Exported macro ------------------------------------------------------------*/
39 | /* Exported functions ------------------------------------------------------- */
40 | void TimingDelay_Decrement(void);
41 | void Delay(__IO uint32_t nTime);
42 |
43 | #endif /* __MAIN_H */
44 |
45 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
46 |
--------------------------------------------------------------------------------
/20-Timer-Base/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/20-Timer-Base/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/20-Timer-Base/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/20-Timer-Base/LCD_disp.c
--------------------------------------------------------------------------------
/20-Timer-Base/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/20-Timer-Base/LCD_disp.h
--------------------------------------------------------------------------------
/20-Timer-Base/README.md:
--------------------------------------------------------------------------------
1 | # STM32F207VC-Template
2 | 通过SysTick实现LED灯闪烁
3 |
4 |
5 |
6 | IAR版本:iar for arm 7.2.2 [点击下载](https://blog.csdn.net/firefly_cjd/article/details/77285224)
7 |
8 | Keil版本:Keil 5 V5.25
9 |
10 |
11 |
12 | **备注:**
13 |
14 | 为解决在IAR编译环境下类似Label 'Reset_Handler' is defined pubweak in a section implicitly declared root一系列错误,对每个向量表做以下修改
15 | ```
16 | Reset_Handler
17 | LDR R0, =SystemInit
18 | BLX R0
19 | LDR R0, =__iar_program_start
20 | BX R0
21 | PUBWEAK NMI_Handler
22 | SECTION .text:CODE:REORDER(1)
23 | ```
24 | 修改为
25 | ```
26 | Reset_Handler
27 | LDR R0, =SystemInit
28 | BLX R0
29 | LDR R0, =__iar_program_start
30 | BX R0
31 | PUBWEAK NMI_Handler
32 | SECTION .text:CODE:REORDER:NOROOT(1)
33 | ```
--------------------------------------------------------------------------------
/20-Timer-Base/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/20-Timer-Base/main.c
--------------------------------------------------------------------------------
/21-Timer-PWMOUT/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/21-Timer-PWMOUT/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/21-Timer-PWMOUT/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/21-Timer-PWMOUT/LCD_disp.c
--------------------------------------------------------------------------------
/21-Timer-PWMOUT/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/21-Timer-PWMOUT/LCD_disp.h
--------------------------------------------------------------------------------
/21-Timer-PWMOUT/README.md:
--------------------------------------------------------------------------------
1 | # STM32F207VC-Template
2 | 通过SysTick实现LED灯闪烁
3 |
4 |
5 |
6 | IAR版本:iar for arm 7.2.2 [点击下载](https://blog.csdn.net/firefly_cjd/article/details/77285224)
7 |
8 | Keil版本:Keil 5 V5.25
9 |
10 |
11 |
12 | **备注:**
13 |
14 | 为解决在IAR编译环境下类似Label 'Reset_Handler' is defined pubweak in a section implicitly declared root一系列错误,对每个向量表做以下修改
15 | ```
16 | Reset_Handler
17 | LDR R0, =SystemInit
18 | BLX R0
19 | LDR R0, =__iar_program_start
20 | BX R0
21 | PUBWEAK NMI_Handler
22 | SECTION .text:CODE:REORDER(1)
23 | ```
24 | 修改为
25 | ```
26 | Reset_Handler
27 | LDR R0, =SystemInit
28 | BLX R0
29 | LDR R0, =__iar_program_start
30 | BX R0
31 | PUBWEAK NMI_Handler
32 | SECTION .text:CODE:REORDER:NOROOT(1)
33 | ```
--------------------------------------------------------------------------------
/21-Timer-PWMOUT/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/21-Timer-PWMOUT/main.c
--------------------------------------------------------------------------------
/22-Timer-InputCapture/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/22-Timer-InputCapture/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/22-Timer-InputCapture/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/22-Timer-InputCapture/LCD_disp.c
--------------------------------------------------------------------------------
/22-Timer-InputCapture/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/22-Timer-InputCapture/LCD_disp.h
--------------------------------------------------------------------------------
/22-Timer-InputCapture/README.md:
--------------------------------------------------------------------------------
1 | # STM32F207VC-Template
2 | 通过SysTick实现LED灯闪烁
3 |
4 |
5 |
6 | IAR版本:iar for arm 7.2.2 [点击下载](https://blog.csdn.net/firefly_cjd/article/details/77285224)
7 |
8 | Keil版本:Keil 5 V5.25
9 |
10 |
11 |
12 | **备注:**
13 |
14 | 为解决在IAR编译环境下类似Label 'Reset_Handler' is defined pubweak in a section implicitly declared root一系列错误,对每个向量表做以下修改
15 | ```
16 | Reset_Handler
17 | LDR R0, =SystemInit
18 | BLX R0
19 | LDR R0, =__iar_program_start
20 | BX R0
21 | PUBWEAK NMI_Handler
22 | SECTION .text:CODE:REORDER(1)
23 | ```
24 | 修改为
25 | ```
26 | Reset_Handler
27 | LDR R0, =SystemInit
28 | BLX R0
29 | LDR R0, =__iar_program_start
30 | BX R0
31 | PUBWEAK NMI_Handler
32 | SECTION .text:CODE:REORDER:NOROOT(1)
33 | ```
--------------------------------------------------------------------------------
/22-Timer-InputCapture/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/22-Timer-InputCapture/main.c
--------------------------------------------------------------------------------
/22-Timer-InputCapture/stm32f2xx_it.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/22-Timer-InputCapture/stm32f2xx_it.c
--------------------------------------------------------------------------------
/23-Timer-MultiTimer/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/23-Timer-MultiTimer/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/23-Timer-MultiTimer/MultiTimer/MultiTimer.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/23-Timer-MultiTimer/MultiTimer/MultiTimer.h
--------------------------------------------------------------------------------
/23-Timer-MultiTimer/README.md:
--------------------------------------------------------------------------------
1 | # Timer-MultiTimer
2 | MultiTimer源码链接https://github.com/0x1abin/MultiTimer.git
3 |
4 |
--------------------------------------------------------------------------------
/23-Timer-MultiTimer/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/23-Timer-MultiTimer/main.c
--------------------------------------------------------------------------------
/23-Timer-Touchpad/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/23-Timer-Touchpad/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/23-Timer-Touchpad/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/23-Timer-Touchpad/LCD_disp.c
--------------------------------------------------------------------------------
/23-Timer-Touchpad/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/23-Timer-Touchpad/LCD_disp.h
--------------------------------------------------------------------------------
/23-Timer-Touchpad/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/23-Timer-Touchpad/main.c
--------------------------------------------------------------------------------
/24-ADC/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/24-ADC/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/24-ADC/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/24-ADC/LCD_disp.c
--------------------------------------------------------------------------------
/24-ADC/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/24-ADC/LCD_disp.h
--------------------------------------------------------------------------------
/24-ADC/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/24-ADC/main.c
--------------------------------------------------------------------------------
/24-ADC/main.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file Project/STM32F2xx_StdPeriph_Template/main.h
4 | * @author MCD Application Team
5 | * @version V1.1.0
6 | * @date 13-April-2012
7 | * @brief Header for main.c module
8 | ******************************************************************************
9 | * @attention
10 | *
11 | * © COPYRIGHT 2012 STMicroelectronics
12 | *
13 | * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
14 | * You may not use this file except in compliance with the License.
15 | * You may obtain a copy of the License at:
16 | *
17 | * http://www.st.com/software_license_agreement_liberty_v2
18 | *
19 | * Unless required by applicable law or agreed to in writing, software
20 | * distributed under the License is distributed on an "AS IS" BASIS,
21 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22 | * See the License for the specific language governing permissions and
23 | * limitations under the License.
24 | *
25 | ******************************************************************************
26 | */
27 |
28 | /* Define to prevent recursive inclusion -------------------------------------*/
29 | #ifndef __MAIN_H
30 | #define __MAIN_H
31 |
32 | /* Includes ------------------------------------------------------------------*/
33 | #include "stm32f2xx.h"
34 | #include
35 |
36 | /* Exported types ------------------------------------------------------------*/
37 | /* Exported constants --------------------------------------------------------*/
38 | /* Exported macro ------------------------------------------------------------*/
39 | /* Exported functions ------------------------------------------------------- */
40 | void TimingDelay_Decrement(void);
41 | void Delay(__IO uint32_t nTime);
42 |
43 | #endif /* __MAIN_H */
44 |
45 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
46 |
--------------------------------------------------------------------------------
/25-DAC/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/25-DAC/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/25-DAC/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/25-DAC/LCD_disp.c
--------------------------------------------------------------------------------
/25-DAC/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/25-DAC/LCD_disp.h
--------------------------------------------------------------------------------
/25-DAC/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/25-DAC/main.c
--------------------------------------------------------------------------------
/25-DAC/main.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file Project/STM32F2xx_StdPeriph_Template/main.h
4 | * @author MCD Application Team
5 | * @version V1.1.0
6 | * @date 13-April-2012
7 | * @brief Header for main.c module
8 | ******************************************************************************
9 | * @attention
10 | *
11 | * © COPYRIGHT 2012 STMicroelectronics
12 | *
13 | * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
14 | * You may not use this file except in compliance with the License.
15 | * You may obtain a copy of the License at:
16 | *
17 | * http://www.st.com/software_license_agreement_liberty_v2
18 | *
19 | * Unless required by applicable law or agreed to in writing, software
20 | * distributed under the License is distributed on an "AS IS" BASIS,
21 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22 | * See the License for the specific language governing permissions and
23 | * limitations under the License.
24 | *
25 | ******************************************************************************
26 | */
27 |
28 | /* Define to prevent recursive inclusion -------------------------------------*/
29 | #ifndef __MAIN_H
30 | #define __MAIN_H
31 |
32 | /* Includes ------------------------------------------------------------------*/
33 | #include "stm32f2xx.h"
34 | #include
35 |
36 | /* Exported types ------------------------------------------------------------*/
37 | /* Exported constants --------------------------------------------------------*/
38 | /* Exported macro ------------------------------------------------------------*/
39 | /* Exported functions ------------------------------------------------------- */
40 | void TimingDelay_Decrement(void);
41 | void Delay(__IO uint32_t nTime);
42 |
43 | #endif /* __MAIN_H */
44 |
45 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
46 |
--------------------------------------------------------------------------------
/26-SDIO/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/26-SDIO/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/26-SDIO/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/26-SDIO/LCD_disp.c
--------------------------------------------------------------------------------
/26-SDIO/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/26-SDIO/LCD_disp.h
--------------------------------------------------------------------------------
/26-SDIO/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/26-SDIO/main.c
--------------------------------------------------------------------------------
/26-SDIO/main.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file Project/STM32F2xx_StdPeriph_Template/main.h
4 | * @author MCD Application Team
5 | * @version V1.1.0
6 | * @date 13-April-2012
7 | * @brief Header for main.c module
8 | ******************************************************************************
9 | * @attention
10 | *
11 | * © COPYRIGHT 2012 STMicroelectronics
12 | *
13 | * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
14 | * You may not use this file except in compliance with the License.
15 | * You may obtain a copy of the License at:
16 | *
17 | * http://www.st.com/software_license_agreement_liberty_v2
18 | *
19 | * Unless required by applicable law or agreed to in writing, software
20 | * distributed under the License is distributed on an "AS IS" BASIS,
21 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22 | * See the License for the specific language governing permissions and
23 | * limitations under the License.
24 | *
25 | ******************************************************************************
26 | */
27 |
28 | /* Define to prevent recursive inclusion -------------------------------------*/
29 | #ifndef __MAIN_H
30 | #define __MAIN_H
31 |
32 | /* Includes ------------------------------------------------------------------*/
33 | #include "stm32f2xx.h"
34 | #include
35 |
36 | /* Exported types ------------------------------------------------------------*/
37 | /* Exported constants --------------------------------------------------------*/
38 | /* Exported macro ------------------------------------------------------------*/
39 | /* Exported functions ------------------------------------------------------- */
40 | void TimingDelay_Decrement(void);
41 | void Delay(__IO uint32_t nTime);
42 |
43 | #endif /* __MAIN_H */
44 |
45 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
46 |
--------------------------------------------------------------------------------
/26-SDIO/stm32f2x_sdio_sd.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/26-SDIO/stm32f2x_sdio_sd.c
--------------------------------------------------------------------------------
/26-SDIO/stm32f2x_sdio_sd.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/26-SDIO/stm32f2x_sdio_sd.h
--------------------------------------------------------------------------------
/27-USART-Interrupt/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/27-USART-Interrupt/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/27-USART-Interrupt/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/27-USART-Interrupt/LCD_disp.c
--------------------------------------------------------------------------------
/27-USART-Interrupt/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/27-USART-Interrupt/LCD_disp.h
--------------------------------------------------------------------------------
/27-USART-Interrupt/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/27-USART-Interrupt/main.c
--------------------------------------------------------------------------------
/28-USART-Printf/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/28-USART-Printf/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/28-USART-Printf/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/28-USART-Printf/LCD_disp.c
--------------------------------------------------------------------------------
/28-USART-Printf/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/28-USART-Printf/LCD_disp.h
--------------------------------------------------------------------------------
/28-USART-Printf/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/28-USART-Printf/main.c
--------------------------------------------------------------------------------
/29-IDE-Printf/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/29-IDE-Printf/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/29-IDE-Printf/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/29-IDE-Printf/main.c
--------------------------------------------------------------------------------
/30-ETH/Project/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/30-ETH/Project/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\a_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
32 |
--------------------------------------------------------------------------------
/30-ETH/Project/inc/app/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/30-ETH/Project/inc/app/LCD_disp.h
--------------------------------------------------------------------------------
/30-ETH/Project/inc/app/hard_bsp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/30-ETH/Project/inc/app/hard_bsp.h
--------------------------------------------------------------------------------
/30-ETH/Project/inc/app/main.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file main.h
4 | * @author MCD Application Team
5 | * @version V1.1.0
6 | * @date 07-October-2011
7 | * @brief This file contains all the functions prototypes for the main.c
8 | * file.
9 | ******************************************************************************
10 | * @attention
11 | *
12 | * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
13 | * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
14 | * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY
15 | * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
16 | * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
17 | * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
18 | *
19 | * © COPYRIGHT 2011 STMicroelectronics
20 | ******************************************************************************
21 | */
22 |
23 | /* Define to prevent recursive inclusion -------------------------------------*/
24 | #ifndef __MAIN_H
25 | #define __MAIN_H
26 |
27 | #ifdef __cplusplus
28 | extern "C" {
29 | #endif
30 |
31 | /* Includes ------------------------------------------------------------------*/
32 | #include "stm32f2xx.h"
33 |
34 |
35 |
36 |
37 |
38 |
39 | #ifdef __cplusplus
40 | }
41 | #endif
42 |
43 | #endif /* __MAIN_H */
44 |
45 |
46 | /******************* (C) COPYRIGHT 2011 STMicroelectronics *****END OF FILE****/
47 |
48 |
--------------------------------------------------------------------------------
/30-ETH/Project/inc/lwip/arch/bpstruct.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2001-2003 Swedish Institute of Computer Science.
3 | * All rights reserved.
4 | *
5 | * Redistribution and use in source and binary forms, with or without modification,
6 | * are permitted provided that the following conditions are met:
7 | *
8 | * 1. Redistributions of source code must retain the above copyright notice,
9 | * this list of conditions and the following disclaimer.
10 | * 2. Redistributions in binary form must reproduce the above copyright notice,
11 | * this list of conditions and the following disclaimer in the documentation
12 | * and/or other materials provided with the distribution.
13 | * 3. The name of the author may not be used to endorse or promote products
14 | * derived from this software without specific prior written permission.
15 | *
16 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
17 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
19 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
20 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
21 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
24 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
25 | * OF SUCH DAMAGE.
26 | *
27 | * This file is part of the lwIP TCP/IP stack.
28 | *
29 | * Author: Adam Dunkels
30 | *
31 | */
32 |
33 | #if defined(__IAR_SYSTEMS_ICC__)
34 | #pragma pack(1)
35 | #endif
36 |
37 |
--------------------------------------------------------------------------------
/30-ETH/Project/inc/lwip/arch/cpu.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/30-ETH/Project/inc/lwip/arch/cpu.h
--------------------------------------------------------------------------------
/30-ETH/Project/inc/lwip/arch/epstruct.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2001-2003 Swedish Institute of Computer Science.
3 | * All rights reserved.
4 | *
5 | * Redistribution and use in source and binary forms, with or without modification,
6 | * are permitted provided that the following conditions are met:
7 | *
8 | * 1. Redistributions of source code must retain the above copyright notice,
9 | * this list of conditions and the following disclaimer.
10 | * 2. Redistributions in binary form must reproduce the above copyright notice,
11 | * this list of conditions and the following disclaimer in the documentation
12 | * and/or other materials provided with the distribution.
13 | * 3. The name of the author may not be used to endorse or promote products
14 | * derived from this software without specific prior written permission.
15 | *
16 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
17 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
19 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
20 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
21 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
24 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
25 | * OF SUCH DAMAGE.
26 | *
27 | * This file is part of the lwIP TCP/IP stack.
28 | *
29 | * Author: Adam Dunkels
30 | *
31 | */
32 |
33 | #if defined(__IAR_SYSTEMS_ICC__)
34 | #pragma pack()
35 | #endif
36 |
37 |
--------------------------------------------------------------------------------
/30-ETH/Project/inc/lwip/arch/perf.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/30-ETH/Project/inc/lwip/arch/perf.h
--------------------------------------------------------------------------------
/30-ETH/Project/inc/lwip/arch/sys_arch.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/30-ETH/Project/inc/lwip/arch/sys_arch.c
--------------------------------------------------------------------------------
/30-ETH/Project/inc/lwip/ethernetif.h:
--------------------------------------------------------------------------------
1 | #ifndef __ETHERNETIF_H__
2 | #define __ETHERNETIF_H__
3 |
4 |
5 | #include "lwip/err.h"
6 | #include "lwip/netif.h"
7 |
8 | err_t ethernetif_init(struct netif *netif);
9 | err_t ethernetif_input(struct netif *netif);
10 |
11 | #endif
12 |
--------------------------------------------------------------------------------
/30-ETH/Project/inc/lwip/lwip_app.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/30-ETH/Project/inc/lwip/lwip_app.h
--------------------------------------------------------------------------------
/30-ETH/Project/src/app/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/30-ETH/Project/src/app/LCD_disp.c
--------------------------------------------------------------------------------
/30-ETH/Project/src/app/hard_bsp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/30-ETH/Project/src/app/hard_bsp.c
--------------------------------------------------------------------------------
/30-ETH/Project/src/app/main.c:
--------------------------------------------------------------------------------
1 | #include "stm32f2xx.h"
2 | #include "main.h"
3 | #include "lwip_app.h"
4 | #include
5 |
6 | uint32 G_timeTicks;
7 | uint32 sys_LED_state;
8 | uint32 sys_LED_time;
9 | uint32 sys_LED_mode = 1;
10 | Struct_sys_change G_change;
11 |
12 | /*!
13 | * @brief main()
14 | * @param NONE
15 | * @return NONE
16 | * @note
17 | */
18 | int main(){
19 | uint32_t line = 0;
20 | NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
21 | timer4Init();
22 | LED_Init();
23 | UART_Init();
24 | LCD_Init();
25 |
26 | ETH_BSP_Config();
27 |
28 | printf("\r\n======================================================================");
29 | printf("\r\n= (C) COPYRIGHT 2020 =");
30 | printf("\r\n= =");
31 | printf("\r\n= ST207_ETH Program Demo =");
32 | printf("\r\n= =");
33 | printf("\r\n= By Firefly =");
34 | printf("\r\n======================================================================");
35 | printf("\r\n\r\n");
36 |
37 | LCD_ShowString(0,16*(line++),"========================================");
38 | LCD_ShowString(0,16*(line++),"= (C) COPYRIGHT 2020 =");
39 | LCD_ShowString(0,16*(line++),"= =");
40 | LCD_ShowString(0,16*(line++),"= ST207_ETH Program Demo =");
41 | LCD_ShowString(0,16*(line++),"= =");
42 | LCD_ShowString(0,16*(line++),"= By Firefly =");
43 | LCD_ShowString(0,16*(line++),"========================================");
44 |
45 | while(1){
46 | Deal_with_Ethernet_MAC_IP();
47 | LED_ray_run();
48 | }
49 | }
50 |
51 |
--------------------------------------------------------------------------------
/30-ETH/Project/src/lwip/ethernetif.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/30-ETH/Project/src/lwip/ethernetif.c
--------------------------------------------------------------------------------
/30-ETH/Project/src/lwip/lwip_app.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/30-ETH/Project/src/lwip/lwip_app.c
--------------------------------------------------------------------------------
/30-ETH/Project/src/lwip/stm32f2x7_eth_bsp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/30-ETH/Project/src/lwip/stm32f2x7_eth_bsp.c
--------------------------------------------------------------------------------
/30-ETH/Project/src/stm32f2xx_it.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/30-ETH/Project/src/stm32f2xx_it.c
--------------------------------------------------------------------------------
/30-ETH/Third_Party/lwip-1.4.1/CHANGELOG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/30-ETH/Third_Party/lwip-1.4.1/CHANGELOG
--------------------------------------------------------------------------------
/30-ETH/Third_Party/lwip-1.4.1/COPYING:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2001, 2002 Swedish Institute of Computer Science.
3 | * All rights reserved.
4 | *
5 | * Redistribution and use in source and binary forms, with or without modification,
6 | * are permitted provided that the following conditions are met:
7 | *
8 | * 1. Redistributions of source code must retain the above copyright notice,
9 | * this list of conditions and the following disclaimer.
10 | * 2. Redistributions in binary form must reproduce the above copyright notice,
11 | * this list of conditions and the following disclaimer in the documentation
12 | * and/or other materials provided with the distribution.
13 | * 3. The name of the author may not be used to endorse or promote products
14 | * derived from this software without specific prior written permission.
15 | *
16 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
17 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
19 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
20 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
21 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
24 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
25 | * OF SUCH DAMAGE.
26 | *
27 | * This file is part of the lwIP TCP/IP stack.
28 | *
29 | * Author: Adam Dunkels
30 | *
31 | */
32 |
33 |
34 |
--------------------------------------------------------------------------------
/30-ETH/Third_Party/lwip-1.4.1/FILES:
--------------------------------------------------------------------------------
1 | src/ - The source code for the lwIP TCP/IP stack.
2 | doc/ - The documentation for lwIP.
3 |
4 | See also the FILES file in each subdirectory.
5 |
--------------------------------------------------------------------------------
/30-ETH/Third_Party/lwip-1.4.1/doc/FILES:
--------------------------------------------------------------------------------
1 | savannah.txt - How to obtain the current development source code.
2 | contrib.txt - How to contribute to lwIP as a developer.
3 | rawapi.txt - The documentation for the core API of lwIP.
4 | Also provides an overview about the other APIs and multithreading.
5 | snmp_agent.txt - The documentation for the lwIP SNMP agent.
6 | sys_arch.txt - The documentation for a system abstraction layer of lwIP.
7 |
--------------------------------------------------------------------------------
/30-ETH/Third_Party/lwip-1.4.1/src/FILES:
--------------------------------------------------------------------------------
1 | api/ - The code for the high-level wrapper API. Not needed if
2 | you use the lowel-level call-back/raw API.
3 |
4 | core/ - The core of the TPC/IP stack; protocol implementations,
5 | memory and buffer management, and the low-level raw API.
6 |
7 | include/ - lwIP include files.
8 |
9 | netif/ - Generic network interface device drivers are kept here,
10 | as well as the ARP module.
11 |
12 | For more information on the various subdirectories, check the FILES
13 | file in each directory.
14 |
--------------------------------------------------------------------------------
/30-ETH/Third_Party/lwip-1.4.1/src/core/ipv4/inet.c:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * Functions common to all TCP/IPv4 modules, such as the byte order functions.
4 | *
5 | */
6 |
7 | /*
8 | * Copyright (c) 2001-2004 Swedish Institute of Computer Science.
9 | * All rights reserved.
10 | *
11 | * Redistribution and use in source and binary forms, with or without modification,
12 | * are permitted provided that the following conditions are met:
13 | *
14 | * 1. Redistributions of source code must retain the above copyright notice,
15 | * this list of conditions and the following disclaimer.
16 | * 2. Redistributions in binary form must reproduce the above copyright notice,
17 | * this list of conditions and the following disclaimer in the documentation
18 | * and/or other materials provided with the distribution.
19 | * 3. The name of the author may not be used to endorse or promote products
20 | * derived from this software without specific prior written permission.
21 | *
22 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
23 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
24 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
25 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
26 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
27 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
28 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
29 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
30 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
31 | * OF SUCH DAMAGE.
32 | *
33 | * This file is part of the lwIP TCP/IP stack.
34 | *
35 | * Author: Adam Dunkels
36 | *
37 | */
38 |
39 | #include "lwip/opt.h"
40 |
41 | #include "lwip/inet.h"
42 |
43 |
--------------------------------------------------------------------------------
/30-ETH/Third_Party/lwip-1.4.1/src/core/ipv6/README:
--------------------------------------------------------------------------------
1 | IPv6 support in lwIP is very experimental.
2 |
--------------------------------------------------------------------------------
/30-ETH/Third_Party/lwip-1.4.1/src/include/posix/netdb.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * This file is a posix wrapper for lwip/netdb.h.
4 | */
5 |
6 | /*
7 | * Redistribution and use in source and binary forms, with or without modification,
8 | * are permitted provided that the following conditions are met:
9 | *
10 | * 1. Redistributions of source code must retain the above copyright notice,
11 | * this list of conditions and the following disclaimer.
12 | * 2. Redistributions in binary form must reproduce the above copyright notice,
13 | * this list of conditions and the following disclaimer in the documentation
14 | * and/or other materials provided with the distribution.
15 | * 3. The name of the author may not be used to endorse or promote products
16 | * derived from this software without specific prior written permission.
17 | *
18 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
19 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
20 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
21 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
22 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
23 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
26 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
27 | * OF SUCH DAMAGE.
28 | *
29 | * This file is part of the lwIP TCP/IP stack.
30 | *
31 | */
32 |
33 | #include "lwip/netdb.h"
34 |
--------------------------------------------------------------------------------
/30-ETH/Third_Party/lwip-1.4.1/src/include/posix/sys/socket.h:
--------------------------------------------------------------------------------
1 | /**
2 | * @file
3 | * This file is a posix wrapper for lwip/sockets.h.
4 | */
5 |
6 | /*
7 | * Redistribution and use in source and binary forms, with or without modification,
8 | * are permitted provided that the following conditions are met:
9 | *
10 | * 1. Redistributions of source code must retain the above copyright notice,
11 | * this list of conditions and the following disclaimer.
12 | * 2. Redistributions in binary form must reproduce the above copyright notice,
13 | * this list of conditions and the following disclaimer in the documentation
14 | * and/or other materials provided with the distribution.
15 | * 3. The name of the author may not be used to endorse or promote products
16 | * derived from this software without specific prior written permission.
17 | *
18 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
19 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
20 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
21 | * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
22 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
23 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
26 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
27 | * OF SUCH DAMAGE.
28 | *
29 | * This file is part of the lwIP TCP/IP stack.
30 | *
31 | */
32 |
33 | #include "lwip/sockets.h"
34 |
--------------------------------------------------------------------------------
/30-ETH/Third_Party/lwip-1.4.1/src/netif/FILES:
--------------------------------------------------------------------------------
1 | This directory contains generic network interface device drivers that
2 | do not contain any hardware or architecture specific code. The files
3 | are:
4 |
5 | etharp.c
6 | Implements the ARP (Address Resolution Protocol) over
7 | Ethernet. The code in this file should be used together with
8 | Ethernet device drivers. Note that this module has been
9 | largely made Ethernet independent so you should be able to
10 | adapt this for other link layers (such as Firewire).
11 |
12 | ethernetif.c
13 | An example of how an Ethernet device driver could look. This
14 | file can be used as a "skeleton" for developing new Ethernet
15 | network device drivers. It uses the etharp.c ARP code.
16 |
17 | loopif.c
18 | A "loopback" network interface driver. It requires configuration
19 | through the define LWIP_LOOPIF_MULTITHREADING (see opt.h).
20 |
21 | slipif.c
22 | A generic implementation of the SLIP (Serial Line IP)
23 | protocol. It requires a sio (serial I/O) module to work.
24 |
25 | ppp/ Point-to-Point Protocol stack
26 | The PPP stack has been ported from ucip (http://ucip.sourceforge.net).
27 | It matches quite well to pppd 2.3.1 (http://ppp.samba.org), although
28 | compared to that, it has some modifications for embedded systems and
29 | the source code has been reordered a bit.
--------------------------------------------------------------------------------
/30-ETH/Third_Party/lwip-1.4.1/test/unit/core/test_mem.c:
--------------------------------------------------------------------------------
1 | #include "test_mem.h"
2 |
3 | #include "lwip/mem.h"
4 | #include "lwip/stats.h"
5 |
6 | #if !LWIP_STATS || !MEM_STATS
7 | #error "This tests needs MEM-statistics enabled"
8 | #endif
9 | #if LWIP_DNS
10 | #error "This test needs DNS turned off (as it mallocs on init)"
11 | #endif
12 |
13 | /* Setups/teardown functions */
14 |
15 | static void
16 | mem_setup(void)
17 | {
18 | }
19 |
20 | static void
21 | mem_teardown(void)
22 | {
23 | }
24 |
25 |
26 | /* Test functions */
27 |
28 | /** Call mem_malloc, mem_free and mem_trim and check stats */
29 | START_TEST(test_mem_one)
30 | {
31 | #define SIZE1 16
32 | #define SIZE1_2 12
33 | #define SIZE2 16
34 | void *p1, *p2;
35 | mem_size_t s1, s2;
36 | LWIP_UNUSED_ARG(_i);
37 |
38 | #if LWIP_DNS
39 | fail("This test needs DNS turned off (as it mallocs on init)");
40 | #endif
41 |
42 | fail_unless(lwip_stats.mem.used == 0);
43 |
44 | p1 = mem_malloc(SIZE1);
45 | fail_unless(p1 != NULL);
46 | fail_unless(lwip_stats.mem.used >= SIZE1);
47 | s1 = lwip_stats.mem.used;
48 |
49 | p2 = mem_malloc(SIZE2);
50 | fail_unless(p2 != NULL);
51 | fail_unless(lwip_stats.mem.used >= SIZE2 + s1);
52 | s2 = lwip_stats.mem.used;
53 |
54 | mem_trim(p1, SIZE1_2);
55 |
56 | mem_free(p2);
57 | fail_unless(lwip_stats.mem.used <= s2 - SIZE2);
58 |
59 | mem_free(p1);
60 | fail_unless(lwip_stats.mem.used == 0);
61 | }
62 | END_TEST
63 |
64 |
65 | /** Create the suite including all tests for this module */
66 | Suite *
67 | mem_suite(void)
68 | {
69 | TFun tests[] = {
70 | test_mem_one
71 | };
72 | return create_suite("MEM", tests, sizeof(tests)/sizeof(TFun), mem_setup, mem_teardown);
73 | }
74 |
--------------------------------------------------------------------------------
/30-ETH/Third_Party/lwip-1.4.1/test/unit/core/test_mem.h:
--------------------------------------------------------------------------------
1 | #ifndef __TEST_MEM_H__
2 | #define __TEST_MEM_H__
3 |
4 | #include "../lwip_check.h"
5 |
6 | Suite *mem_suite(void);
7 |
8 | #endif
9 |
--------------------------------------------------------------------------------
/30-ETH/Third_Party/lwip-1.4.1/test/unit/etharp/test_etharp.h:
--------------------------------------------------------------------------------
1 | #ifndef __TEST_ETHARP_H__
2 | #define __TEST_ETHARP_H__
3 |
4 | #include "../lwip_check.h"
5 |
6 | Suite* etharp_suite(void);
7 |
8 | #endif
9 |
--------------------------------------------------------------------------------
/30-ETH/Third_Party/lwip-1.4.1/test/unit/lwip_check.h:
--------------------------------------------------------------------------------
1 | #ifndef __LWIP_CHECK_H__
2 | #define __LWIP_CHECK_H__
3 |
4 | /* Common header file for lwIP unit tests using the check framework */
5 |
6 | #include
7 | #include
8 | #include
9 |
10 | #define FAIL_RET() do { fail(); return; } while(0)
11 | #define EXPECT(x) fail_unless(x)
12 | #define EXPECT_RET(x) do { fail_unless(x); if(!(x)) { return; }} while(0)
13 | #define EXPECT_RETX(x, y) do { fail_unless(x); if(!(x)) { return y; }} while(0)
14 | #define EXPECT_RETNULL(x) EXPECT_RETX(x, NULL)
15 |
16 | /** typedef for a function returning a test suite */
17 | typedef Suite* (suite_getter_fn)(void);
18 |
19 | /** Create a test suite */
20 | static Suite* create_suite(const char* name, TFun *tests, size_t num_tests, SFun setup, SFun teardown)
21 | {
22 | size_t i;
23 | Suite *s = suite_create(name);
24 |
25 | for(i = 0; i < num_tests; i++) {
26 | /* Core test case */
27 | TCase *tc_core = tcase_create("Core");
28 | if ((setup != NULL) || (teardown != NULL)) {
29 | tcase_add_checked_fixture(tc_core, setup, teardown);
30 | }
31 | tcase_add_test(tc_core, tests[i]);
32 | suite_add_tcase(s, tc_core);
33 | }
34 | return s;
35 | }
36 |
37 | #endif /* __LWIP_CHECK_H__ */
38 |
--------------------------------------------------------------------------------
/30-ETH/Third_Party/lwip-1.4.1/test/unit/lwip_unittests.c:
--------------------------------------------------------------------------------
1 | #include "lwip_check.h"
2 |
3 | #include "udp/test_udp.h"
4 | #include "tcp/test_tcp.h"
5 | #include "tcp/test_tcp_oos.h"
6 | #include "core/test_mem.h"
7 | #include "etharp/test_etharp.h"
8 |
9 | #include "lwip/init.h"
10 |
11 |
12 | int main()
13 | {
14 | int number_failed;
15 | SRunner *sr;
16 | size_t i;
17 | suite_getter_fn* suites[] = {
18 | udp_suite,
19 | tcp_suite,
20 | tcp_oos_suite,
21 | mem_suite,
22 | etharp_suite
23 | };
24 | size_t num = sizeof(suites)/sizeof(void*);
25 | LWIP_ASSERT("No suites defined", num > 0);
26 |
27 | lwip_init();
28 |
29 | sr = srunner_create((suites[0])());
30 | for(i = 1; i < num; i++) {
31 | srunner_add_suite(sr, ((suite_getter_fn*)suites[i])());
32 | }
33 |
34 | #ifdef LWIP_UNITTESTS_NOFORK
35 | srunner_set_fork_status(sr, CK_NOFORK);
36 | #endif
37 | #ifdef LWIP_UNITTESTS_FORK
38 | srunner_set_fork_status(sr, CK_FORK);
39 | #endif
40 |
41 | srunner_run_all(sr, CK_NORMAL);
42 | number_failed = srunner_ntests_failed(sr);
43 | srunner_free(sr);
44 | return (number_failed == 0) ? EXIT_SUCCESS : EXIT_FAILURE;
45 | }
46 |
--------------------------------------------------------------------------------
/30-ETH/Third_Party/lwip-1.4.1/test/unit/tcp/test_tcp.h:
--------------------------------------------------------------------------------
1 | #ifndef __TEST_TCP_H__
2 | #define __TEST_TCP_H__
3 |
4 | #include "../lwip_check.h"
5 |
6 | Suite *tcp_suite(void);
7 |
8 | #endif
9 |
--------------------------------------------------------------------------------
/30-ETH/Third_Party/lwip-1.4.1/test/unit/tcp/test_tcp_oos.h:
--------------------------------------------------------------------------------
1 | #ifndef __TEST_TCP_OOS_H__
2 | #define __TEST_TCP_OOS_H__
3 |
4 | #include "../lwip_check.h"
5 |
6 | Suite *tcp_oos_suite(void);
7 |
8 | #endif
9 |
--------------------------------------------------------------------------------
/30-ETH/Third_Party/lwip-1.4.1/test/unit/udp/test_udp.c:
--------------------------------------------------------------------------------
1 | #include "test_udp.h"
2 |
3 | #include "lwip/udp.h"
4 | #include "lwip/stats.h"
5 |
6 | #if !LWIP_STATS || !UDP_STATS || !MEMP_STATS
7 | #error "This tests needs UDP- and MEMP-statistics enabled"
8 | #endif
9 |
10 | /* Helper functions */
11 | static void
12 | udp_remove_all(void)
13 | {
14 | struct udp_pcb *pcb = udp_pcbs;
15 | struct udp_pcb *pcb2;
16 |
17 | while(pcb != NULL) {
18 | pcb2 = pcb;
19 | pcb = pcb->next;
20 | udp_remove(pcb2);
21 | }
22 | fail_unless(lwip_stats.memp[MEMP_UDP_PCB].used == 0);
23 | }
24 |
25 | /* Setups/teardown functions */
26 |
27 | static void
28 | udp_setup(void)
29 | {
30 | udp_remove_all();
31 | }
32 |
33 | static void
34 | udp_teardown(void)
35 | {
36 | udp_remove_all();
37 | }
38 |
39 |
40 | /* Test functions */
41 |
42 | START_TEST(test_udp_new_remove)
43 | {
44 | struct udp_pcb* pcb;
45 | LWIP_UNUSED_ARG(_i);
46 |
47 | fail_unless(lwip_stats.memp[MEMP_UDP_PCB].used == 0);
48 |
49 | pcb = udp_new();
50 | fail_unless(pcb != NULL);
51 | if (pcb != NULL) {
52 | fail_unless(lwip_stats.memp[MEMP_UDP_PCB].used == 1);
53 | udp_remove(pcb);
54 | fail_unless(lwip_stats.memp[MEMP_UDP_PCB].used == 0);
55 | }
56 | }
57 | END_TEST
58 |
59 |
60 | /** Create the suite including all tests for this module */
61 | Suite *
62 | udp_suite(void)
63 | {
64 | TFun tests[] = {
65 | test_udp_new_remove,
66 | };
67 | return create_suite("UDP", tests, sizeof(tests)/sizeof(TFun), udp_setup, udp_teardown);
68 | }
69 |
--------------------------------------------------------------------------------
/30-ETH/Third_Party/lwip-1.4.1/test/unit/udp/test_udp.h:
--------------------------------------------------------------------------------
1 | #ifndef __TEST_UDP_H__
2 | #define __TEST_UDP_H__
3 |
4 | #include "../lwip_check.h"
5 |
6 | Suite* udp_suite(void);
7 |
8 | #endif
9 |
--------------------------------------------------------------------------------
/31-USB-Host-MSC/Project/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/31-USB-Host-MSC/Project/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/31-USB-Host-MSC/Project/EWARM/stm32f2xx_flash_extsram.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x64000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x640FFFFF;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__]; /* EXTSRAM_region */
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
32 |
--------------------------------------------------------------------------------
/31-USB-Host-MSC/Project/EWARM/stm32f2xx_sram.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x20000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x20000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x2000FFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20010000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x2001FFFF;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
32 |
--------------------------------------------------------------------------------
/31-USB-Host-MSC/Project/Ex_Flash.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/31-USB-Host-MSC/Project/Ex_Flash.c
--------------------------------------------------------------------------------
/31-USB-Host-MSC/Project/Ex_Flash.h:
--------------------------------------------------------------------------------
1 | #ifndef _Ex_Flash_H
2 | #define _Ex_Flash_H
3 | #include
4 | /* Private define ------------------------------------------------------------*/
5 | #define WRITE 0x02 /* Write to Memory instruction */
6 | #define QUADWRITE 0x32 /* Quad Write to Memory instruction */
7 | #define WRSR 0x01 /* Write Status Register instruction */
8 | #define WREN 0x06 /* Write enable instruction */
9 |
10 | #define READ 0x03 /* Read from Memory instruction */
11 | #define QUADREAD 0x6B /* Read from Memory instruction */
12 | #define RDSR 0x05 /* Read Status Register instruction */
13 | #define RDID 0x9F /* Read identification */
14 | #define SE 0x20 /* Sector Erase instruction */
15 | #define BE 0xC7 /* Bulk Erase instruction */
16 |
17 | #define WTSR 0x05 /* Write Status Register instruction */
18 |
19 |
20 | #define WIP_Flag 0x01 /* Write In Progress (WIP) flag */
21 | #define Dummy_Byte 0xA5
22 |
23 |
24 | #define Ex_FLASH_PageSize 0x100
25 |
26 | #define Ex_FLASH_SecSize 0x1000
27 |
28 | #define Ex_FLASH_Max_Addr (Ex_FLASH_SecSize*512)
29 |
30 | #define Ex_Flash_OK 0
31 | #define Ex_Flash_Over_Addr 1
32 |
33 | uint8_t Ex_FLASH_Write(uint32_t WriteAddr,uint8_t* pBuffer, uint16_t NumByteToWrite);
34 | uint8_t Ex_Flash_RD_Sec(uint32_t Sec_Num,uint8_t* RcvBuf);
35 | uint8_t Ex_Flash_RD(uint32_t ReadAddr,uint8_t* RcvBuf,uint32_t NByte);
36 | void Ex_FLASH_ReadUID(uint8_t *uid);
37 | uint32_t Ex_FLASH_ReadID(void);
38 | uint8_t Ex_FLASH_SectorErase(uint32_t Sec_Num);
39 |
40 | #endif
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
--------------------------------------------------------------------------------
/31-USB-Host-MSC/Project/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/31-USB-Host-MSC/Project/LCD_disp.c
--------------------------------------------------------------------------------
/31-USB-Host-MSC/Project/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/31-USB-Host-MSC/Project/LCD_disp.h
--------------------------------------------------------------------------------
/31-USB-Host-MSC/Project/USBAPP/usbh_usr.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/31-USB-Host-MSC/Project/USBAPP/usbh_usr.c
--------------------------------------------------------------------------------
/31-USB-Host-MSC/Project/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/31-USB-Host-MSC/Project/main.c
--------------------------------------------------------------------------------
/31-USB-Host-MSC/Project/stm32f2x_sdio_sd.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/31-USB-Host-MSC/Project/stm32f2x_sdio_sd.c
--------------------------------------------------------------------------------
/31-USB-Host-MSC/Project/stm32f2xx_it.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/31-USB-Host-MSC/Project/stm32f2xx_it.c
--------------------------------------------------------------------------------
/31-USB-Host-MSC/Third_Party/fatfs/00readme.txt:
--------------------------------------------------------------------------------
1 | FatFs Module Source Files R0.12
2 |
3 |
4 | FILES
5 |
6 | 00readme.txt This file.
7 | history.txt Revision history.
8 | ffconf.h Configuration file for FatFs module.
9 | ff.h Common include file for FatFs and application module.
10 | ff.c FatFs module.
11 | diskio.h Common include file for FatFs and disk I/O module.
12 | diskio.c An example of glue function to attach existing disk I/O module to FatFs.
13 | integer.h Integer type definitions for FatFs.
14 | option Optional external functions.
15 |
16 |
17 | Low level disk I/O module is not included in this archive because the FatFs
18 | module is only a generic file system layer and not depend on any specific
19 | storage device. You have to provide a low level disk I/O module that written
20 | to control the target storage device.
21 |
22 |
--------------------------------------------------------------------------------
/31-USB-Host-MSC/Third_Party/fatfs/diskio.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/31-USB-Host-MSC/Third_Party/fatfs/diskio.c
--------------------------------------------------------------------------------
/31-USB-Host-MSC/Third_Party/fatfs/integer.h:
--------------------------------------------------------------------------------
1 | /*-------------------------------------------*/
2 | /* Integer type definitions for FatFs module */
3 | /*-------------------------------------------*/
4 |
5 | #ifndef _FF_INTEGER
6 | #define _FF_INTEGER
7 |
8 | #ifdef _WIN32 /* FatFs development platform */
9 |
10 | #include
11 | #include
12 | typedef unsigned __int64 QWORD;
13 |
14 |
15 | #else /* Embedded platform */
16 |
17 | /* These types MUST be 16-bit or 32-bit */
18 | typedef int INT;
19 | typedef unsigned int UINT;
20 |
21 | /* This type MUST be 8-bit */
22 | typedef unsigned char BYTE;
23 |
24 | /* These types MUST be 16-bit */
25 | typedef short SHORT;
26 | typedef unsigned short WORD;
27 | typedef unsigned short WCHAR;
28 |
29 | /* These types MUST be 32-bit */
30 | typedef long LONG;
31 | typedef unsigned long DWORD;
32 |
33 | /* This type MUST be 64-bit (Remove this for C89 compatibility) */
34 | typedef unsigned long long QWORD;
35 |
36 | #endif
37 |
38 | #endif
39 |
--------------------------------------------------------------------------------
/31-USB-Host-MSC/Third_Party/fatfs/option/unicode.c:
--------------------------------------------------------------------------------
1 | #include "../ff.h"
2 |
3 | #if _USE_LFN != 0
4 |
5 | #if _CODE_PAGE == 932 /* Japanese Shift_JIS */
6 | #include "cc932.c"
7 | #elif _CODE_PAGE == 936 /* Simplified Chinese GBK */
8 | #include "cc936.c"
9 | #elif _CODE_PAGE == 949 /* Korean */
10 | #include "cc949.c"
11 | #elif _CODE_PAGE == 950 /* Traditional Chinese Big5 */
12 | #include "cc950.c"
13 | #else /* Single Byte Character-Set */
14 | #include "ccsbcs.c"
15 | #endif
16 |
17 | #endif
18 |
--------------------------------------------------------------------------------
/32-USB-Slave-MSC/Project/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/32-USB-Slave-MSC/Project/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/32-USB-Slave-MSC/Project/EWARM/stm32f2xx_flash_extsram.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x64000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x640FFFFF;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__]; /* EXTSRAM_region */
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
32 |
--------------------------------------------------------------------------------
/32-USB-Slave-MSC/Project/EWARM/stm32f2xx_sram.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x20000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x20000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x2000FFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20010000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x2001FFFF;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
32 |
--------------------------------------------------------------------------------
/32-USB-Slave-MSC/Project/Ex_Flash.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/32-USB-Slave-MSC/Project/Ex_Flash.c
--------------------------------------------------------------------------------
/32-USB-Slave-MSC/Project/Ex_Flash.h:
--------------------------------------------------------------------------------
1 | #ifndef _Ex_Flash_H
2 | #define _Ex_Flash_H
3 | #include
4 |
5 | /* Private define ------------------------------------------------------------*/
6 | #define WRITE 0x02 /* Write to Memory instruction */
7 | #define QUADWRITE 0x32 /* Quad Write to Memory instruction */
8 | #define WRSR 0x01 /* Write Status Register instruction */
9 | #define WREN 0x06 /* Write enable instruction */
10 |
11 | #define READ 0x03 /* Read from Memory instruction */
12 | #define QUADREAD 0x6B /* Read from Memory instruction */
13 | #define RDSR 0x05 /* Read Status Register instruction */
14 | #define RDID 0x9F /* Read identification */
15 | #define SE 0x20 /* Sector Erase instruction */
16 | #define BE 0xC7 /* Bulk Erase instruction */
17 |
18 | #define WTSR 0x05 /* Write Status Register instruction */
19 |
20 |
21 | #define WIP_Flag 0x01 /* Write In Progress (WIP) flag */
22 | #define Dummy_Byte 0xA5
23 |
24 |
25 | #define Ex_FLASH_PageSize 0x100
26 |
27 | #define Ex_FLASH_SecSize 0x1000
28 |
29 | #define Ex_FLASH_Max_Addr (Ex_FLASH_SecSize*512)
30 |
31 | #define Ex_Flash_OK 0
32 | #define Ex_Flash_Over_Addr 1
33 |
34 | uint8_t Ex_FLASH_Write(uint32_t WriteAddr,uint8_t* pBuffer, uint16_t NumByteToWrite);
35 | uint8_t Ex_Flash_RD_Sec(uint32_t Sec_Num,uint8_t* RcvBuf);
36 | uint8_t Ex_Flash_RD(uint32_t ReadAddr,uint8_t* RcvBuf,uint32_t NByte);
37 | void Ex_FLASH_ReadUID(uint8_t *uid);
38 | uint32_t Ex_FLASH_ReadID(void);
39 | uint8_t Ex_FLASH_SectorErase(uint32_t Sec_Num);
40 |
41 | #endif
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
--------------------------------------------------------------------------------
/32-USB-Slave-MSC/Project/LCD_disp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/32-USB-Slave-MSC/Project/LCD_disp.c
--------------------------------------------------------------------------------
/32-USB-Slave-MSC/Project/LCD_disp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/32-USB-Slave-MSC/Project/LCD_disp.h
--------------------------------------------------------------------------------
/32-USB-Slave-MSC/Project/USBAPP/usbd_storage_msd.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/32-USB-Slave-MSC/Project/USBAPP/usbd_storage_msd.c
--------------------------------------------------------------------------------
/32-USB-Slave-MSC/Project/USBAPP/usbd_usr.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/32-USB-Slave-MSC/Project/USBAPP/usbd_usr.c
--------------------------------------------------------------------------------
/32-USB-Slave-MSC/Project/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/32-USB-Slave-MSC/Project/main.c
--------------------------------------------------------------------------------
/32-USB-Slave-MSC/Project/stm32f2x_sdio_sd.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/32-USB-Slave-MSC/Project/stm32f2x_sdio_sd.c
--------------------------------------------------------------------------------
/32-USB-Slave-MSC/Project/stm32f2x_sdio_sd.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/32-USB-Slave-MSC/Project/stm32f2x_sdio_sd.h
--------------------------------------------------------------------------------
/32-USB-Slave-MSC/Project/stm32f2xx_it.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/32-USB-Slave-MSC/Project/stm32f2xx_it.c
--------------------------------------------------------------------------------
/32-USB-Slave-MSC/Project/systick.c:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file TIMER/Cascade_Synchro/systick.c
4 | * @author MCU SD
5 | * @version V1.0.0
6 | * @date 15-Jul-2015
7 | * @brief The SysTick configuration file.
8 | ******************************************************************************
9 | */
10 |
11 | /* Includes ------------------------------------------------------------------*/
12 | #include "gd32f20x.h"
13 | #include "SysTick.h"
14 |
15 | /* Private variables ---------------------------------------------------------*/
16 | static __IO uint32_t TimingDelay;
17 |
18 | /* Private functions ---------------------------------------------------------*/
19 | /**
20 | * @brief Configure a SysTick Base time to 1us.
21 | * @param None
22 | * @retval None
23 | */
24 | void SysTick_Configuration(void)
25 | {
26 | /* Setup SysTick Timer for 1ms interrupts */
27 | if (SysTick_Config(SystemCoreClock / 1000))
28 | {
29 | /* Capture error */
30 | while (1);
31 | }
32 | /* Configure the SysTick handler priority */
33 | NVIC_SetPriority(SysTick_IRQn, 0x00);
34 | }
35 |
36 | /**
37 | * @brief Insert a delay time.
38 | * @param nTime: specifies the delay time length, in milliseconds.
39 | * @retval None
40 | */
41 | void Delay_1ms(uint32_t nTime)
42 | {
43 | TimingDelay = nTime;
44 | while(TimingDelay != 0);
45 | }
46 |
47 | /**
48 | * @brief Decrement the TimingDelay variable.
49 | * @param None.
50 | * @retval None
51 | */
52 | void TimingDelay_Decrement(void)
53 | {
54 | if (TimingDelay != 0x00)
55 | {
56 | TimingDelay--;
57 | }
58 | }
59 |
60 | /******************* (C) COPYRIGHT 2015 GIGADEVICE *****END OF FILE****/
61 |
--------------------------------------------------------------------------------
/32-USB-Slave-MSC/Project/systick.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file TIMER/Cascade_Synchro/systick.h
4 | * @author MCU SD
5 | * @version V1.0.0
6 | * @date 15-Jul-2015
7 | * @brief The header file of the SysTick configuration.
8 | ******************************************************************************
9 | */
10 |
11 | /* Define to prevent recursive inclusion -------------------------------------*/
12 | #ifndef SYS_TICK_H
13 | #define SYS_TICK_H
14 |
15 | /* Exported functions ------------------------------------------------------- */
16 | void SysTick_Configuration(void);
17 | void Delay_1ms(uint32_t nTime);
18 | void TimingDelay_Decrement(void);
19 |
20 | #endif /* SYS_TICK_H */
21 |
22 | /******************* (C) COPYRIGHT 2015 GIGADEVICE *****END OF FILE****/
23 |
--------------------------------------------------------------------------------
/33-USART-DMA-Receive/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/33-USART-DMA-Receive/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/33-USART-DMA-Receive/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/33-USART-DMA-Receive/main.c
--------------------------------------------------------------------------------
/34-USART-Receive-DMAInterrupt/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/34-USART-Receive-DMAInterrupt/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/34-USART-Receive-DMAInterrupt/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/34-USART-Receive-DMAInterrupt/main.c
--------------------------------------------------------------------------------
/35-USART-DMA-Receive-Interrupt/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/35-USART-DMA-Receive-Interrupt/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/35-USART-DMA-Receive-Interrupt/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/35-USART-DMA-Receive-Interrupt/main.c
--------------------------------------------------------------------------------
/35-USART-DMA-Receive-Interrupt/stm32f2xx_it.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/35-USART-DMA-Receive-Interrupt/stm32f2xx_it.c
--------------------------------------------------------------------------------
/36-USART-DMA-Receive-Send/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/36-USART-DMA-Receive-Send/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/36-USART-DMA-Receive-Send/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/36-USART-DMA-Receive-Send/main.c
--------------------------------------------------------------------------------
/36-USART-DMA-Receive-Send/stm32f2xx_it.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/36-USART-DMA-Receive-Send/stm32f2xx_it.c
--------------------------------------------------------------------------------
/37-USART-Ringbuff/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/37-USART-Ringbuff/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/37-USART-Ringbuff/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/37-USART-Ringbuff/main.c
--------------------------------------------------------------------------------
/38-MPU6050/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/38-MPU6050/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/38-MPU6050/MPU6050/eMPL/inv_mpu.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/38-MPU6050/MPU6050/eMPL/inv_mpu.c
--------------------------------------------------------------------------------
/38-MPU6050/MPU6050/eMPL/inv_mpu.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/38-MPU6050/MPU6050/eMPL/inv_mpu.h
--------------------------------------------------------------------------------
/38-MPU6050/MPU6050/eMPL/inv_mpu_dmp_motion_driver.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/38-MPU6050/MPU6050/eMPL/inv_mpu_dmp_motion_driver.c
--------------------------------------------------------------------------------
/38-MPU6050/MPU6050/mpu6050.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/38-MPU6050/MPU6050/mpu6050.c
--------------------------------------------------------------------------------
/38-MPU6050/MPU6050/mpu6050.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/38-MPU6050/MPU6050/mpu6050.h
--------------------------------------------------------------------------------
/38-MPU6050/README.md:
--------------------------------------------------------------------------------
1 | # STM32F207VC-LCD
2 |
3 | 驱动LCD,显示红色的字母和数字,字体大小:宽8高16
4 |
5 | LCD的型号是深圳市拓普微科技开发有限公司的LMT028,[官网链接](http://www.topwaydisplay.com/cn/products/LMT028DHHFWL-NBN.html)
6 |
7 |
8 |
--------------------------------------------------------------------------------
/38-MPU6050/i2c_io.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/38-MPU6050/i2c_io.c
--------------------------------------------------------------------------------
/38-MPU6050/i2c_io.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/38-MPU6050/i2c_io.h
--------------------------------------------------------------------------------
/38-MPU6050/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/38-MPU6050/main.c
--------------------------------------------------------------------------------
/38-MPU6050/main.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file Project/STM32F2xx_StdPeriph_Template/main.h
4 | * @author MCD Application Team
5 | * @version V1.1.0
6 | * @date 13-April-2012
7 | * @brief Header for main.c module
8 | ******************************************************************************
9 | * @attention
10 | *
11 | * © COPYRIGHT 2012 STMicroelectronics
12 | *
13 | * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
14 | * You may not use this file except in compliance with the License.
15 | * You may obtain a copy of the License at:
16 | *
17 | * http://www.st.com/software_license_agreement_liberty_v2
18 | *
19 | * Unless required by applicable law or agreed to in writing, software
20 | * distributed under the License is distributed on an "AS IS" BASIS,
21 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22 | * See the License for the specific language governing permissions and
23 | * limitations under the License.
24 | *
25 | ******************************************************************************
26 | */
27 |
28 | /* Define to prevent recursive inclusion -------------------------------------*/
29 | #ifndef __MAIN_H
30 | #define __MAIN_H
31 |
32 | /* Includes ------------------------------------------------------------------*/
33 | #include "stm32f2xx.h"
34 | #include
35 |
36 | /* Exported types ------------------------------------------------------------*/
37 | /* Exported constants --------------------------------------------------------*/
38 | /* Exported macro ------------------------------------------------------------*/
39 | /* Exported functions ------------------------------------------------------- */
40 | void TimingDelay_Decrement(void);
41 | void Delay(__IO uint32_t nTime);
42 |
43 | #endif /* __MAIN_H */
44 |
45 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
46 |
--------------------------------------------------------------------------------
/38-MPU6050/report_data.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/38-MPU6050/report_data.c
--------------------------------------------------------------------------------
/38-MPU6050/report_data.h:
--------------------------------------------------------------------------------
1 | #ifndef __REPORT_DATA_H
2 | #define __REPORT_DATA_H
3 |
4 | #include "stm32f2xx.h"
5 |
6 |
7 | extern void mpu6050_send_data(short aacx,short aacy,short aacz,short gyrox,short gyroy,short gyroz);
8 | extern void usart1_report_imu(short aacx,short aacy,short aacz,short gyrox,short gyroy,short gyroz,short roll,short pitch,short yaw);
9 |
10 | #endif
--------------------------------------------------------------------------------
/38-MPU6050/sys_delay.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/38-MPU6050/sys_delay.c
--------------------------------------------------------------------------------
/38-MPU6050/sys_delay.h:
--------------------------------------------------------------------------------
1 | #ifndef __SYS_DELAY_H
2 | #define __SYS_DELAY_H
3 |
4 | #include "stm32f2xx.h"
5 |
6 | extern void SysCtlDelay(unsigned long ulCount);
7 | extern void Sys_delay_ms(unsigned long ulCount);
8 |
9 | #endif
10 |
11 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
12 |
--------------------------------------------------------------------------------
/39-Measure-Time/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/39-Measure-Time/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/39-Measure-Time/README.md:
--------------------------------------------------------------------------------
1 | # Measure-Time
2 | 通过定时器测量代码运行时间
3 |
--------------------------------------------------------------------------------
/39-Measure-Time/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/39-Measure-Time/main.c
--------------------------------------------------------------------------------
/39-Measure-Time/main.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file Project/STM32F2xx_StdPeriph_Template/main.h
4 | * @author MCD Application Team
5 | * @version V1.1.0
6 | * @date 13-April-2012
7 | * @brief Header for main.c module
8 | ******************************************************************************
9 | * @attention
10 | *
11 | * © COPYRIGHT 2012 STMicroelectronics
12 | *
13 | * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
14 | * You may not use this file except in compliance with the License.
15 | * You may obtain a copy of the License at:
16 | *
17 | * http://www.st.com/software_license_agreement_liberty_v2
18 | *
19 | * Unless required by applicable law or agreed to in writing, software
20 | * distributed under the License is distributed on an "AS IS" BASIS,
21 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22 | * See the License for the specific language governing permissions and
23 | * limitations under the License.
24 | *
25 | ******************************************************************************
26 | */
27 |
28 | /* Define to prevent recursive inclusion -------------------------------------*/
29 | #ifndef __MAIN_H
30 | #define __MAIN_H
31 |
32 | /* Includes ------------------------------------------------------------------*/
33 | #include "stm32f2xx.h"
34 | #include
35 |
36 | /* Exported types ------------------------------------------------------------*/
37 | /* Exported constants --------------------------------------------------------*/
38 | /* Exported macro ------------------------------------------------------------*/
39 | /* Exported functions ------------------------------------------------------- */
40 |
41 |
42 | #endif /* __MAIN_H */
43 |
44 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
45 |
--------------------------------------------------------------------------------
/40-DWT/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/40-DWT/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/40-DWT/README.md:
--------------------------------------------------------------------------------
1 | # DWT
2 | 使用DWT模块延时,测量代码运行时间
3 |
--------------------------------------------------------------------------------
/40-DWT/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/40-DWT/main.c
--------------------------------------------------------------------------------
/40-DWT/main.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file Project/STM32F2xx_StdPeriph_Template/main.h
4 | * @author MCD Application Team
5 | * @version V1.1.0
6 | * @date 13-April-2012
7 | * @brief Header for main.c module
8 | ******************************************************************************
9 | * @attention
10 | *
11 | * © COPYRIGHT 2012 STMicroelectronics
12 | *
13 | * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
14 | * You may not use this file except in compliance with the License.
15 | * You may obtain a copy of the License at:
16 | *
17 | * http://www.st.com/software_license_agreement_liberty_v2
18 | *
19 | * Unless required by applicable law or agreed to in writing, software
20 | * distributed under the License is distributed on an "AS IS" BASIS,
21 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22 | * See the License for the specific language governing permissions and
23 | * limitations under the License.
24 | *
25 | ******************************************************************************
26 | */
27 |
28 | /* Define to prevent recursive inclusion -------------------------------------*/
29 | #ifndef __MAIN_H
30 | #define __MAIN_H
31 |
32 | /* Includes ------------------------------------------------------------------*/
33 | #include "stm32f2xx.h"
34 | #include
35 |
36 | /* Exported types ------------------------------------------------------------*/
37 | /* Exported constants --------------------------------------------------------*/
38 | /* Exported macro ------------------------------------------------------------*/
39 | /* Exported functions ------------------------------------------------------- */
40 |
41 |
42 | #endif /* __MAIN_H */
43 |
44 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
45 |
--------------------------------------------------------------------------------
/41-SoftwareTask/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/41-SoftwareTask/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/41-SoftwareTask/README.md:
--------------------------------------------------------------------------------
1 | # SoftwareTask
2 | SoftwareTask简单的任务调度器
3 |
--------------------------------------------------------------------------------
/41-SoftwareTask/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/41-SoftwareTask/main.c
--------------------------------------------------------------------------------
/41-SoftwareTask/main.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file Project/STM32F2xx_StdPeriph_Template/main.h
4 | * @author MCD Application Team
5 | * @version V1.1.0
6 | * @date 13-April-2012
7 | * @brief Header for main.c module
8 | ******************************************************************************
9 | * @attention
10 | *
11 | * © COPYRIGHT 2012 STMicroelectronics
12 | *
13 | * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
14 | * You may not use this file except in compliance with the License.
15 | * You may obtain a copy of the License at:
16 | *
17 | * http://www.st.com/software_license_agreement_liberty_v2
18 | *
19 | * Unless required by applicable law or agreed to in writing, software
20 | * distributed under the License is distributed on an "AS IS" BASIS,
21 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22 | * See the License for the specific language governing permissions and
23 | * limitations under the License.
24 | *
25 | ******************************************************************************
26 | */
27 |
28 | /* Define to prevent recursive inclusion -------------------------------------*/
29 | #ifndef __MAIN_H
30 | #define __MAIN_H
31 |
32 | /* Includes ------------------------------------------------------------------*/
33 | #include "stm32f2xx.h"
34 | #include
35 |
36 | /* Exported types ------------------------------------------------------------*/
37 | /* Exported constants --------------------------------------------------------*/
38 | /* Exported macro ------------------------------------------------------------*/
39 | /* Exported functions ------------------------------------------------------- */
40 |
41 |
42 | #endif /* __MAIN_H */
43 |
44 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
45 |
--------------------------------------------------------------------------------
/41-SoftwareTask/software_task.h:
--------------------------------------------------------------------------------
1 |
2 | #ifndef __SOFTWARE_TASK_H__
3 | #define __SOFTWARE_TASK_H__
4 |
5 | #include "stdint.h"
6 |
7 | //任务个数和占用内存相关
8 | #define CONFIG_TASK_NUMBER 8 //任务个数,1~254,任务号越低,优先级越高
9 | #define RR_EVENTS_TIMER (0x0001)
10 |
11 | #define TCB_SIZE ((CONFIG_TASK_NUMBER >> 3) + 1)
12 |
13 | #define SW_NULL 0
14 |
15 |
16 | typedef uint8_t (*fun_callback)(uint8_t task_id, uint16_t events, void *p);
17 |
18 |
19 | typedef struct
20 | {
21 | uint32_t tick; //任务计时??
22 | uint32_t tick_delay; //任务执行间隔
23 | // events为2字节事件标志,每bit表示一个事件,最大可表示16个事件,
24 | //其中bit0为定时器事件,置1有效,置0无效
25 | uint16_t events;
26 | fun_callback fun; //任务执行函数
27 | } S_TASK;
28 |
29 |
30 | //使用方法流程
31 | // step1:SW_task_tick_cnt()放定示器计时
32 | // step2:SW_task_scheduler()死循环调度,或用定时器调度
33 | // step3:SW_task_create()建立任务;
34 | // step4:SW_task_start_scheduler()使能调度
35 | // events为2字节事件标志,每bit表示一个事件,最大可表示16个事件
36 | //其中bit0为定时器事件,置1有效,置0无效
37 |
38 |
39 |
40 | extern void SW_task_init(void);
41 | extern void SW_task_start_scheduler(void);
42 | extern void SW_task_tick_cnt(void); //放定时器计时
43 | extern void SW_task_set_events(uint8_t task_id, uint16_t event);
44 | extern void SW_task_set_events_irq(uint8_t task_id, uint16_t event);
45 | extern uint8_t SW_task_create(uint8_t task_id, fun_callback callback, uint32_t tick_delay);
46 | extern void SW_task_scheduler(void);
47 |
48 | #endif
49 |
--------------------------------------------------------------------------------
/42-cmd-parser/EWARM/Project.eww:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $WS_DIR$\Project.ewp
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/42-cmd-parser/EWARM/stm32f2xx_flash.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
8 | define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
9 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
10 | define symbol __ICFEDIT_region_RAM_end__ = 0x20020000;
11 | /*-Sizes-*/
12 | define symbol __ICFEDIT_size_cstack__ = 0x400;
13 | define symbol __ICFEDIT_size_heap__ = 0x200;
14 | /**** End of ICF editor section. ###ICF###*/
15 |
16 |
17 | define memory mem with size = 4G;
18 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
19 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
20 |
21 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
22 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
23 |
24 | initialize by copy { readwrite };
25 | do not initialize { section .noinit };
26 |
27 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
28 |
29 | place in ROM_region { readonly };
30 | place in RAM_region { readwrite,
31 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/42-cmd-parser/README.md:
--------------------------------------------------------------------------------
1 | # 说明
2 |
3 | 原作者链接
4 | https://github.com/jiejieTop
--------------------------------------------------------------------------------
/42-cmd-parser/cmd-parser/.gitignore:
--------------------------------------------------------------------------------
1 | .vscode
2 |
--------------------------------------------------------------------------------
/42-cmd-parser/cmd-parser/README.md:
--------------------------------------------------------------------------------
1 | 
2 | [](https://github.com/jiejieTop/cmd-parser/blob/master/LICENSE)
3 | 
4 |
5 | # cmd-parser
6 |
7 | 一个非常简单好用的命令解析器...
8 |
9 | 这个命令解析器有什么用??
10 |
11 | > 简单来说,我希望我的开发板,可以通过命令执行一些处理,比如说我用串口发一个命令`A`,开发板就执行`A`的一些处理,或者,在调试某些`AT`模组的时候,当我收到模组返回的一些指令后,自动执行一些处理。当然,还有其他的地方可以用得上的,兄弟们自行挖掘!!欢迎提交**pr**与点个**star**~
12 |
13 | ## 问题
14 |
15 | 欢迎以 [GitHub Issues](https://github.com/jiejieTop/mqttclient/issues) 的形式提交问题和bug报告
16 |
17 | ## 版权和许可
18 |
19 | cmd-parser 遵循 [Apache License v2.0](https://github.com/jiejieTop/mqttclient/blob/master/LICENSE) 开源协议。鼓励代码共享和尊重原作者的著作权,可以自由的使用、修改源代码,也可以将修改后的代码作为开源或闭源软件发布,**但必须保留原作者版权声明**。
20 |
21 | ## 使用方法
22 |
23 | 1. 注册命令
24 |
25 | 在工程中的任意位置均可调用(在函数外)
26 |
27 | ```c
28 | REGISTER_CMD(test1, test1_cmd);
29 | ```
30 |
31 | 2. cmd初始化
32 |
33 | ```c
34 | cmd_init();
35 | ```
36 |
37 | 3. 解析命令
38 |
39 | ```c
40 | cmd_parsing("test1");
41 | ```
42 |
43 | ## 特色
44 |
45 | - 用户无需关心命令的存储区域与大小,由编译器静态分配。
46 | - 加入哈希算法超快速匹配命令,时间复杂度从O(n*m)变为O(n)。
47 | - 命令支持忽略大小写。
48 | - 非常易用与非常简洁的代码(不足150行)。
49 |
50 | ## 注意事项
51 |
52 | - 本代码目前只支持`MDK`与`IAR`的编译器,对于`gcc`尚未移植,欢迎参与贡献
53 |
54 |
55 | ## test.c
56 | ```c
57 | #include "cmd.h"
58 |
59 | void test1_cmd(void)
60 | {
61 | printf("test1_cmd\n");
62 | }
63 |
64 | void test2_cmd(void)
65 | {
66 | printf("test2_cmd\n");
67 | }
68 |
69 | void test3_cmd(void)
70 | {
71 | printf("test3_cmd\n");
72 | }
73 |
74 | REGISTER_CMD(test1, test1_cmd);
75 | REGISTER_CMD(test2, test2_cmd);
76 | REGISTER_CMD(test3, test3_cmd);
77 |
78 | int main(void)
79 | {
80 | cmd_init();
81 |
82 | while (1)
83 | {
84 | cmd_parsing("test1");
85 | cmd_parsing("test2");
86 | cmd_parsing("test3");
87 | }
88 |
89 | return 0;
90 | }
91 | ```
92 |
--------------------------------------------------------------------------------
/42-cmd-parser/cmd-parser/cmd.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/42-cmd-parser/cmd-parser/cmd.c
--------------------------------------------------------------------------------
/42-cmd-parser/cmd-parser/cmd.h:
--------------------------------------------------------------------------------
1 | /*
2 | * @Author: jiejie
3 | * @Github: https://github.com/jiejieTop
4 | * @Date: 2019-12-13 10:48:52
5 | * @LastEditTime: 2019-12-16 21:26:56
6 | * @Description: the code belongs to jiejie, please keep the author information and source code according to the license.
7 | */
8 | #ifndef _CMD_H_
9 | #define _CMD_H_
10 |
11 | #define CMD_HASH 0xb433e5c6
12 |
13 | #if defined(__CC_ARM) || defined(__CLANG_ARM) /* ARM Compiler */
14 | #define SECTION(x) __attribute__((section(x)))
15 | #define CMD_USED __attribute__((used))
16 |
17 | #elif defined (__IAR_SYSTEMS_ICC__) /* IAR Compiler */
18 | #define SECTION(x) @ x
19 | #define CMD_USED __root
20 | #else
21 | #error "not supported tool chain..."
22 | #endif
23 |
24 |
25 | typedef void (*cmd_handler)(void);
26 |
27 | typedef struct cmd {
28 | const char* cmd;
29 | const char* cmd_mess;
30 | unsigned int hash;
31 | cmd_handler handler;
32 | } cmd_t;
33 |
34 | #define REGISTER_CMD(cmd, handler,desc) \
35 | const char _register_##cmd##_cmd[] = #cmd; \
36 | const char _register_##cmd##_desc[] = #desc; \
37 | CMD_USED cmd_t _register_##cmd SECTION("CMDS")= \
38 | { \
39 | _register_##cmd##_cmd, \
40 | _register_##cmd##_desc, \
41 | (unsigned int)CMD_HASH, \
42 | (cmd_handler)&handler \
43 | };
44 |
45 | void cmd_init(void);
46 | void cmd_parsing(char *str);
47 |
48 | #endif
49 |
50 |
--------------------------------------------------------------------------------
/42-cmd-parser/cmd-parser/test.c:
--------------------------------------------------------------------------------
1 | /*
2 | * @Author: jiejie
3 | * @Github: https://github.com/jiejieTop
4 | * @Date: 2019-12-13 19:15:30
5 | * @LastEditTime: 2019-12-17 13:38:49
6 | * @Description: the code belongs to jiejie, please keep the author information and source code according to the license.
7 | */
8 | #include "cmd.h"
9 |
10 | void test1_cmd(void)
11 | {
12 | printf("test1_cmd\n");
13 | }
14 |
15 | void test2_cmd(void)
16 | {
17 | printf("test2_cmd\n");
18 | }
19 |
20 | void test3_cmd(void)
21 | {
22 | printf("test3_cmd\n");
23 | }
24 |
25 | REGISTER_CMD(test1, test1_cmd,test1 demo);
26 | REGISTER_CMD(test2, test2_cmd,test2 demo);
27 | REGISTER_CMD(test3, test3_cmd,test3 demo);
28 |
29 | int main(void)
30 | {
31 | cmd_init();
32 |
33 | while (1)
34 | {
35 | cmd_parsing("_list");
36 | cmd_parsing("test1");
37 | cmd_parsing("test2");
38 | cmd_parsing("test3");
39 | delay(1000);
40 | }
41 |
42 | return 0;
43 | }
44 |
--------------------------------------------------------------------------------
/42-cmd-parser/main.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/strongercjd/STM32F207VCT6/d4208aaa6066a2ddcba919f2bf62482403c0afb3/42-cmd-parser/main.c
--------------------------------------------------------------------------------