完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
M3与M4差别不小,移植改动较大,请熟读这两芯片datasheet。
|
|
|
|
f4和f0差不多,看看官方有个从f1移植到f0的应用笔记
|
|
|
|
手动修改
|
|
|
|
1、官方的移植手册仅说明外设资源上的差别,并没有就怎么移植阐述清除。
2、芯片的启动过程是:BOOTLOADER--->启动文件-->应用程序。F1和F4的BOOTLOADER固化在芯片里面,无法修改,起升级作用;因此主要看启动文件的差别。 3、F1和F4启动文件的相同点:堆栈初始化、设置系统时钟频率调用接口、进入C应用程序 4、F1和F4启动文件的不同点:向量表定义、地址重映射和中断向量表的转移、中断寄存器的初始化 问题来了:如果启动文件的向量表不定义完整,比如:某个外设的中断向量没有定义,还能否正常启动呢?如果F1的启动文件烧录到F4芯片中,F4能否启动呢? |
|
|
|
程序移植咯,容易的
|
|
|
|
F1和F4的差别还是挺大的,建议楼主先用F4点亮LED,然后在做移植,同时可以根据移植的功能,参考官方的库例子
|
|
|
|
直接拖过去,编译过不了的就改
|
|
|
|
先编译,对着参考手册,哪出错改哪
|
|
|
|
先看资料, 再编译, 看哪里出错
|
|
|
|
先了解一下两个系列的差异,看一下哪一些是跟库有关的,然后对照F4的手册修改。
|
|
|
|
工程文件好多都要换的
|
|
|
|
两种思路:
1.建立一个M4的空工程文件,可以点LED灯,然后把M3的移过去,可以看到某些比如启动文件会有差异 这可能只涉及到几行代码,但可以提醒你,最底层是什么不同 2.然后下载两个大一点的M4和M3代码,对比一下库是否有不同,如果有不同,那么有可能无法直接移,可以考虑移一个分支,比如时钟配置,看是否从main()->调用时钟函数,M3和M4中是否一样,名称如果不同,这样可能改动会非常大 总结:如果你发现改动非常大,就要做一下软件评估了,可能易植不太划算,建议咨询一下FAE和技术支持,他们会告诉你答案,如果你还是不知道答案,那么就按照这种评估方式,进行逐个修改吧。 有BUG可能再所难免,所以需要慎重。 您的问题讨论我和同事会进行讨论,把结果更新到开发板手册中,做一个专题进行讲解分析,该文档将收录到STM32神舟IV号开发板用户手册中 |
|
|
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
2105 浏览 1 评论
AD7686芯片不传输数据给STM32,但是手按住就会有数据。
1941 浏览 3 评论
4537 浏览 0 评论
如何解决MPU-9250与STM32通讯时,出现HAL_ERROR = 0x01U
2084 浏览 1 评论
hal库中i2c卡死在HAL_I2C_Master_Transmit
2599 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 22:41 , Processed in 0.707354 second(s), Total 68, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号