版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
山东师范大学信息科学与工程学院张宝译CAN总线通信应用总览山东师范大学信息科学与工程学院CAN总线基础CAN电平分析CAN总线协议生产线环境监测系统CAN总线基础山东师范大学信息科学与工程学院CAN是ControllerAreaNetwork(控制器域网)的缩写(以下称为CAN),是ISO国际标准化的串行通信协议。由德国电气商博世公司在1986年率先提出。现在在欧洲已是汽车网络的标准协议,因其高可靠性,可靠性,广泛应用于:汽车电子、工业自动化、船舶、医疗设备、工业设备等方面。CAN总线优点多主控制。数据传输距离远(最远10Km);数据传输速率高(最高数据传输速率1Mbps);具备优秀的仲裁机制(ID识别);使用过滤器实现多地址的数据帧传递;借助遥控帧实现远程数据请求;具备错误检测与处理功能;具备数据自动重发功能;故障节点可自动脱离总线且不影响总线上其他节点的正常工作。山东师范大学信息科学与工程学院CAN总线标准山东师范大学信息科学与工程学院CAN有两个标准:1.遵循ISO11898标准的高速CAN总线网络。应用在汽车动力与传动系统,它是闭环网络,总线最大长度为40米,要求两端各有一个120Ω的电阻。2.遵循ISO11519标准的低速CAN总线网络。低速CAN总线网络被应用在汽车车身系统,它的两根总线是独立的,不形成闭环,要求每根总线上各串联一个2.2KΩ的电阻。终端电阻用来做阻抗匹配,以减少回波反射。CAN总线的网络拓扑结构山东师范大学信息科学与工程学院两种速率的电平山东师范大学信息科学与工程学院CAN总线报文电平山东师范大学信息科学与工程学院总线电平=CAN_H的电压—CAN_L的电压显性电平对应逻辑0=总线电平为2V左右隐性电平对应逻辑1=总线电平为0V显性电平具有优先权,只要有一个单元输出显性电平,总线上即为显性电平。隐形电平则具有包容的意味,只有所有的单元都输出隐性电平,总线上才为隐性电平(显性电平比隐性电平更强)。CAN控制器与收发器山东师范大学信息科学与工程学院CAN控制器与收发器山东师范大学信息科学与工程学院CAN控制器结构示意图山东师范大学信息科学与工程学院STM32F1系列MCU的CAN控制器介绍山东师范大学信息科学与工程学院STM32自带了基本扩展CAN外设,又称BxCAN,BxCAN的特点如下
支持CAN协议2.0A和2.0B主动模式
波特率最高达1Mbps
支持时间触发通信
具有3个发送邮箱
具有3级深度的2个接收FIFO
工作模式
①初始化模式(INRQ=1,SLEEP=0)
②正常模式(INRQ=0,SLEEP=0)
③睡眠模式(SLEEP=1)测试模式(方便用户调试)
①静默模式(LBKM=0,SILM=1)
②回环模式(LBKM=1,SILM=0)
③静默回环模式(LBKM=1,SILM=1)BxCAN的正常模式与测试模式山东师范大学信息科学与工程学院CAN收发器山东师范大学信息科学与工程学院定义:CAN收发器是CAN控制器和物理总线之间的接口,将CAN控制器的逻辑电平转换为CAN总线的差分电平,在两条有差分电压的总线电缆上传输数据。CAN收发器分类及相应产品CAN收发器分类过压述相应产品隔离CAN收发器将CAN控制器的逻辑电平转换为CAN总线的差分电平,并且具隔离功能、ESD保护功能及TVS官防总线过压CTM1050系列、CTM8250系列、CTM8251系列通用CAN收发器NXP半导体PCA82C250、PCA82C251高速CAN收发器支持较高的CAN通信速率NXP半导体的TJA1050、TJA1040、TJA1041/1041A容错CAN收发器在总线出现破损或短路情况下依然可以维持运行NXP半导体的TJA1054、TJA1054A、TJA1055、TJA1055/3CAN总线遵循的协议山东师范大学信息科学与工程学院CAN总线有多个设备时,要遵循CAN总线通信协议,会使用到邮箱、识别符、过滤器功能CAN总线-发送部分山东师范大学信息科学与工程学院报文:CAN设备一次发送出去的完整数据信息。邮箱:用于发送报文的发送调度器。帧种类:不同用途的报文种类。有数据帧、遥控帧、错误帧、过载帧、帧间隔。帧格式:一个报文里包含的内容。标识符:CAN总线上的设备可以用此判断数据
是不是发给自己的。发送邮箱山东师范大学信息科学与工程学院1.当程序向CAN控制器发数据时,CAN会选择优级最高的空邮箱放入数据2.如果所有邮箱都满了,会使溢出标志位置1,需要等待有空邮箱3.满邮箱按先后顺序排队发送数据,发送完成后会变成空邮箱报文过滤山东师范大学信息科学与工程学院所有设备都会接收报文,但标识符不符的报文会被过滤器删除标识符是报文中的一部分内容通信帧类型山东师范大学信息科学与工程学院序号帧类型帧用途1数据帧用于发送单元向接收单元传送数据。2远程帧用于接收单元向具有相同ID的发送单元请求数据。3错误帧用于当检测出错误时向其他单元通知错误。4过载帧用于接收单元通知发送单元其尚未做好接收准备。5帧间隔用于将数据帧及遥控帧与前面的帧分离开。帧格式山东师范大学信息科学与工程学院数据帧和远程帧(遥控帧)有标准格式和扩展格式两种格式CAN标准帧和扩展帧只是在ID的长度上不一样,类似IPv4与IPv6的区别。数据帧山东师范大学信息科学与工程学院数据帧山东师范大学信息科学与工程学院数据帧山东师范大学信息科学与工程学院数据帧山东师范大学信息科学与工程学院数据帧山东师范大学信息科学与工程学院数据帧山东师范大学信息科学与工程学院数据帧山东师范大学信息科学与工程学院数据帧山东师范大学信息科学与工程学院遥控帧/远程帧山东师范大学信息科学与工程学院代码部分山东师范大学信息科学与工程学院接收邮箱山东师范大学信息科学与工程学院FIFO:表面的意思是“先入先出”,是指有层级深度的接收邮箱。STM32F103系列单片机上有2个FIFO邮箱(FIFO0和FIFO1),每个FIFO有3层深度。与过滤器匹配的报文会被放入FIFO邮箱。过滤器山东师范大学信息科学与工程学院过滤器:可由硬件判断报文中的标识符,过滤掉标识符不匹配的报文。STM32F103系列单片机中的CAN总线控制器提供了14个过滤器组。过滤器是由硬件实现的,只有与过滤器匹配的报文才需要软件处理。过滤器山东师范大学信息科学与工程学院标识符列表模式(ID模式)屏蔽模式过滤器山东师范大学信息科学与工程学院不同的筛选器模式与尺度的组合构成了4种筛选器工作状态序号工作状态模式尺度说明1一个32位筛选器标识符掩码32位CAN_FxR1存储ID,CAN_FxR2存储掩码,2个寄存器表示1组待筛选的ID与掩码。可适用于标准ID和扩展ID。2两个32位筛选器标识符列表32位CAN_FxR1和CAN_FxR2各存储1个ID,2个寄存器表示2个待筛选的位ID。可适用于标准ID和扩展ID。3两个16位筛选器标识符掩码16位CAN_FxR1高16位存储ID,低16位存储相应的掩码,CAN_FxR2高16位存储ID,低16位存储相应掩码,2个寄存器表示2组待筛选的16位ID与掩码。只适用于标准ID。4四个16位筛选器标识符列表16位CAN_FxR1存储2个ID,CAN_FxR2存储2个ID,2个寄存器表示4个待筛选的16位ID。只适用于标准ID。过滤器优先级山东师范大学信息科学与工程学院过滤器根据下列优先级规则来确定(详看数据手册22.7.4):位宽为32位的过滤器,优先级高于位宽为16位的过滤器对于位宽相同的过滤器,标识符列表模式的优先级高于屏蔽位模式位宽和模式都相同的过滤器,优先级由过滤器号决定,过滤器号小的优先级高过滤器初始化配置山东师范大学信息科学与工程学院BxCAN位时序山东师范大学信息科学与工程学院SS(同步段)PTS(传播时间段)PBS1(相位缓冲段1)PBS2(相位缓冲段2)1tq1——8tq1——8tq2——8tqSYNC_SEG(同步段)BS1(位段1)BS2(位段2)1tq1——16tq1——8tq采样点tq(timequantum):最小时间片(构成上面所示各个段的最小时间单元)生产线环境监测系统的搭建山东师范大学信息科学与工程学院本案例要求搭建一个基于CAN总线的生产线环境监测系统,采集温度和火焰传感器数据,系统构成如下:PC机一台(作为上位机);CAN节点三个(一个CAN网关节点、
两个CAN终端节点);温湿度传感器两个;火焰传感器一个;USBCAN调试器一个。生产线环境监测系统的拓扑图如图所示。系统数据通信协议分析山东师范大学信息科学与工程学院本案例的CAN通信采用标准格式的数据帧段类型帧ID帧类型RTR标识符ID类型IDE保留位数据长度DLC数据段Data[8]长度11bit(标准帧)1bit1bit1bit4bit8Byte内容标准帧ID0:数据帧1:远程帧0:标准帧1:扩展帧r0DLCData举例0x120000x08Data[0]~Data[7]系统数据通信协议分析山东师范大学信息科学与工程学院帧起始符:固定为0xDD;地址域:为发送节点的地址;命令码域:0x01代表上报CAN总线网络的数据,0x02代表上报RS-485总线网络的数据;数据长度域:固定为0x09;传感器类型:1温湿度传感器,2人体红外传感器,3火焰传感器,4可燃气体,5空气质量传感器,6光敏二极管,7声音传感模块,8红外传感模块,9心率传感器,10其他;数据域:占2个字节,高8位和低8位。如:对应温湿度传感器,高8位为温度值,低8位为湿度值。则温度24℃对应0x18,湿度64%对应0x40;校验码域:采用和校验方式,计算从“帧起始符”到“数据域”之间所有数据的累加和,并将该累加和与0xFF按位与而保留低8位,将此值作为CS的值。组成部分帧起始符(START)地址域(ADDR)命令码域(CMD)数据长度域(LEN)传感器类型(TYPE)数据域(DATA)校验码域(CS)长度1Byte2Byte1Byte1Byte1Byte2Bytes1Byte内容固定为0xDDDstAddr见本表格说明Length见本表格说明DataCheckSum举例0xDD0x12340x010x090x010x18、0x400x51系统数据通信协议分析山东师范大学信息科学与工程学院网络中的CAN节点每隔1.5秒钟上传一次数据至CAN网关节点。
CAN网关节点收到传感器数据后,CAN网关节点每隔1.5秒钟也将自身采集的温湿度数据上报给上位机。配置M3主控模块山东师范大学信息科学与工程学院点击图中的标号①进行串行通信口的配置。另外,还有两项需要配置的内容:一是节点发送数据的“标识符ID”,如:将“标识符ID”配置为0xAA(图中的标号②处)。(注:CAN的标识符ID的有效范围为0x00~0x7FF)二是节点所连接的传感器“类型”,如:将传感器“类型”配置为“温湿度”(图中的标号③处)。最后点击“设置按钮”(图中的标号④处)即可完成一个节点的配置。使用SerialPortCommunication.exe(M3主控模块配置工具)配置两个下载节点固件的模块传感器分别为“温湿度传感器”和“火焰传感器”,地址设置为0XAA和0XBB;配置下载网关节点固件的模块使用“温湿度传感器”,地址为0XCC;CAN调试助手使用山东师范大学信息科学与工程学院1.点击图中标号①处的下拉菜单选择正确的“串口号”,点击②处可打开或者关闭串口。2.标号③处下拉菜单选择“正常模式”,然后点击标号④处下拉菜单选择“100k”通信速率,最后点击标号⑤处的“设置”按钮即可完成CAN通信的基本参数配置。3.数据
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024图书出版合同(1)
- 青岩古镇研学课程设计
- 2024房地产广告合同
- 2024广西合同养殖合同模板
- 2024平面设计作品委托合同样本
- 2024标准版销售合同范本(酒水类)
- 钢筋混凝土及课程设计
- 2024建房指标转让合同
- 2023年天津市和平区招聘笔试真题
- 2023年临沂市人民医院招聘考试真题
- 《病人安全护理学》-教学大纲
- 项目分成比例合同模板
- GB 27887-2024机动车儿童乘员用约束系统
- 期中考试模拟试卷 2024-2025学年人教版数学九年级上册
- 朝鲜半岛局势演变
- 自然科学基金项目申请书
- 第四届全国新能源汽车关键技术技能大赛(新能源汽车轻量化技术方向)决赛参考试题库(含答案)
- 2024年秋新鲁科版三年级上册英语课件 Unit 6 lesson 1
- 教师资格考试小学数学面试试题与参考答案
- 2024-2025学年深圳市九年级上册期中考试模拟试卷历史试卷
- 人教版英语2024七年级上册全册单元测试卷
评论
0/150
提交评论