使用PyTorch实现CIFAR-10数据集分类指南
需积分: 44 135 浏览量
更新于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 上传
205 浏览量
2019-08-11 上传
2023-08-11 上传
点击了解资源详情
2021-04-10 上传
2024-11-09 上传
2021-05-13 上传
龚伟(William)
- 粉丝: 32
- 资源: 3902
最新资源
- 正整数数组验证库:确保值符合正整数规则
- 系统移植工具集:镜像、工具链及其他必备软件包
- 掌握JavaScript加密技术:客户端加密核心要点
- AWS环境下Java应用的构建与优化指南
- Grav插件动态调整上传图像大小提高性能
- InversifyJS示例应用:演示OOP与依赖注入
- Laravel与Workerman构建PHP WebSocket即时通讯解决方案
- 前端开发利器:SPRjs快速粘合JavaScript文件脚本
- Windows平台RNNoise演示及编译方法说明
- GitHub Action实现站点自动化部署到网格环境
- Delphi实现磁盘容量检测与柱状图展示
- 亲测可用的简易微信抽奖小程序源码分享
- 如何利用JD抢单助手提升秒杀成功率
- 快速部署WordPress:使用Docker和generator-docker-wordpress
- 探索多功能计算器:日志记录与数据转换能力
- WearableSensing: 使用Java连接Zephyr Bioharness数据到服务器