基于CAN总线的智能家居控制(毕业设计)(共63页).doc

上传人:飞****2 文档编号:17308610 上传时间:2022-05-23 格式:DOC 页数:63 大小:2.19MB
返回 下载 相关 举报
基于CAN总线的智能家居控制(毕业设计)(共63页).doc_第1页
第1页 / 共63页
基于CAN总线的智能家居控制(毕业设计)(共63页).doc_第2页
第2页 / 共63页
点击查看更多>>
资源描述

《基于CAN总线的智能家居控制(毕业设计)(共63页).doc》由会员分享,可在线阅读,更多相关《基于CAN总线的智能家居控制(毕业设计)(共63页).doc(63页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上编号: 毕业设计(论文)说明书课 题: 基于CAN总线的智能家居控制 学 院: 电子工程与自动化学院 专 业: 自动化 学生姓名: 学 号: 指导教师单位: 姓 名: 职 称: 题目类型: 理论研究 实验研究 工程设计 工程技术研究 软件开发2012年 5 月 10 日摘 要进入二十一世纪以来,借助计算机和互联网技术的发展,信息家电已经越来越多的出现在人们的生活之中,伴随着科学技术的进步,家居智能化正以前所未有的速度走进寻常百姓之家。以单片机为核心结合计算机构成的智能家居产品具有体积小、功能强、应用面广,使用灵活、价格便宜、工作可靠等优点。本文设计基于CAN总线的智能

2、家居控制系统,研究其硬件电路设计、软件程序设计和CAN总线的智能家居领域的应用。该控制系统从结构上来划分,可以分为两个层次,分别为上位机监控和下位机各节点控制。上位机监控主要由监控计算机PC机和CAN-RS232总线协议转换器构成,下位机由单片机和CAN总线智能节点数据采集模块构成,完成对家居的环境状况进行实时监控。系统设计两路CAN总线节点,采用温度传感器DS18B20、湿度传感器DHT11、烟雾传感器MQ-2、BIS0001人体红外传感器,巡回检测室内温度湿度,火情盗情等环境信息。并通过CAN-RS232协议转换将数据发至PC机记录和监控,PC机可查询当前记录和历史记录,上位机和CAN节点

3、分别设有报警功能,可以通过按键设定报警上限和下限。系统硬件包括主控芯片STC89C52RC,CAN总线通信模块,串行通信接口电路,烟雾浓度检测模块,人体移动红外检测模块,温湿度检测电路,液晶显示电路等。系统软件设计包括VB上位机监控程序,CAN-RS232总线协议转换程序,CAN总线智能节点通信程序,按键设定值程序,液晶显示程序等。关键词:智能家居;CAN总线;传感器;Visual BasicAbstractSince the beginning of the 21st century, with the development of computer and Internet technol

4、ogy, information appliances have been more and more in peoples life, along with advances in science and technology, the intelligent home is at an unprecedented rate into the homes of ordinary people at home. Small size, wide range of applications, the use of flexible, cheap, reliable and advantages

5、of microcontroller as the core, combined with computer composed of smart home products.The design is based on the CAN bus smart home control systems, to study the hardware circuit design, software programming, and CAN bus application in the field of smart home. The control system up from a structura

6、l division can be divided into two levels, respectively, for each node of the PC monitoring and machine control. PC monitoring of monitoring computer PC, CAN-RS232 bus protocol converter, the next crew of data acquisition module of the microcontroller and the CAN bus intelligent node to complete the

7、 real-time monitoring of the state of the environment of the home.System designs two CAN bus node, using temperature sensor DS18B20, humidity sensor DHT11, smog sensor MQ-2, BIS0001 infrared sensor, to detect circuitly indoor temperature and humidity, fire Pirates of the situation and other environm

8、ental information. Recording and monitoring of the data sent to the PC, the PC machine can check the records and history, the host computer and the CAN nodes are equipped with an alarm function, alarm upper and lower limits can be set through the button and the CAN-RS232 protocol conversion. The sys

9、tem hardware consists of the master chip STC89C52RC,CAN bus communication module, serial communications interface circuits, smoke concentration detection module, infrared detection module of human motion, temperature and humidity detection circuit, LCD circuits, etc. System software design, includin

10、g VB PC monitoring program, the CAN-RS232 bus protocol conversion process, the intelligent node of the CAN bus communication program button to set the value of the program, LCD program.Keywords: Smart Home; the CAN bus; sensor; Visual Basic目 录专心-专注-专业引言科技的进步,带来经济飞速发展的同时,也给人们的生活带来无限的惊奇。不断更新的生活方式,使得越来

11、越多的人追求对生活的舒适度和享受度。智能家居作为新生力量呼之欲出,自然地走进我们的生活,随之,引领新一代的数字家庭生活。通过分析现有的智能家居解决方案,智能家居包括四个基本的功能模块:家庭对外通信模块、家庭网关模块、家庭安全防范模块、家庭设备自动控制模块。本课题提取家庭安全防范模块研究,设计基于CAN总线的智能家居控制系统。安全防范就是保障人们在生产、生活和一切社会活动中人身生命、财产和生产、生活设施不受侵犯,防止侵害行为的总称。智能家居在满足人们舒适、方便生活的同时,也要求为家庭提供安全防范方面的保障。它包含的内容有防止入侵、盗窃、破坏、爆炸等,它的原则是“以防为主,打防并举”,安全防范工作

12、贯彻“人防、技防、物防”相结合的方针政策。因此,智能家居将家庭安全防范模块定义为其四个基本要素之一。课题将安全防范的内容分为两部分,分别是家庭内部环境安全、家庭对外非法入侵预防,这两方面都体现出现代技术在智能家居中的应用。在本课题中,由于条件限制,并没有对家庭安防模块进行实验,对于家庭内部环境安全,采用传感器检测室内的温湿度和烟雾浓度。对于家庭对外非法入侵预防,采用人体移动红外检测。本课题采用CAN总线设计智能家居组网系统,可以设计多路CAN智能节点,构成分布式控制系统,实现同时对多个居室的环境状况进行监控。CAN总线的数据通信具有突出的可靠性、实时性和灵活性,通信介质可以是双绞线、同轴电缆或

13、光导纤维。因此,CAN总线在智能家居系统中得到广泛应用。1 课题研究内容1.1 课题背景二十一世纪是信息技术高速发展的时代,社会的信息化唤起了人们对住宅智能化及家居智能化的要求,智能住宅己成为中国房地产市场的主流。计算机行业和家电行业、电信行业、安防监控行业的互相渗透、互相融合,使信息时代的未来家居生活逐步成为现实。建设部要求根据不同消费者的需要,推动家居数字化、建筑智能化,可见中国智能家居市场潜力巨大。智能家居安防系统是集信息技术、网络技术、传感技术、无线电技术、模糊控制技术等多种技术为一体的综合应用。智能家居安防系统具有使用方便、安装简单、准确及时的特点,非常适合居家安全防范措施的实施,它

14、可以检测居室内的煤气的泄漏情况、是否有火灾发生、是否发生水管爆裂、是否有小偷入室盗窃等危险的情况,并自动采取一定措施尽量把损失降到最小值,还以一定的无线方式去通知居室主人,让主人可以采取一定的措施去处理这种不好事件,这样就可以自动地与人为地去采取措施,去做到最好的安防。因此,随着人们生活水平的不断提高,白天离家去上班的人越来越多,这系统也会越来越受到青睬,加上目前智能安防系统的设计领域还很不完善,可以借以开发的无线网络条件也越来越成熟,把这方面的设计产品化,将会有很广阔的市场。1.2 课题意义 目前国内越来越多智能化的商品已经进入到人们的生活,特别是在商品房小区里,人们都知道“安全第一”,所以

15、家居安防的第一要义就是要保证家居的安全,给家居主人一些已经发生了的危险情况的损失降到最低的程度。据预测,今后几年智能家居市场会进入一个行业整合阶段,最终可能会出现一些规模较大、品牌影响较好的智能家居生产厂家。从产品角度来讲,以后的智能家居产品会朝着实用化、傻瓜化(操作简单)、模块化的方向发展,所谓模块化就是产品开发商把智能家居产品做成模块化的,可以根据用户的实际需求任意搭配。这样不仅可满足不同层次用户的需要,也可以省去不必要的端口模块的费用浪费。目前国内已在经济发达地区如北京、深圳、广州、上海等地建立了一批智能住宅小区,而且正快速地向其他地区辐射,建设部已将智能化住宅小区列为国家重点发展方向。

16、预计未来5到10年可以形成相当规模的市场容量。届时,智能住宅的发展还将带动信息家电、物业管理等相关行业的发展。所以,智能家居的发展前景非常地好,且技术的研究还有很大的空间。2 系统设计概述2.1 设计任务设计多路CAN总线节点检测室内温度湿度,火情盗情等参数,发至PC机记录和监控,并有报警功能,PC 机可查询当前记录和历史记录。系统主要由三部分组成:上位监控计算机、CAN-RS232总线协议转换器和CAN总线智能节点。设计的具体内容:(1)设计CAN-RS232总线协议转换器,把CAN报文储存并通过串口转发给上位监控计算机。(2)设计CAN总线智能节点,包括四个部分:单片机及其外围电路、CAN

17、总线模块、数据传输模块和传感器检测模块(负责对环境参数的检测)。(3)系统软件设计,包括上位机监控软件设计、CAN-RS232协议转换程序设计、CAN总线通信程序设计、数据采集程序设计以及其它控制程序。2.2 系统设计原理首先,整个网络系统通过CAN总线连接起来。CAN智能节点通过各传感器模块主动巡回检测家居的当前环境状况,把采集到的数据通过CAN总线发至CAN-RS232协议转换器,再通过串口把数据发送到上位机,上位机负责对采集到的数据进行保存、显示和管理。当检测到的环境信息意味着居家有危险时,下位机和上位机同时发出报警信号。考虑到季节的变化,温湿度的报警上下限可以在CAN-RS232协议转

18、换器节点通过按键和LCD1602设定,然后发送至各个CAN智能节点。2.3 系统设计方案上位监控计算机CAN-RS232总线协议转换器CAN智能节点1CAN智能节点2RS232CAN总线图2.1 系统整体结构图该系统结构由上位监控计算机、CAN-RS232总线协议转换器和CAN智能节点等三部分构成。总线两端各有加一个120欧的电阻,对匹配总线阻抗起着相当重要的作用,将大大提高数据通信的抗干扰能力。上位监控计算机及监控软件组成该系统的监控层,主要负责对系统数据的接收与管理、控制命令的发送以及各单元环境参数实时显示。单片机LED指示LCD1602按键电路CAN控制器SJA1000CAN收发器TJA

19、1050电平转换MAX232RS232CAN总线图2.2 C AN-RS232协议转换器结构图LED指示模块用于指示这个模块的运行情况,便于管理和调试。按键和LCD1602用于设定温湿度的上下限并显示,设定之后通过CAN总线发送到各个智能节点。单片机温湿度检测模块红外检测模块烟雾检测模块CAN总线模块报警电路CAN总线 图2.3 CAN智能节点结构图单片机通过各传感器采集环境信息,按CAN规范规定的格式将其写入CAN控制器的发送缓冲区,并启动发送命令,把数据发送到CAN总线上。对于接收过程,CAN总线上自动接收数据,并经过滤后存人CAN接收缓冲区,向单片机发出中断请求,此时单片机可从CAN接收

20、缓冲区读取要接收的数据。2.4 系统可行性分析CAN总线通信是本系统需要解决的关键问题,考虑到整个系统的可靠性,并结合考虑成本,决定采用CAN总线模块,此模块主要包括CAN总线控制器SJA1000和CAN总线收发器TJA1050。经过测试,CAN模块工作稳定可靠。在传感器的选择上以方便使用、功率低、准确性高、实用性强为出发点去考虑,采用以下传感器:DS18B20、DHT11、红外人体感应模块、烟雾传感器MQ-2。其他的器件均采用经济常用的LCD1602、蜂鸣器等。3 CAN总线概述3.1 CAN总线简介控制器局域网 CAN 为串行通讯协议,能有效地支持具有很高安全等级的分布实时控制。CAN 的

21、应用范围很广,从高速的网络到低价位的多路接线都可以使用 CAN。在汽车电子行业里,使用 CAN 连接发动机控制单元、传感器、防刹车系统、等等,其传输速度可达1 Mbit/s。同时,可以将CAN安装在卡车本体的电子控制系统里,诸如车灯组、电气车窗等等,用以代替接线配线装置。根据 ISO/OSI 参考模型,CAN总线由数据链路层和物理层组成,功能由CAN控制器来实现。数据链路层包括逻辑链路控制LLC子层和介质访问控制MAC子层,逻辑链路控制子层 (LLC)的作用范围如下:为远程数据请求以及数据传输提供服务;确定由实际要使用的LLC 子层接收哪一个报文;为恢复管理和过载通知提供手段。MAC子层的作用

22、主要是传送规则,包括控制帧结构、执行仲裁、错误检测、出错标定、故障界定。总线上什么时候开始发送新报文,什么时候开始接收报文,均在MAC子层里确定。位定时的一些普通功能也可以看作是 MAC子层的一部分。理所当然,MAC子层的修改是受到限制的。物理层的作用是在不同节点之间根据所有的电气属性进行位的实际传输。同一网络的物理层对于所有的节点当然是相同的。尽管如此,在选择物理层方面还是很自由的,物理通信介质可以是双绞线、同轴电缆或光导纤维。总线可以有两个互补的逻辑值之一:“显性”或“隐性”。在“显性”和“隐性”位同时传送期间,总线值将是“显性”。例如,在实现线与时,“显性”代表一个逻辑“0”,“隐性”代

23、表逻辑“1”。3.2 CAN总线帧类型CAN总线有两种不同的帧格式,不同之处为识别符的长度不同:具有11位识别符的帧称之为标准帧,含有29位识别符的帧为扩展帧。本课题使用扩展帧进行通信,因此,只对扩展帧进行介绍。CAN报文传输由以下4个不同的帧类型所表示和控制: 数据帧:数据帧将数据从发送器传输到接收器。 远程帧:总线单元发出远程帧,请求发送具有同一识别符的数据帧。 错误帧:任何单元检测到总线错误就发出错误帧。 过载帧:过载帧用以在先行的和后续的数据帧(或远程帧)之间提供一附加的延时。 3.2.1 数据帧数据帧由7个不同的位场组成:帧起始、仲裁场、控制场、数据场、CRC场、应答场、帧结尾。数据

24、场的长度可以为0 。帧起始:帧起始(SOF)标志数据帧和远程帧的起始,仅由一个“显性”位组成。只在总线空闲时才允许任何节点开始发送(信号)。仲裁场:扩展格式里,仲裁场包括 29位识别符、SRR位、IDE 位、RTR位。其识别符由 ID-28. ID-0,包含两个部分:11位基本ID、18位扩展ID。基本ID按 ID-28 到ID-18 的顺序发送。它相当于标准识别符的格式。基本 ID定义扩展帧的基本优先权。扩展ID包括18位。它按 ID-17 到ID-0 顺序发送。 图3.1 CAN数据帧仲裁场结构图 RTR的全称为“远程发送请求位(Remote Transmission Request BI

25、T)”。RTR位在数据帧里必须为“显性”,在远程帧里必须为“隐性SRR的全称是“替代远程请求位(Substitute Remote Request BIT)”。SRR是一隐性位。它在扩展格式的标准帧RTR位位置,因此代替标准帧的RTR位。 因此,标准帧与扩展帧的冲突是通过标准帧优先于扩展帧这一途径得以解决的。IDE 的全称是“识别符扩展位(Identifier Extension Bit )”,标准格式里的IDE 位为“显性”,而扩展格式里的IDE 位为“隐性”。控制场:数据长度代码指示数据场里的字节数量。数据长度代码为4 个位,所以数据场的字节数可以是08个字节。数据场:数据场由数据帧里的发

26、送数据组成。它可以为0 8 个字节,每字节包含8个位,首先发送 MSB。CRC场:CRC场包括CRC序列(CRC SEQUENCE),其后是CRC界定符(CRC DELIMITER )。应答场:应答场长度为2 个位,包含应答间隙(ACK SLOT )和应答界定符(ACK DELIMITER)。在ACK场(应答场)里,发送站发送两个“隐性”位。当接收器正确地接收到有效的报文,接收器就会在应答间隙(ACK SLOT )期间(发送 ACK信号)向发送器发送一“显性”位以示应答。 帧结尾:每一个数据帧和远程帧均由一标志序列定界。这个标志序列由7个“隐性”的位组成。3.2.2 远程帧通过发送远程帧,作为

27、某数据接收器的站可以初始化通过其资源节点传送不同的数据。远程帧由6个不同的位场组成:帧起始、仲裁场、控制场、CRC场、应答场、帧结尾。与数据帧相反,远程帧的RTR位是“隐性”的。它没有数据场,数据长度代码的数值是不受制约的(可以标注为容许范围里0.8 的任何数值)。此数值是相应于数据帧的数据长度代码。3.2.3 错误帧错误帧由两个不同的场组成。第一个场用是不同站提供的错误标志(ERROR FLAG)的叠加。第二个场是错误界定符。错误标志有两种形式的错误标志:主动错误标志和被动错误标志。错误界定符包括8个“隐性”的位。3.2.4 过载帧过载帧包括两个位场:过载标志和过载界定符。过载标志由6 个“

28、显性”的位组成,过载界定符包括8 个“隐性”的位。有种过载的情况,这三种情况都会引发过载标志的传送: 接收器的内部情况(此接收器对于下一数据帧或远程帧需要有一延时)。 在间歇的第一和第二字节检测到一个“显性”位。 如果CAN节点在错误界定符或过载界定符的第8 位(最后一位)采样到一个显性位,节点会发送一个过载帧(不是错误帧)。错误计数器不会增加。3.3 CAN报文过滤报文滤波取决于整个识别符。允许在报文滤波中将任何的识别符位设置为“不考虑”的可选屏蔽寄存器,可以选择多组的识别符,使之被映射到隶属的接收缓冲器里。 如果使用屏蔽寄存器,它的每一个位必须是可编程的,即,他们能够被允许或禁止报文滤波。

29、屏蔽寄存器的长度可以包含整个识别符,也可以包含部分的识别符。3.4 CAN错误处理3.4.1 错误检测有以下5 种不同的错误类型(这5种错误不会相互排斥) 位错误(Bit Error ) 单元在发送位的同时也对总线进行监视。如果所发送的位值与所监视的位值不相符合,则在此位时间里检测到一个位错误。但是在仲裁场(ARBITRATION FIELD )的填充位流期间或应答间隙(ACK SLOT )发送一“隐性”位的情况是例外的 此时,当监视到一“显性”位时,不会发出位错误。当发送器发送一个被动错误标志但检测到“显性”位时,也不视为位错误。 填充错误(Struff Error ) 如果在使用位填充法进

30、行编码的信息中,出现了第 6 个连续相同的位电平时,将检测到一个填充错误。 CRC错误(CRC Error) CRC序列包括发送器的CRC计算结果。接收器计算CRC的方法与发送器相同。如果计算结果与接收到CRC序列的结果不相符,则检测到一个CRC错误。 形式错误(Form Error ) 当一个固定形式的位场含有1个或多个非法位,则检测到一个形式错误。(备注:接收器的帧末尾最后一位期间的显性位不被当作帧错误) 应答错误(Acknowledgment Error) 只要在应答间隙(ACK SLOT )期间所监视的位不为“显性”,则发送器会检测到一个应答错误。 3.4.2 错误标定检测到错误条件的

31、站通过发送错误标志指示错误。对于“错误主动”的节点,错误信息为“主动错误标志”,对于“错误被动”的节点,错误信息为“被动错误标志”。站检测到无论是位错误、填充错误、形式错误,还是应答错误,这个站会在下一位时发出错误标志信息。 只要检测到的错误的条件是CRC错误,错误标志的发送开始于ACK界定符之后的位(其他的错误条件除外)。4 硬件电路设计4.1 单片机最小系统4.1.1 单片机STC89C52RCCAN智能节点和CAN-RS232采用STC89C52RC单片机作为主控芯片。它是一款兼容51内核的增强型8位机,片上资源丰富,抗干扰能力突出。STC89C52有如下特点:40个引脚,8K 在系统可

32、编程Flash 存储器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 具有以下标准功能: 8k字节Flash,512字节RAM, 32 位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,三个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口。另外 STC89C52可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直

33、到下一个中断或硬件复位为止。最高运作频率35Mhz,6T/12T可选。图4.1 单片机STC89C52引脚图图4.1为STC89C52RC单片机的引脚图,在单片机的40条引脚中有2条专用于主电源的引脚,2条外接晶体的引脚,4条控制或与其它电源复用的引脚,32条输入/输出(I/O)引脚; XTAL1(19脚)接外部晶体的一个引脚。在单片机内部,它是一个反相放大器的输入端,这个放大器构成了片内振荡器。当采用外部振荡器时,对HMOS单片机,此引脚应接地;对CHMOS单片机,此引脚作为驱动端; XTAL2(18脚)接外晶体的另一端。在单片机内部,接至上述振荡器的反相放大器的输出端。采用外部振荡器时,对

34、HMOS单片机,该引脚接外部振荡器的信号,即把外部振荡器的信号直接接到内部时钟发生器的输入端;对XHMOS,此引脚应悬浮;RST/VPD(9脚)当振荡器运行时,在此脚上出现两个机器周期的高电平将使单片机复位。推荐在此引脚与VSS引脚之间连接一个约8.2k的下拉电阻,与VCC引脚之间连接一个约10F的电容,以保证可靠地复位。VCC掉电期间,此引脚可接上备用电源,以保证内部RAM的数据不丢失。当VCC主电源下掉到低于规定的电平,而VPD在其规定的电压范围(50.5V)内,VPD就向内部RAM提供备用电源; P0口(39脚至32脚):是双向8位三态I/O口,在外接存储器时,与地址总线的低8位及数据总

35、线复用,能以吸收电流的方式驱动8个LS型的TTL负载; P1口(1脚至8脚):是准双向8位I/O口。由于这种接口输出没有高阻状态,输入也不锁存,故不是真正的双向I/O口。P1口能驱动(吸收或输出电流)4个LS型的TTL负载。对8052、8032,P1.0引脚的第二功能为T2定时/计数器的外部输入,P1.1引脚的第二功能为T2EX捕捉、重装触发,即T2的外部控制端。对EPROM编程和程序验证时,它接收低8位地址; P2口(21脚至28脚):是准双向8位I/O口。在访问外部存储器时,它可以作为扩展电路高8位地址总线送出高8位地址。在对EPROM编程和程序验证期间,它接收高8位地址。P2可以驱动(吸

36、收或输出电流)4个LS型的TTL负载; P3口(10脚至17脚):是准双向8位I/O口,在MCS-51中,这8个引脚还用于专门功能,是复用双功能口。P3能驱动(吸收或输出电流)4个LS型的TTL负载。P3各口线的第二功能定义 :P3.0 10 RXD(串行输入口); P3.1 11 TXD(串行输出口);P3.2 12 INT0(外部中断0);P3.3 13 INT1(外部中断1);P3.4 14 T0(器0外部输入);P3.5 15 T1(定时器1外部输入);P3.6 16 WR(外部数据存储器写脉冲);P3.7 17 RD(外部数据存储器读脉冲)。4.1.2 最小系统电路图4.2 单片机最

37、小系统图单片机最小系统电路很简单,包括部分外围电路:复位电路和晶振电路。在复位电路上电的瞬间,RC电路充电,由于电容的电压不能突变,所以RST引脚出现高电平。RST引脚出现的高电平将会随着对电容的充电过程而逐渐回落,为保证正确复位,RST引脚出现的高电平需要持续两个机器周期以上的时间。因此,需要合理选择复位电路的电阻和电容,通常取10K和10uf。4.2 CAN总线模块4.2.1 CAN控制器SJA1000 SJA1000概述SJA1000是一种独立控制器用于移动目标和一般工业环境中的区域网络控制(CAN),它是PHILIPS半导体PCA82C200 CAN控制器(BasicCAN)的替代产品

38、,而且它增加一种新的工模式PeliCAN,这种模式支持具有很多新特性的CAN 2.0B协议。SJA1000部分功能模块说明如下: 接口管理逻辑(IML): 接口管理逻辑解释来自CPU的命令,控制CAN寄存器的寻址,向主控制器提供中断信息和状态信息。 发送缓冲器(TXB): 发送缓冲器是CPU和BSP(位流处理器)之间的接口,能够存储发送到CAN网络上的完整信息。缓冲器长13个字节,由CPU写入,BSP读出。 接收缓冲器(RXB,RXFIFO): 接收缓冲器是验收滤波器和CPU之间的接口,用来储存从CAN总线上接收和接收的信息。接收缓冲器(RXB,13个字节)作为接收FIFO(RXFIFO,长6

39、4字节)的一个窗口,可被CPU访问。 验收滤波器(ACF): 验收滤波器把它其中的数据和接收的识别码的内容相比较,以决定是否接收信息。 SJA1000引脚定义AD0-AD7: 多路地址/ 数据总线。ALE/AS: ALE 输入信号(Intel模式),AS输入信号(Motorola 模式)。/CS: 片选输入,低电平允许访问SJA1000。(/RD)/E: 微控制器的/RD信号(Intel模式)或E使能信号(Motorola 模式)。/WR: 微控制器的/WR信号(Intel 模式),或RD/(/WR)信号(Motorola模式)。CLKOUT: SJA1000产生的提供给微控制器的时钟输出信号

40、,时钟信号来源于内部振荡器且通过编程驱动时钟控制寄存器的时钟关闭位,可禁止该引脚。Vss1: 接地。XTAL1: 输入到振荡器放大电路,外部振荡信号由此输入。XTAL2: 振荡放大电路输出,使用外部振荡信号时左开路输出。MODE: 模式选择输入,1=Intel模式,0=Motorola模式。VDD3: 输出驱动的5V电压源。TX0: 从CAN输出驱动器0 输出到物理线路上。TX1: 从CAN输出驱动器1 输出到物理线路上。Vss3: 输出驱动器接地。/INT: 中断输出用于中断微控制器,/INT在内部中断寄存器各位都被置位时低电平有效,/INT是开漏输出,且与系统中的其它/INT是线或的,此引

41、脚上的低电平可以把IC从睡眠模式中激活。/RST: 复位输入用于复位CAN接口(低电平有效),把/RST引脚通过电容连到VSS 通过电阻连到VDD可自动上电复位。VDD2: 输入比较器的5V电压源。RX0,RX1: 从物理的CAN总线输入到SJA1000的输入比较器,支配(控制)电平将会唤醒SJA1000的睡眠模式;如果RX1比RX0的电平高,就读支配(控制)电平,反之读弱势电平;如果时钟分频寄存器的CBP位被置位,就旁路CAN输入比较器以减少内部延时(此时连有外部收发电路),这种情况下只有RX0是激活的;弱势电平被认为是高而支配电平被认为是低。VSS2: 输入比较器的接地端。VDD1: 逻辑

42、电路的5V电压源。 图4.3 SJA1000引脚图 SJA1000寄存器(PeliCAN模式)CAN控制寄存器的内部寄存器对CPU来说是以外部寄存器形式存在而作片内内存使用。因为CAN控制器可以工作于不同模式(工作/复位),所以必须区分不同的内部地址定义。从CAN地址32起所有的内部RAM(80字节)被映象为CPU的接口。 模式寄存器(MOD): 模式寄存器的内容是用来改变CAN控制器的行为的。CPU把控制寄存器作为读/写寄存器,可以设置这些位,保留位读值为逻辑0。 模式寄存器的地址为“0”,其各位功能如下: MOD.7-MOD.5:保留;MOD.4(SM):睡眠模式,“1”进入睡眠模式,“0

43、”从睡眠模式唤醒;MOD.3(AFM):验收滤波器模式,“1”单滤波模式,“0”双滤波模式;MOD.2(STM):自检测模式,“1”进入自检测模式,“0”正常模式;MOD.1(LOM):只听模式,“1”进入只听模式,“0”正常模式;MOD.0(RM):复位模式,“1”进入复位模式,“0”退出复位模式,进入正常模式; 命令寄存器(CMR):CAN地址“1”。命令位初始化CAN控制器传输层的一个动作。这个寄存器是只写的,所有位的读出值都是逻辑0。因处理的需要,两条命令之间至少有一个内部时钟周期。内部时钟周期的频率是外部振荡器的一半。表4.1 SAJ1000命令寄存器(CMR)各位功能说明 状态寄存

44、器(SR):CAN地址“2”。状态寄存器反映CAN控制器的状态。状态寄存器对CPU来说是只读内存。表4.2 SJA1000状态寄存器(SR)各位功能说明 中断寄存器(IR):CAN地址“3”。中断寄存器允许中断源的识别。当这个寄存器的一位或多位被置位时,CAN中断将反映到CPU 。CPU读此寄存器的时候除了接收中断外的所有位都被复位,中断寄存器对CUP来说是只读存储器。表4.3 SJA1000中断寄存器(IR)位功能说明 中断使能寄存器(IER):CAN地址“4”。这个寄存器能使不同类型的中断源对CPU有效,这个寄存器对CPU来说是可读/ 写存储器。表4.4 SJA1000中断使能寄存器(IE

45、R)位功能说明 发送缓冲器(TX):CAN地址“16-28”。发送缓冲器被分为描述符区和数据区,描述符区的第一个字节是帧信息字节(帧信息)。它说明了帧格式(SFF或EFF)、远程或数据帧和数据长度。SFF有两个字节的识别码,EFF有四个字节的识别码。数据区最多长8个数据字节发送缓冲器长13个字节。 表4.5 SJA1000发送缓冲器列表(扩展帧) 接收缓冲器(RX):CAN地址“16-28”。接收缓冲器的列表与前面一节讲述的发送缓冲器很相似,接收缓冲器是RXFIFO 的可访问部分。每条信息分为描述符和数据区。 图4.4 SJA1000接收缓冲器信息存储示意图 验收滤波器:在验收滤波器的帮助下,只有当接收信息中的识别位和验收滤波器预定义的值相等时,CAN控制器才允许将已接收信息存入RXFIFO。验收滤波器由验收代码寄存器(ACRn)和验收屏蔽寄存(AMRn)定义要接收的信息的位模式在验收代码寄存器中定义相应的验收屏蔽寄存器允许定义某些位为“不影响”(即可为任意值)。 有两种不同的过滤模式可在模式寄存器中选择MOD

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁