理论上网上大把,不再啰嗦。。。。也有一段时间自己看CAN理论,然后调试CAN一脸闷逼。。。根本从下手,其实很简单
主要的是调试,打个比方随手找的这个飞控的CAN模块
STM32F427 CAN1_TX CAN1_RX是芯片CAN功能引脚
1.基本的配置,测试好回环模式CAN_Mode_LoopBack
2.CAN普通模式CAN_Mode_Normal,(敲黑板)这个时候可以拿示波器测试一下两个探头测CAN1_TX、CAN1_RX,与示波器共地,看有无波形,假设在发数据没有波形,则需要检查单片机配置是否正常。假设单片机配置没有问题,则CAN1_TX、CAN1_RX会有波形产生。同样可用示波器做两通道的压差显示波形。
3.假设CAN1_TX、CAN1_RX有波形,那就再测一下转换芯片CAN_H、CAN_L是不是有波形,假设没有波形那就需要检查一下转换芯片的问题啦。。。。。
备注:
注意CAN_H和CAN_L之间的电阻。
其次波特率计算的时候,耐着点性子其实很好理解。注意最好按照CIA推荐采样点来计算
<=500Kbps 87.5%
>500kbps 80%
>800kbps 75%
很多时候会听到J1939、canopen等,这些都是应用协议,是基于can 2.0b之上的应用协议,就好比我们在uart上的自己定的私有协议,标识符等。
如果觉得《STM32 GD32 CAN调试调试调试》对你有帮助,请点赞、收藏,并留下你的观点哦!