dsp28335 eCAN模块 发送消息

2019-07-15 19:51发布

发送消息过程中   把发送请求复位寄存器CANTRR置1  这时应该出现 要么CANTA置1表示发送成功  要么CANAA置1表示发送失败
    为什么  我的有时候是上面的结果    有时候又两个都没置1?   可能的原因有哪些?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
heixue509
1楼-- · 2019-07-15 23:21
我顶啊   大神都不屑于回这种问题
heixue509
2楼-- · 2019-07-16 02:10
自己调好了  以前是这样ECanbRegs.CANTRR.bit.TRR1=1;  把TRR1置1
改为:
    ECanbShadow.CANTRR.all=ECanbRegs.CANTRR.all;
    ECanbShadow.CANTRR.bit.TRR1=1;
    ECanbRegs.CANTRR.all=ECanbShadow.CANTRR.all;

继续问大神: 这两个的区别在哪里 ???
       
244531776
3楼-- · 2019-07-16 02:40
影子寄存器的问题,,ECAN寄存器只接受32位数据,而你给ECanbRegs.CANTRR.bit.TRR1=1; 这句并不是32位数据。。必须通过影子寄存器转换成32位数据

一周热门 更多>