[STM8] 关于CAN通讯设置问题

[复制链接]
2790|5
 楼主| lsj19851118 发表于 2013-1-8 21:44 | 显示全部楼层 |阅读模式
用5288单片进行CAN通讯,在主函数中的循环外发送了一个CAN报文,然后就执行while循环了,可是用示波器看  那个CAN报文一直在发送。
程序大概是这样的:
main()
{
    定义变量;
   执行CAN发送函数CAN_TRX();
   while(1)
    {;}
}

可是用示波器看,CAN的报文一直在发送。其实我只想让CAN_TRX();执行一次,可是就是停不下来
sy_lixiang 发表于 2013-1-9 02:22 | 显示全部楼层
贴代码上来
IJK 发表于 2013-1-9 09:47 | 显示全部楼层
CAN一般情况下需要至少2个节点。
LZ这种情况,多数可能因为只有1个节点;只有1个节点的情况下,没有其它节点回ACK,会导致CAN报文一直在发送。

评分

参与人数 1威望 +1 收起 理由
lsj19851118 + 1 说的对,问题我今天找到了,正是这个问题。.

查看全部评分

uet_cache 发表于 2013-1-9 10:44 | 显示全部楼层
我也在调CAN, 也是很奇怪。 回环方式正确,外联方式在2008库下正常,移植到LIBRARY3.1版本上就不行了。LIBRARY3.0版本回环正常,就是换了个外联方式,就不行。而2008就可以。板子相同,硬件相同。。硬件没问题,软件上的配置两者没区别。。。还在找原因。。。
uet_cache 发表于 2013-1-9 10:56 | 显示全部楼层
我的CAN问题解决了,复用时钟没打开。。  CAN也调了我大半天,,搞死了。。。
lin34337151 发表于 2013-1-12 19:48 | 显示全部楼层
我也在调CAN,最近搞死我了,我用3.5的库可以发,可以收。但是项目主管移植了一个UCOS-2,用的3.0的库,我把函数放到那里去怎么也发不出数据。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

15

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部