使用PyTorch实现CIFAR-10数据集分类指南
需积分: 44 120 浏览量
更新于2024-08-07
收藏 4.81MB PDF 举报
"利用pytorch实现对cifar-10数据集的分类"
本文档主要介绍了在微控制器(MCU)中处理CAN(Controller Area Network)通信的细节,特别是关于接收报文的过程。CAN是一种常用于汽车和工业自动化中的通信协议,能够实现多个设备之间的高效数据交换。
在27.7章节中,讲解了接收报文的机制。MCU有两个接收缓冲区,MAB(Message Active Buffer)用于接收下一个报文,而MCU可以同时处理另一个缓冲区中的数据。当报文进入任一接收缓冲区时,对应的RXFUL标志位会被置1,提示MCU有新报文到达。这个标志位需由MCU清除,以便接收新的报文,同时也用于防止模块在固件处理完报文前尝试填充新的报文。如果启用接收中断,接收新报文时会产生中断。
报文接收后,固件可以通过检查RXBnCON或BnCON寄存器中的过滤器命中位来确定哪个过滤器触发了接收。模式0下,使用RXBnCON的FILHIT<2:0>;模式1和2下,使用BnCON的FILHIT<4:0>。报文的类型(标准或扩展标识符)可以通过检查EXID/EXIDE位来确定。标准标识符报文需要读取SIDL和SIDH寄存器,而扩展标识符报文则需要读取SIDL、SIDH、EIDL和EIDH。若报文是远程传输请求(RTR)帧,且缓冲区未配置为自动RTR处理,固件需要手动响应。
接收缓冲区的RXM位用于设置特殊接收模式,如模式0下的RXM<1:0>可以定义四种接收模式。这些位可以设置为00接收所有由过滤器确定的有效报文,或者设置为其他值只接收标准或扩展标识符的报文。在模式1和2下,RXM1结合EXID屏蔽器和过滤器位定义接收模式。设置为11(在模式1和2下,RXM1=1)会让缓冲区接收所有报文,这在调试时可能有用,但在实际系统中不应使用,因为总线错误应被忽略。
接收优先级在模式0中,RXB0是高优先级缓冲区,有2个过滤器,RXB1是低优先级,有4个过滤器。在模式1和2下,有16个接收过滤器,可以动态分配给任意接收缓冲区,编号低的缓冲区优先级更高。
需要注意的是,当报文被接收后,MAB的内容会完全移动到接收缓冲区,覆盖原有内容。因此,接收报文后,应假设缓冲区的所有寄存器都被修改。最后,文档强调了在使用Microchip的微控制器时,中文版本仅供参考,重要信息应以英文原文为准,且使用器件的风险由用户自行承担。
2020-09-18 上传
208 浏览量
2019-08-11 上传
2023-08-11 上传
点击了解资源详情
2021-04-10 上传
2024-11-09 上传
2021-05-13 上传
龚伟(William)
- 粉丝: 31
- 资源: 3899
最新资源
- Snorkel Ops Fortnite Wallpapers New Tab-crx插件
- periodic-table:交互式元素周期表
- 净重分类改进:已提出将NRI替代ROC曲线下的面积。-matlab开发
- ipRecorder:允许记录和播放IP中的数据。 适合调试
- juan-ted-api
- adapters
- 最实用的mvp框架
- 脉冲输出程序1.rar
- 用于求解延迟微分方程和进行局部搜索的图形用户界面:用于求解一组延迟微分方程 (DDE) 和局部搜索以获得最佳解决方案的图形用户界面-matlab开发
- SCORM-on-MEAN-stack
- flutter_myinsta
- velocitaiproject
- 基于PHP的最新的搜搜问问抓取php商业版(伪静态)源码.zip
- iSAX:提供 iSAX Java 实现
- 亨利简历
- Laptop-Template:在此模板中,仅使用HTML和CSS