STM32上的CAN通讯是什么?CAN模式功能的详细分析

阅读: 评论:0

STM32上的CAN通讯是什么?CAN模式功能的详细分析
CAN模式
.工作模式 通过CAN_MCR寄存器控制INRQSLEEP 1.初始化INRQ=1 SLEEP=0 软件初始化应该在硬件 2.正常INRQ=0 SLEEP=0 在初始化完成后,软件应该让硬件进入正常模式,以便正常接收和发送报文 3.睡眠SLEEP=1 bxCAN可工作在低功耗的睡眠模式 
.测试模式 通过CAN_BTR寄存器控制LBKMSILM 1. 静默 可以接受不能发送
2. 循回 可以发送不能接受 3.环回静默 只能自发自收 
.调试模式
STM32标识符筛选器
CAN协议里,报文的标识符不代表节点的地址,而是跟报文的优先级相关的。因此,节点在接收报文时-根据标识符的值-决定软件是否需要该报文;如果需要,就拷贝到SRAM里;如果不需要,报文就被丢弃且无需软件的干预。为满足这一需求,bxCAN为应用程序提
供了14个位宽可变的、可配置的过滤器组(13~0),以便只接收那些软件需要的报文。硬件过滤的做法节省了CPU开销,否则就必须由软件过滤从而占用一定的CPU开销。 
STM32普通型芯片的 CAN 14组过滤器组(互联型有28组过滤器组) ,用以对接收到的帧进行过滤。每组过滤器包括了2个可配置的32位寄存器:CAN_FxR1 CAN_FxR2。对于过滤器组,通过设置CAN_FM0RFBMx位, 1.屏蔽位模式 这样 CAN_FxR0中保存的就是标识符匹配值,CAN_FxR2中保存的是屏蔽码,即 CAN_FxR2中如果某一位为1,则 CAN_FxR1中相应的位必须与收到的帧的标志符中的相应位吻合才能通过过滤器。CAN_FxR2中为0的位表示 CAN_FxR1中的相应位可不必与收到的帧进行匹配。 
2.标识符列表模式 此时 CAN_FxR1CAN_FxR2中的都是要匹配的标识符,收到的帧的标识符必须与其中的一个吻合才能通过过滤。 

本文发布于:2023-05-06 03:39:09,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/1/89663.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:软件   报文   模式
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图