今天弄了一天的usb的iap,按理来说这个问题网上资料非常的多,操作也不是很复杂,我这个问题倒是比较棘手。 我的一块板子死活iap不能成功,拿到红牛的开发板上同样的程序,同样的dfu操作一点问题都没有,升级程序非常顺利。 我的板子直接用ulink烧写,跑该程序也一点问题没有,也可以正常使用。 具体查到细节处: 1 我的板子烧写上dfu程序,把应用程序烧写上。 2 用ulink在线查看0x8003000的存储空间内容,该内容莫名奇妙,没有规律,if (((*(__IO uint32_t*)ApplicationAddress) & 0x2FFE0000 ) == 0x20000000)这个条件不满足,用红牛开发板看,这个条件是可以满足的。 问题:问题似乎出在我的板子上了,但是能够跑正常程序,dfu时我也校验过,校验也是正确的,为啥升级进去的程序就出问题呢?难道校验机制出问题了?真是非常不理解哪里会出现乱子了 |
RE:奇怪问题,关于usb的iap
2、红牛的是否有自己写的IAP程序?
3、你想实现什么功能?自己写IAP部分,按照自己的格式烧写程序吗?