STM32 CAN发送邮箱和接收FIFO

ops/2024/9/22 23:34:53/

STM32的CAN发送邮箱和接收FIFO

CAN发送邮箱

  • CAN外设一共有3个发送邮箱,即最多可以缓存3个待发送的报文。每个发送邮箱中包含有标识符寄存器CAN_TIxR、数据长度控制寄存器CAN_TDTxR及2个数据寄存器CAN_TDLxR、 CAN_TDHxR,它们的功能如下:
寄存器名功能
标识符寄存器CAN_TIxR存储待发送报文的ID、 扩展ID、 IDE位及RTR位
数据长度控制寄存器CAN_TDTxR存储待发送报文的DLC段
低位数据寄存器CAN_TDLxR存储待发送报文数据段的Data0-Data3这四个字节的内容
高位数据寄存器CAN_TDHxR存储待发送报文数据段的Data4-Data7这四个字节的内容
  • 当要使用CAN外设发送报文时,把报文的各个段分解,按位置写入到这些寄存器中,并对标识符寄存器CAN_TIxR中的发送请求寄存器位TMIDxR_TXRQ置1,即可把数据发送出去。
  • 其中标识符寄存器CAN_TIxR中的STDID寄存器位比较特别。 CAN的标准标识符的总位数为11位,而扩展标识符的总位数为29位的。当报文使用扩展标识符的时候,标识符寄存器CAN_TIxR中的STDID[10:0]等效于EXTID[18:28]位,它与EXTID[17:0]共同组成完整的29位扩展标识符。

CAN接收FIFO

  • CAN外设一共有2个接收FIFO,每个FIFO中有3个邮箱,即最多可以缓存6个接收到的报文。当接收到报文时, FIFO的报文计数器会自增,而STM32内部读取FIFO数据之后,报文计数器会自减,通过状态寄存器可获知报文计数器的值,而通过前面主控制寄存器的RFLM位,可设置锁定模式,锁定模式下FIFO溢出时会丢弃新报文,非锁定模式下FIFO溢出时新报文会覆盖旧报文。
  • 跟发送邮箱类似,每个接收FIFO中包含有标识符寄存器CAN_RIxR、数据长度控制寄存器CAN_RDTxR及2个数据寄存器CAN_RDLxR、 CAN_RDHxR,其功能如下:
寄存器名功能
标识符寄存器CAN_RIxR存储收到报文的ID、 扩展ID、 IDE位及RTR位
数据长度控制寄存器CAN_RDTxR存储收到报文的DLC段
低位数据寄存器CAN_RDLxR存储收到报文数据段的Data0-Data3这四个字节的内容
高位数据寄存器CAN_RDHxR存储收到报文数据段的Data4-Data7这四个字节的内容

http://www.ppmy.cn/ops/8902.html

相关文章

前端js控制元素移动

背景 页面中有多个表格,每个表格中均有一从右到左匀速移动的元素,随着元素移动需要在表格中增减数据,由于使用css3动画无法捕捉元素移动位置,所以这里采用js控制dom的写法 解决办法 最终代码放在文章的最后,各位看官…

学习前端第二十四天(对象的引用和复制,对象方法,this)

一、对象的引用和复制 赋值了对象的变量存储的不是对象本身,而是该对象“在内存中的地址”,对象储存着变量的地址。 所以当一个对象变量被复制 ,其实是另一个对象复制了这个对象的引用,而该对象自身并没有被复制。 现在我们有了…

AI Agent应用项目

AI Agent应用项目广泛涉及多个领域,包括但不限于旅游和酒店业、制造、医疗、金融、教育、零售等。在旅游和酒店业中,AI Agent能够提供自然、流畅和个性化的客户交互服务,如信息咨询、预订、退订、投诉等1。在制造业中,AI Agent通过语音识别和自然语言处理技术为操作工人提供…

10-菜刀连接木马

找到了漏洞后,并且上传了木马之后才能使用的两款工具 中国菜刀和冰蝎 想办法获取别人的cookie,cookie中有session-id 一、中国菜刀 1、必须提前已经完成木马植入然后才能使用 2、木马必须是POST请求,参数自定义,在菜刀里给出…

关于分布式事务的raft算法

raft算法保证一致性和分区容错性,通过领导选举和日志复制保证一致性,即使分区错误也能保证一致性, 自旋时间来保证能不能当领导 心跳时间,发送日志 简单来说就是所有的节点自旋,然后时间先到的节点给其他节点发送投票申…

Java工具类:封装Okhttp实现:Get、Post、上传/下载文件、Stream响应、代理ip

不好用请移至评论区揍我 原创代码,请勿转载,谢谢! 一、介绍 本文代码是引入Okhttp_v4.11.0,在这个基础上进行二次封装使调用方更加容易,只关注业务,而无需处理各种请求相关的重复性操作,类似文件类型请求体封装或者Form表单构造及body传参等一系列处理工具代码包括但不限…

信号继电器HBDXH-200/1辅助电源110VDC 启动电压110VDC JOSEF约瑟

用途 适用于直流操作的继电保护和自动控制线路中,作为信号指示用,有多组动合保持触点。满足现场指示和遥信要求。 技术参数 启动信号额定值:直流电流型:10mA~4A. 直流电压型:220VDC、110VDC、48VDC、24VDC 辅助电源电压:220VDC、110VDC、220VAC、110…

牛客NC197 跳跃游戏(一)【中等 动态规划 Java、Go、PHP】

题目 题目链接: https://www.nowcoder.com/practice/23407eccb76447038d7c0f568370c1bd 思路 答案说的merge区间就是每个A[i]的地方能跳到的最远坐标是A[i] [i], 有一个maxReach,遍历一遍A[i], 不断刷新MaxReach, 如果某个i 位置比maxReac…