capcomsnk 发表于 2024-7-15 10:22:16

CAN遇到奇怪的问题。

本帖最后由 capcomsnk 于 2024-7-15 10:26 编辑

CAN通讯,500Kbps。
1.上位机控制设备发送一帧报文的情况下,下位STC芯片存在有相当大的概率无法收到的情况(用程序测试,收到就返回该报文),报文接收的程序是根据样例里的最新源码改的。
2.用CAN盒测试发送相同的CAN帧给下位STC芯片,芯片能收到,并返回报文。
3.使用CAN盒作为监测,确实也能监测到上位机控制设备发送了1帧报文。

这是哪里的设置问题吗?

hsrzq 发表于 2024-7-15 10:38:41

1. 波特率对不对?2. 端口模式对不对(包括功能脚切换对不对)?3. 是否进了掉电模式?

capcomsnk 发表于 2024-7-15 11:24:46

1.波特率没问题。STC芯片能收到报文,但是不是每次都能收到。
2.能收到报文,但是上位机发报文只发一帧,有时候收不到,

DebugLab 发表于 2024-7-15 11:25:24

是否受到了某些干扰?
连接到STC 的 CAN PHY IC 是否稳定可靠?
PI SI 设计是否合理?
建议使用示波器观察一下出现异常时的波形

乘风飞扬 发表于 2024-7-15 13:15:28

可试试直接烧录屠龙刀例程包里面的例子:14-CAN1-CAN2总线标准帧扩展帧同时使用收发测试
收到CAN总线报文通过串口打印出来。

或者烧录例子:36-USB-CDC转2组CAN
使用STCAI-ISP软件的CAN助手显示接收报文,用法参考演示视频:
https://www.stcaimcu.com/plugin.php?id=x7ree_v:x7ree_v&code_7ree=1&id_7ree=306

capcomsnk 发表于 2024-7-22 15:50:17

DebugLab 发表于 2024-7-15 11:25
是否受到了某些干扰?
连接到STC 的 CAN PHY IC 是否稳定可靠?
PI SI 设计是否合理?


这问题研究了许久程序,没有头绪,没有解决。

    打算研究一下波形。发现 CANRX CANTX 脚的波形 貌似长得一样。这是正常的吗?

llyymm 发表于 2024-7-22 16:35:47

波形初看确实都差不多,要仔细分析的波形信息,还有就是网络接线要用双绞线且带屏蔽的(1米以内没事),下位机CAN错误寄存器要及时清除,如果设置为接收直接返回却没有回,用打印函数把接收数组变量数据发送到串口看看是否正常接收到数据?
页: [1]
查看完整版本: CAN遇到奇怪的问题。