嵌入式技术论坛
直播中

孙成红

7年用户 1387经验值
私信 关注
[问答]

为什用到STM32F103VE+CAN通讯却显示异常呢

最近用到STM32F103VE+CAN通讯,用最新版本的RT-Thread studio构建工程(4.0.3),使能CAN设备框架,一切顺利,但是使用can_sample和can_send_test时却遇到了can dev write data failed!
理论上我用CAN分析工具,即使波特率没设对(反复对过,应该是设置正确的),也不影响每次的CAN发送啊,
但实际只有第一次是发送出去的,接下去的CAN分析工具一点反应都没有。

1.jpg

哪位同学有成功的案例,或者网上有STM32F103的示例,谢谢。

回帖(5)

张亮

2022-10-12 11:35:48
好多遇到CAN通信问题的大都是波特率设置不正确,实际的波特率与设置的不一致,可以检查一下时钟配置和波特率配置。
举报

杨福林

2022-10-12 11:35:54
can驱动的默认波特率是1mbps,can的时钟是按波特率表设置的,可以检查下是不是rtt工程里can的时钟是否与波特率表一致
举报

杨平

2022-10-12 11:36:02
stm32的can问题,绝大多数是波特率的设置引起的,要检查:
1、是否有晶体;
2、can的驱动频率;
3、can的有关设置
举报

刘满贵

2022-10-12 11:36:10
在can.h和drv_canc中的rt_can_filter_item 和 rt_can_msg, 感觉有两处段域定义不对?
举报

王强

2022-10-12 11:36:18
我也遇到了,大概率是卡在can.c 中的_can_int_tx()中的,rt_completion_wait()函数中了。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分