STM32 CAN外设(基于STMF103C8T6)

STM32内置bxCAN外设(CAN控制器),支持CAN2.0A和2.0B,可以自动发送CAN报文和按照过滤器自动接收指定CAN报文,程序只需处理报文数据而无需关注总线的电平细节

波特率最高可达1兆位/秒3个可配置优先级的发送邮箱2个3级深度的接收FIFO

14个过滤器组(互联型28个)时间触发通信、自动离线恢复、自动唤醒、禁止自动重传、接收FIFO溢出处理方式可配置、发送优先级可配置、双CAN模式。

CAN通信的两个引脚是复用在了PA11和PA12上,只能使用这两个作为CAN通信引脚。(该芯片的USB和CAN无法同时使用的)

下图为CAN收发器电路原理图以及实物图

CAN报文流程

CANTX是输出。引脚控制权在CAN外设,配置为复用推挽输出模式,输入引脚可以配置为上拉输入,当控制器接收到报文后会自动和配置的过滤器进行比对,符合条件的报文会自动保存在FIFO队列中,CPU直接读取FIFO即可。

发送基本流程

其中RQCP(Request completed)请求完成,TXOK(Transmission OK)发送成功,TME(Transmit mailbox empty是发送邮箱空,TME=1说明当前邮箱是空闲状态的。

接受基本流程

相关推荐
honey ball11 小时前
EMC内参二(1-33页)学习【技术进阶】
开发语言·单片机·嵌入式硬件·学习
大牛攻城狮12 小时前
使用stm32cubeide stm32f407 lan8720a freertos lwip 实现udp client网络数据转串口数据过程详解
stm32·freertos·lwip·stm32cubeide·网络转串口·lan8720a·udp服务端客户端
触角0101000112 小时前
STM32看门狗应用实战:独立看门狗与窗口看门狗深度解析(下) | 零基础入门STM32第九十五步
驱动开发·stm32·单片机·嵌入式硬件·物联网
USER_A00113 小时前
【STM32】综合练习——智能风扇系统
stm32·单片机·嵌入式硬件·智能风扇
狄加山67513 小时前
STM32 基础2
stm32·单片机·嵌入式硬件
爱喝西北风的东北风14 小时前
状态机思想编程
单片机·嵌入式硬件·fpga开发
PegasusYu15 小时前
Electron使用WebAssembly实现CRC-32 STM32校验
stm32·electron·nodejs·wasm·webassembly·crc32·crc-32
柒月玖.16 小时前
基于AT89C51单片机的加减乘除液晶计算机设计
单片机·嵌入式硬件
剑鞘的流苏16 小时前
DC-DC电路和LDO电路
单片机·嵌入式硬件
CDialog19 小时前
qemu仿真调试esp32,以及安装版和vscode版配置区别
单片机·嵌入式硬件