看你配置,应该是地址整错了,app 0x8040000那么bootload输出显示的onchip_flashd的offset应该是20000,也就是你的bootload固件的地址和你程序上设置的地址不一致。记住app等的地址是在bootload的20000之上的
中的app地址应该20000 你原有的地址down和app的地址刚好相反了。并且有20000的空间你没有用,那么factory分区就超出flash了。
发布于4年前
看你配置,应该是地址整错了,app 0x8040000那么bootload输出显示的onchip_flashd的offset应该是20000,也就是你的bootload固件的地址和你程序上设置的地址不一致。记住app等的地址是在bootload的20000之上的
中的app地址应该20000 你原有的地址down和app的地址刚好相反了。并且有20000的空间你没有用,那么factory分区就超出flash了。
发布于4年前
STM32的话需要修改hal_can.c文件,里面的初始化函数有bug你参照官方的hal库对应的文件修改初始化步骤就可以了,添加335行请求初始化也就是INRQ写1参考手册说的很明白这句话!
这个问题也是花了我2天时间才搞定的…
其他的话drv.c和drv.h你直接去官方bsp找到放进对应目录就行了,board.h里面有配置CAN的具体步骤。
问 ota fal初始化后错误