usb接收can转发功能c代码_STM32学习笔记—CAN总线收发数据常见问题分析

本文是《STM32学习笔记》的第9篇,主要分析CAN总线收发数据的常见问题。讨论了CAN总线的特性,STM32的CAN控制器结构,配置参数如波特率、过滤器,以及在USB接收CAN数据转发中的注意事项。同时,列举了如接线错误、波特率配置不当、数据丢包等问题及其解决方案。
摘要由CSDN通过智能技术生成

CAN,Controller Area Network(控制器局域网络),在汽车电子、工业控制领域的应用比较多,通常用于局域组网。

这是第9篇学习分享文章,《STM32学习笔记》之CAN总线收发数据常见问题分析。

CAN总线和UART、I2C、SPI总线最大的区别主要在于取消了传统的地址编码方式,理论上讲总线上的互联节点数不受限制,拥有强大的握手与出错管理及重发机制,具有很强的抗干扰能力。

STM32 CAN 基础内容

CAN网络中主要由CAN控制器和CAN收发器组成,大部分STM32内部都集成了CAN控制器,如果需要使用CAN功能,还需要在外部连接一个CAN收发器才能使用。

5c4e7cc3c71d6141274b43ac6b7fa4a8.png

▲ CAN 网络拓扑结构图

STM32内部集成的CAN控制器,支持 2.0A 和 B 版本的 CAN 协议。还有通信速度更快的CAN FD、 CAN XL,目前一部分STM32支持CAN FD(比如STM32H7)。

下面结合STM32F4描述一下关于CAN基本的信息:

1. CAN总线

CAN总线上的数据是基于差分信号,通常只有两根线:CAN_L和CAN_H。从STM32芯片引出来的两个信号脚CAN发送和CAN接收,有点类似UART的收发引脚,但内部控制逻辑完全不一样。经过CAN收发器后形成两根信号线CAN_L和CAN_H挂到CAN总线上。

2. CAN波特率

CAN 总线属于异步通信,和UART类似,因此具有通信的波特率,标准 CAN 波特率通常支持高达 1 Mb/s。当然,也可以配置成500Kb/s、 250Kb/s等。

CAN 波特率由多个参数决定,下面章节会讲述波特率配置。

3. CAN发送

STM32集

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值