微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > DSP学习交流 > dsp28335 eCAN模块 发送消息

dsp28335 eCAN模块 发送消息

时间:10-02 整理:3721RD 点击:
发送消息过程中   把发送请求复位寄存器CANTRR置1  这时应该出现 要么CANTA置1表示发送成功  要么CANAA置1表示发送失败
    为什么  我的有时候是上面的结果    有时候又两个都没置1?   可能的原因有哪些?

我顶啊   大神都不屑于回这种问题

自己调好了  以前是这样ECanbRegs.CANTRR.bit.TRR1=1;  把TRR1置1
改为:
    ECanbShadow.CANTRR.all=ECanbRegs.CANTRR.all;
    ECanbShadow.CANTRR.bit.TRR1=1;
    ECanbRegs.CANTRR.all=ECanbShadow.CANTRR.all;
继续问大神: 这两个的区别在哪里 ?
       

影子寄存器的问题,,ECAN寄存器只接受32位数据,而你给ECanbRegs.CANTRR.bit.TRR1=1; 这句并不是32位数据。必须通过影子寄存器转换成32位数据

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top