IAP_Main

所属分类:单片机开发
开发工具:C/C++
文件大小:18323KB
下载次数:17
上传日期:2018-08-14 18:04:59
上 传 者Logan_lv
说明:  在STM32L011上通过I2C接口实现IAP,客户计划使用 STM32L011xx开发一款光模块产品,需要 MCU支持 I2C接口下载代码。但 STM32L011xx内部 Bootloader没 有支持 I2C接口,所以需要我们使用 IAP的方式来帮助客户实现该功能。
(IAP is implemented through I2C interface on STM32L011. Customers plan to use STM32L011xx to develop an optical module product, and need MCU to support I2C interface to download code. But STM32L011xx has no Bootloader inside. There is support for I2C interface, so we need to use IAP to help customers achieve this function.)

文件列表:
IAP_Main (0, 2016-08-15)
IAP_Main\AN3078 IAP by I2C application note Rev1.pdf (712277, 2016-08-15)
IAP_Main\GPIOTEST_APP.zip (9653758, 2016-08-15)
IAP_Main\Host_Side_Test.zip (8902496, 2016-08-15)
IAP_Main\IAP_MAIN.zip (649392, 2016-08-15)

2016-08-15 IAP by I2C for STM32L011K4xx 1/文件说明 该文件包含三个工程: IAP_MAIN :实现IAP的程序,实际的BootLoader GPIOTEST_APP:简单的实现一个GPIO的翻转程序,该工程的代码已经设置起始地址为0x08000800,生成的Bin文件就是需要被下载到目标MCU的应用程序。 Host_Side_Test:这个是使用了一个STM32F401Discovery板子来模拟了一个I2C的主机,使用I2C接口(还有两个GPIO:PB0+PB1)来实现将片内的代码下载到目标MCU中的目的。 2/如何使用 IAP_MAIN 中的代码支持通过I2C接口来改写内部的Flash,其中目前的应用地址为0x08000800,IAP代码自身占用空间范围:0x0800000---0x080007ff,一共2KByte(实际为2016字节,不到2K)。此工程的代码需要先下载到MCU中。 GPIOTEST_APP中的代码直接生成Bin文件,通过ST-LinkUtility下载到STM32F401的0x08010000地址中。 将Host_Side_Test工程的代码下载到STM32F401的0x08000000地址中。 连接目标板子(Nucleo-L011-32)和STM32F401-Discovery 按照如下方式。 STM32F401-Discovery Nucleo-L011-32 PB0 -------------------------- NRST PB1 -------------------------- PA0 PB6(SCL)-------------------------- PB6 PB9(SDA)-------------------------- PB7 GND -------------------------- GND 3.3V -------------------------- 3.3v 给Nucleo-L011-32供电。这时就开启了I2C下载程序,之后,能够看到LD3每隔一秒闪烁一次。 通过STM32F401-Discovery的黑色(B2 RESET)按键,可以重复下载APP程序到另外一块目标板子(前提是已经固化好IAP代码)。 3/注意事项 目标代码必须是0x200的整数倍,0x08000800,0x08000400,0x08000200均是有效的地址,可根据实际的应用去改写。 下载的代码的地址,必须是0x80的整数倍(因为L011的页大小是128字节,只能整页地址才能擦除改写)。 编程代码中使用的代码大小,是在生成目标代码之后通过软件工具修改的,以后还需要根据你自己的代码大小做修改。 如有疑问,可以发送邮件到tomas.li@st.com 连接。 2016-08-15 Tomas Li

近期下载者

相关文件


收藏者