STM32--简单的IAP操作
能与使用了预分频器的AHB一起使用,时钟系统应该等于HCLK时钟。该特性只能用在时钟频率为8MHz或低于8MHz时,可以直接使用的内部RC振荡器(HSI),或者是主振荡器(HSE),但不能用PLL。
3.当AHB预分频系数不为1时,必须置预取缓冲区处于开启状态。
4.只有在系统时钟(SYSCLK)小于24MHz并且没有打开AHB的预分频器(即HCLK必须等于SYSHCLK)时,才能执行预取缓冲器的打开和关闭操作。一般而言,在初始化过程中执行预取缓冲器的打开和关闭操作,这时微控制器的时钟由8MHz的内部RC振荡器(HSI)提供。
5.使用DMA:DMA在DCode总线上访问闪存存储器,它的优先级比ICode上的取指高。DMA在每次传送完成后具有一个空余的周期。有些指令可以和DMA传输一起执行。
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
在ST官网下载IAP历程,链接http://www.st.com/stonline/products/support/micro/files/an2557.zip 移植历程到自己的开发板上 主要修改main.c中的串口初始化函数IAP_Init(),根据需要再添加一个开发板端口初始化的函数,修改int main()函数里进入IAP的条件 应用程序的修改主要是四点 1、 options for target-->将ROM1修改成0x8002000 2、 option for target-->linker-->勾选use memory layout from target dialog 3、 options for target -->user 在run user programs after build/rebuild下给run#1和run#2打勾,并分别填上I:\embedded\Keil Mdk\ARM\BIN40\fromelf.exe --bin -o my.bin output\release.axf和I:\embedded\Keil Mdk\ARM\BIN40\fromelf.exe -z output\release.axf,注意地址要正确,主要目的是调用keil自带的hex转工具将keil编译程序后生成的release.axf转成bin文件 4、 在程序中重定向向量表NVIC_SetVectorTable(NVIC_VectTab_FLASH+0x2000, 0x2000); 下载程序方法: 1、 现在IAP的引导程序,也就是移植官网的那个程序。 2、 使用开始—所有程序--附件—通信—超级终端进行下载,超级终端配置为无数据流控制,另外波特率、数据位等要与例程的串口配置要对应,输入1使开发板进入等待下载的模式,点击超级终端的传送à传送文件,选择文件,协议使用例程的Ymodern,下载完后输入2即可运行应用程序 |
STM32IAP操 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)