[求助] 关于CAN的疑问

benbending   2012-8-29 14:52 楼主
配置完发送报文,例如:CANMessageSet(CAN0_BASE, 1, &g_sCANMsgObject1, MSG_OBJ_TYPE_TX);

调试过程中,CAN 控制寄存器(CANCTL)的INIT 位置位以致发送有误,请问该怎么办?按照datasheet所说,INIT置位的话CAN就不能正常工作了,求解。

回复评论 (8)

回复 楼主 benbending 的帖子

具体用的哪两颗 MCU,不同的系列的配置有差别的。
这些细节都很重要。
点赞  2012-8-29 14:59

回复 沙发 Study_Stellaris 的帖子

LM3S5K31,10MHz,
另一个配置波特率为50K。
求解,大侠。

[ 本帖最后由 benbending 于 2012-8-30 15:01 编辑 ]
点赞  2012-8-29 15:21

回复 板凳 benbending 的帖子

两颗都是 5K31 ?晶振是多少?
主频多少?
为什么不把波特率配置成一样的呢?
点赞  2012-8-30 16:21

回复 4楼 Study_Stellaris 的帖子

都配置成50k波特率了。
点赞  2012-8-30 16:24

回复 4楼 Study_Stellaris 的帖子

10MHZ晶振,一个是5K31,另一个不知道什么芯片,只负责与之CAN通讯,它的波特率是50K。
点赞  2012-8-30 16:26
CANBitRateSet(CAN0_BASE, SysCtlClockGet(), 50000);
点赞  2012-8-30 16:29

回复 5楼 benbending 的帖子

有用到 GPIOPinConfig 吗?
点赞  2012-8-30 16:30

回复 8楼 Study_Stellaris 的帖子

谢谢,我知道错误了。把主频跟晶振概念混了。
点赞  2012-8-31 09:17
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复