欢迎分享,转载请注明来源:内存溢出
你应该去学一下汇编,c文件或者h文件以及asm文件或者s文件都不会放到单片机里面,setup.s文件里面是汇编代码,他定义了一些接口和异常处理方法,根据boot01的选择,从内部flash启动的所有过程在setup.s文件中可查,文件定义了最开始调用的函数和main函数的位置,以及中断入口和中断异常处理办法。就这么多,别的都在.c文件中1、为你的bootloader程序选择存储器地址,因为STM32的存储器FLASH存储程序代码空间为512K,需要进行划分。2、如果需要使用JTAG在线调试,则需要配置区域:3、为您的用户程序选择合适的存储空间:同时配置在线调试区域:4、bootloader程序编写基本流程如下:)检测有无需要更新的标志,用户可自定义。比如说读取flash某位置存储的字节作为标志位。2)如需更新,则调用STM32的FLASH程序擦鞋用户代码部分。3)将新的bin文件(即2进制文件直接烧写进去,需要将keil生成的hex文件转换为bin文件,然后存储到外扩展的flash中)写入到STM32自带的FLASH中去,记住需要与上述设置的用户代码存储区一致。4)更新成功后再跳转至用户程序。5、用户程序需要注意一点,需要在程序运行前重新设置中断向量表,即:NVIC_SetVectorTable()。6、用STM32自带的烧录软件进行烧录时,需要修改项目如下:1)打开安装后目标文件中的map文件夹,我们所用的STM32为512Kflash,所以选取STM32_High-density_512K.STmap,将其分解为两个STmap文件(此文件可用记事本 打开)STmap文件中,扇区是以每2K为一page来显示的,所以boot区我们只需要到page7,用户区我们需要page8到最后。修改完成后再次打开此软件会发现多出了两个flash选项,可以根据此处来选择需要存储的代码区。然后还有一处需要修改
赞
(0)
打赏
微信扫一扫
支付宝扫一扫
如何创建自己电脑开机动态密码
上一篇
2023-04-13
数控车床或仪表 , 里面输入程序 L,M,G ,Z,X等等 这些各代表什么?
下一篇
2023-04-13
评论列表(0条)