本帖最后由 tcc8073 于 2015-12-9 09:39 编辑
STM32F103 CAN应用的总结:
1.CAN的设置只要按照库提供的方法做就可以;
2.请特别注意在屏蔽方式下,标准帧的11位是放在寄存器的21-31位;扩展帧的高18位放在3-20位;在实际应用的时候选定了标准帧方式时候只有21-31和0-2这14位是有效果的;同样在扩展帧模式下,0-31位都有效;请注意,0-2这3位在标准帧和扩展帧方式下都是参加比较的(设置的时候请按照设置的方式对应设置这1-2位,0位请设置为0);
3.远程帧这个我个人觉得没有什么用处,如果需要的话,在开始初始化的时候屏蔽掉32位寄存器的1位;
4.特别注意的是,在做寄存器设置的时候注意,扩展帧的时候给定的数据左移动3位再把低3位设置好后赋值,标准帧的时候给定的数据左移动21位再把低3位设置好后再赋值;
5.CAN虽然是稳定的,但是如果二个CAN总线设备互相高速发送接收数据,还是会有丢码现象,但是可以做到总线不会死掉,可以恢复正常数据通讯.
|