你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

查看: 2191|回复: 2

stm32 自动复位后 对 CAN接收数据的影响

[复制链接]

1

主题

1

回帖

0

蝴蝶豆

初级会员

最后登录
2018-10-29
发表于 2013-6-22 14:38:18 | 显示全部楼层 |阅读模式
 最近在调试stm32 的IAP 通过CAN来更新程序,发现一个很怪的现象,设置复位深度的不同影响CAN接收数据,但我不知道为什么,找不到具体的原因。第一种方法,是通过置位 NVIC中应用程序中断与复位控制寄存器(AIRCR)的VECTRESET 位(位偏移:0),程序在复位后重新接收数据时有时接收数据时丢掉了一帧数据,比如一行HEX数据分三帧,只接收到了后俩帧,第一帧没收到,不知道为什么;后来把复位设置为另一种模式复位的第二种方法,是置位同一个寄存器中的 SYSRESETREQ位,居然没有出现上面提到的现象,试了很多次,都没有问题,虽然更新程序的问题得到解决,但是不明白所以然,我到底是否接到了数据,还是在接收的过程中第一帧数据被挤掉了还是根本没接到等,先把这些疑问忽略,对于复位深度的设置,为什么截然不同呢?希望知道的大侠给解答一下,不然虽然问题得到解决,感觉不踏实。
回复

使用道具 举报

1

主题

1

回帖

0

蝴蝶豆

初级会员

最后登录
2018-10-29
 楼主| 发表于 2013-6-22 22:33:43 | 显示全部楼层

RE:stm32 自动复位后 对 CAN接收数据的影响

版主  过来看看啊
回复 支持 反对

使用道具 举报

134

主题

4489

回帖

239

蝴蝶豆

版主

最后登录
2020-12-9
发表于 2013-6-24 11:17:13 | 显示全部楼层

RE:stm32 自动复位后 对 CAN接收数据的影响

第一组数据是在什么时候发出的?你可以用过CAN总线监听工具,看一下数据,另外,复位以后是不是发生了数据丢失,可以加断点在CAN中断中,看看是否进入了中断。
回复 支持 反对

使用道具 举报

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版