单片机在CAN总线智能节点中的应用

合集下载

基于单片机的CAN总线通讯实现讲解

基于单片机的CAN总线通讯实现讲解

CAN总线通讯基于51单片机应用第一章前言1.1 概述控制器局域网(CAN-Controller Area Network)属于现场总线(Fieldbus)的范畴,是众多的属于现场总线标准之一,它适用于工业控制系统,具有通信速率高、可靠性强、连接方便、性能价格比高等诸多特点。

它是一种有效支持分布式控制或实时控制的串行通信网络,以其短报文帧及CSMA/CD-AMP(带有信息优先权及冲突检测的载波监听多路访问)的MAC(媒介访问控制)方式而倍受工业自动化领域中设备互连的厚爱。

CAN的应用范围遍及从高速网络到低成本的多线路网络,它可以应用于汽车系统、机械、技术设备和工业自动化里几乎任何类型的数据通信。

随着计算机硬件、软件及集成电路技术的迅速发展,同时消费类电子产品、计算机外设、汽车和工业应用等的需求不断增加。

高速、高可靠和低成本的通信介质的要求也随之提高。

现场总线是当今自动化领域技术发展的热点之一,它为分布式控制系统实现各节点之间实时、可靠的数据通信提供了强有力的技术支持。

微处理器中常用的串行总线是通用异步接收器传输总线(UART)、串行通信接口(SCI)、同步外设接口(SPI)、内部集成电路(I2C)和通用串行总线(USB),以及车用串行总线,包括控制器区域网(CAN)和本地互连网(LIN)等。

这些总线在速度、物理接口要求和通信方法学上都有所不同。

在计算机数据传输领域内,长期以来使用的通信标准,尽管被广泛使用,但是无法在需要使用大量的传感器和控制器的复杂或大规模的环境中使用。

控制器局部网CAN(CONTROLLER AERANETW0RK)就是为适应这种需要而发展起来的。

随着汽车电子技术的发展,消费者对于汽车功能的要求越来越多,汽车上所用的电控单元不断增多,电控单元之间信息交换的需求,使得电子装置之间的通讯越来越复杂,同时意味着需要更多的连接信号线,这就促进了车用总线技术的发展。

CAN 总线的出现,就是为了减少不断增加的信号线,所有的外围器件都可以被连接到总线上由于CAN总线具有可靠性高、实时性好、成本合理等优点,逐渐被应用于如船舶、航天、工业测控、自动化、电力系统、楼宇监控等其他领域中。

CAN总线接口在单片机网络通信中的实现方法

CAN总线接口在单片机网络通信中的实现方法

CAN总线接口在单片机网络通信中的实现方法CAN(Controller Area Network)总线是一种广泛应用于汽车、工业控制和机器人等领域的串行通信协议。

它在单片机网络通信中具有重要的作用,可以实现高效可靠的数据传输。

本文将介绍CAN总线接口在单片机网络通信中的实现方法。

一、CAN总线的基本原理CAN总线是一种多主机、多从机的总线系统,其基本原理是基于广播方式进行通信。

CAN总线上的每个节点都可以发送和接收数据,它们通过共享线路传递信息。

在CAN总线中,每个节点都有一个唯一的标识符。

当某个节点发送一帧数据时,其他节点会接收到该帧数据并进行处理。

这种广播方式可以实现节点之间的高效通信。

二、CAN总线接口的硬件实现为了在单片机网络通信中实现CAN总线接口,我们需要使用一种具备CAN功能的单片机芯片,并连接相应的硬件电路。

1. CAN控制器:CAN控制器是实现CAN总线通信的核心部件,它负责发送和接收数据,并进行错误检测和纠正。

CAN控制器通常集成在专门的CAN芯片中,也可以作为单片机的一部分。

2. CAN收发器:CAN收发器是将CAN控制器产生的数字信号转换为物理信号,以便在CAN总线上进行传输。

它可以将接收到的差分信号转换为单端信号,并将发送的单端信号转换为差分信号。

3. 终端电阻:CAN总线上的终端电阻用于抵消传输线上的反射信号,并确保正确的信号传输。

终端电阻一般放置在CAN总线的两端。

4. 过滤器电路:过滤器电路用于过滤掉不需要的数据帧,只接收需要的数据帧。

它可以根据CAN帧的标识符进行过滤,提高系统的响应速度。

三、CAN总线接口的软件实现在硬件电路连接完成后,我们还需要编写相应的软件程序来实现CAN总线接口的效果。

1. 硬件驱动:首先,我们需要编写硬件驱动程序,通过设置单片机的寄存器配置CAN控制器和收发器。

这些寄存器包括CAN控制寄存器、接收缓冲区寄存器和发送数据寄存器等。

2. 初始化配置:在使用CAN总线前,我们需要进行初始化配置,包括设置波特率、模式选择、过滤器设置等。

基于单片机的CAN总线通讯实现

基于单片机的CAN总线通讯实现

基于单片机的CAN总线通讯实现CAN(Controller Area Network)总线是一种现代的串行通信总线,广泛应用于汽车电子系统和工控领域。

它具有高可靠性、抗干扰能力强、高速传输、多节点连接等特点,成为实时控制系统的首选通信方式。

实现基于单片机的CAN总线通讯,需要经过以下几个步骤:1.硬件准备:选择合适的CAN控制器和单片机,常用的CAN控制器有MCP2515、SJA1000等。

接下来需要连接CAN控制器和单片机,包括连接CAN高低线路、配置引脚等。

2.引脚配置:根据所使用的单片机和CAN控制器的规格,配置相应的引脚。

通常需要配置CAN_TX、CAN_RX引脚,同时还需要配置中断引脚。

3. 初始化CAN总线:初始化CAN总线的过程包括设置波特率、模式选择、滤波器设置等。

波特率是通信的重要参数,需要保证发送和接收端的波特率一致,通常使用比较常见的波特率如500kbps。

4.发送数据:CAN总线通信是基于消息的,发送数据需要构建CAN消息帧。

消息帧包括标识符、数据长度、数据内容等。

在发送数据之前,需要准备好发送的数据,并将数据放入CAN消息帧中,最后将消息帧发送到总线上。

5.接收数据:接收数据需要配置CAN总线的工作模式和接收过滤器。

当有数据从总线上接收时,CAN控制器将数据存入接收缓冲器,并产生中断或者置位标志位来提醒主控处理接收到的数据。

6.数据处理:接收到的数据可以根据需要进行处理,包括解析、判断、存储等。

根据数据的标识符和长度等信息,可以将数据分发给不同的处理程序进行处理。

7.错误处理:在CAN总线通信过程中,可能会出现数据错误、通信超时等问题。

需要设置相应的错误处理机制,包括错误标志位的监测、错误计数器的清零等。

8.电源管理:在使用CAN总线通信时,需要合理管理系统的功耗和电源。

对于低功耗应用,可以将CAN控制器和单片机配置为睡眠模式,待接收到唤醒信号后再恢复正常工作。

总结:基于单片机的CAN总线通讯实现需要进行硬件准备、引脚配置、初始化CAN总线、发送数据、接收数据、数据处理、错误处理和电源管理等一系列步骤。

单片机通过CAN总线控制家用电器

单片机通过CAN总线控制家用电器

CAN总线是目前流行的现场总线技术之一,依靠可靠性高、价格低廉的优势,已得到了广泛的应用。

CAN总线采取了许多新技术及独特的设计,与一般的通信总线相比,它的数据通信具有突出的可靠性、实时性和灵活性。

CAN总线上的节点数主要取决于总线驱动电路,目前可达110个。

这个特点正好解决了家庭领域中家用电器种类繁多,分布零散的问题。

CAN总线采用节点ID标示每个节点,而不需要专门为每个节点设置地址,这就可以任意添加或删除节点而不用对总线上的其他节点进行任何修改。

这里主要介绍基于单片机AT89S52的CAN总线来控制微波炉工作。

(一)系统的硬件组成如下:(1)CAN总线接口模块①微处理器目前广泛流行的CAN总线器件有两大类:一类是独立的CAN 控制器,如MCP2510,82C200,SJA1000及Intel 82526/82527等;另一类是带有芯片CAN的微控制器,如P8XC582及16位微控制器87C196CA/CB等。

根据课题的实际需要,系统的智能节点均选用A TMEL 8位单片机A T89S52为微处理器。

②CAN控制器CAN控制器选用MCP2510作为控制器,MCP25l0是Microchip 公司生产的一种独立的可编程CAN控制器芯片。

芯片特点如下:<1> 支持标准格式和扩展格式的CAN数据帧结构(CAN2.0B);<2> 0到8字节的有效长度,支持远程帧;<3> 最大1Mb/s的可编程波特率;<4> 2个支持过滤器(filter , mask)的接收缓冲区,3个发送缓冲区,同时还具有灵活的中断管理能力;<5> 支持回环(loop back)模式,便于测试;<6> SPI高速串行总线,最大5MHz;<7> 3到5.5V宽电压范围供电。

MCP2510可在3到5.5V范围内供电,可直接与3.3V I/O口的嵌入式处理器来连接。

单片机和MCP2510的CAN总线通信模块设计

单片机和MCP2510的CAN总线通信模块设计
智能节点电路原理图如图4所示。
2.1软件设计
MCP2510正常工作之前,需要进行正确的初始化,包括设置SPI接口的数据传输速率、CAN通信的波特率、MCP2510的接收过滤器和屏蔽器以及发送和接收中断允许标志位等。与SJA1000不同的是,单片机对MCP2510的接收缓冲器和发送缓冲器的操作,必须通过SPI接口用MCP2510内置读写命令来完成。其读、写命令时序图如图5和图6所示。
单片机和MCP2510的CAN总线通信模块设计
单片机和MCP2510的CAN总线通信模块设计
CAN(Controller Area Network)总线,即控制器局域网。由于具有高性能、高可靠性以及独特的设计,CAN总线越来越受到人们的重视。德国的Bosch公司最初为汽车监控和控制系统设计了CAN总线,现在,其应用已面向过程工业、机械工业、纺织工业、农用机械、机器人、数控机床、医疗器械及传感器等领域发展。CAN总线已经形成国际标准,并已经公认为是最有前途的现场总线之一。CAN总线规范已经被国际标准化组织制订为国际标准ISO11898,并得到众多半导体器件厂商的支持,推出各种集成有CAN协议的产品。CAN总线系统智能节点是网络上报文的接收和发送站,一般由单片机和CAN控制器或二者合二为一组成。
2.MCP2510在智能节点中的应用实例
利用MCP2510和CAN总线收发器TJA1050可构成一个CAN总线分布式测控网络。系统可包括一个主控制器和多个节点控制器,这种节点控制器可对电动机的电流、电压及周围的温度进行监控,其结构如图3所示。
这种网络拓扑结构采用了总线式结构和无源抽头连接,且结构简单、成本低,因而系统的可靠性较高。其信息传输采用CAN通信协议,通信介质采用双绞线。由于CAN总线是基于发送报文的编码,不对CAN控制节点进行编码,故系统的可扩充性比较好,同时增删CAN总线上的控制节点不会对系统的其余节点造成任何影响。

基于单片机的CAN智能总线节点的设计

基于单片机的CAN智能总线节点的设计

基于单片机的CAN智能总线节点的设计陈涛东北大学信息学院模式识别与智能系统,沈阳(110004)E-mail:chentaobnbb@摘要:基于单片机介绍了CAN总线节点的硬件电路结构和软件设计流程图。

完成一个CAN智能节点的主要电路的设计和对于单片机的软件设计中SJA1000的程序初始化,数据发送和数据接收的一般程序流程。

关键词:CAN总线;智能节点;硬件设计;软件设计1.引言CAN(control area network)总线是全数字式现场控制设备互连总线,属于现场总线的范畴[1]。

以其高性能!高可靠性!实时性等优点而被广泛应用于控制系统的数据通信。

CAN总线的硬件接口简单,编程简便,系统便于集成,检错能力强,可在高噪声干扰环境下使用。

所谓智能节点是由微控制器和可编程的CAN控制芯片组成,它们有二者合一的,如芯片P8xC591[2];也有下面介绍的由独立的通信控制芯片和单片机接口构成。

而后者可以采用通用的单片机仿真器,所以设计时更为灵活方便,用的也更多。

2.CAN智能节点的硬件设计智能节点的典型构成如图1所示:智能节点具体由四部分[3]组成:①微控制器②CAN控制器③CAN收发器④外围电路图1 CAN总线智能节点结构图(1)微控制器:微控制器采用单片机89C51。

单片机控制信号(CPU)接受信号,并加以比较判断然后发出命令,是本节点的重要组成部分。

(2)CAN控制器:所设计的CAN节点,其核心器件就是CAN控制器SJA1000,通过单片机初始化后,按照CAN协议内容,SJA1000可以自动完成帧结构的位填充,无需CPU 的参与SJA1000就可独立工作。

SJA1000之所以能完成复杂的电路数据流错误检验,主要归功于其内部大量分工合作的寄存器。

这些寄存器主要包括模式寄存器、状态寄存器、中断寄存器、中断使能寄存器、总线时序寄存器、输出控制寄存器、总裁丢失捕捉寄存器、错误代码捕捉寄存器、错误报警限额寄存器、发送错误计数器、接收错误计数器、时钟分频寄存器以及接收缓冲器、发送缓冲器等寄存器,由于这些寄存器的存在,SJA1000控制器通常被看作外部RAM来访问。

单片机中的CAN总线技术与应用

单片机中的CAN总线技术与应用

单片机中的CAN总线技术与应用在现代工业控制领域中,单片机已经成为了不可或缺的一部分。

而在单片机的通信领域中,CAN总线技术正逐渐崭露头角,广泛应用于工业控制系统中。

本文将探讨CAN总线技术的基本原理,以及其在单片机中的应用。

一、CAN总线技术的基本原理CAN(Controller Area Network)总线技术是一种现场总线协议,最早由德国Bosch公司在20世纪80年代初开发。

它采用串行通信方式,在数据链路层采用非归零码(NRZ)来传输数据。

CAN总线技术拥有以下几个基本原理:1. 硬件结构CAN总线技术采用两线制结构,即CANH(高电平)和CANL (低电平),通过差分信号传输方式来实现数据传输。

这种结构可以有效降低传输过程中的电磁干扰,提高通信的可靠性。

2. 数据帧格式CAN总线技术中的数据帧由两部分组成:标识符(Identifier)和数据域(Data Field)。

标识符用于标识数据的类型和发送方或接收方的信息,数据域用于传输具体的数据。

此外,还包括控制域(Control Field)和CRC(循环冗余校验)域,用于实现数据的控制和校验。

3. 通信协议CAN总线技术采用基于事件的通信协议,即消息传递的方式。

在总线上,多个节点可以同时发送消息,总线上的节点根据标识符来判断是否接收此消息。

同时,CAN总线技术还支持优先级机制,可以根据消息的优先级来处理多个消息的冲突。

二、CAN总线技术在单片机中的应用CAN总线技术在单片机中广泛应用于工业控制系统以及汽车电子领域。

以下是CAN总线技术在单片机中的几个典型应用:1. 工业自动化控制在工业领域中,CAN总线技术可以用于实现各个控制节点之间的通信。

通过CAN总线,不同的控制节点可以实时地传输数据和控制指令,实现对工业设备的集中控制和监测。

同时,CAN总线技术还可以实现故障报警和数据采集等功能,提高工业自动化的效率和可靠性。

2. 汽车电子控制CAN总线技术在汽车电子领域中的应用非常广泛。

基于AT89C51型单片机的CAN总线智能节点设计

基于AT89C51型单片机的CAN总线智能节点设计

为了增强总线节点的抗干扰能力,SJAl000的TX0和RX0并不直接与82C250的TXD和RXD相接,而是通过6N137与AT82C250相接,这样,很好地实现了总线上各节点间的电气隔离。不过,光耦电路用的2个电源VCC和VDD必须隔离。电源的完全隔离可采用小功率电源隔离模块实现。这虽然增加了接口电路的复杂性,但却提高了节点的稳定性和安全性。
基于AT89C51型单片机的CAN总线智能节点设计
1 引言
CAN(Controller Area Network)是控制器局域网,主要用于各种设备检测及控制的现场总线。CAN总线是德国BOSCH公司20世纪80年代初为解决汽车中众多控制与测试仪器间的数据交换而开发的串行数据通信协议。这是一种多主总线,无论是在高速网络还是在低成本的节点系统,应用都很广泛。由于采用了许多新技术及独特的设计,与一般的通信总线相比,CAN总线的数据通信具有突出的可靠性、实时性和灵活性,其主要特点如下:
●直接通信距离最大可达10 km (速率在5 kb/s以下),最高通信速率可达1 Mb/s (此时距离最长为40 m);节点数可达110个,通信介质可以是双绞线、同轴电缆或光导纤维。
●CAN总线采用CRC检验并可提供相应的错误处理功能,保证数据通信的可靠性,其节点在错误严重的情况下具有自动关闭输出功能,使总线上其他节点的操作不受影响。
●CAN总线通信格式采用短帧格式,每帧字节数量多为8个字节,可满足一般工业领域中控制命令、工作状态及测试数据的要求,同时,8个字节不会占用总线时间过长,保证了通信的实时性。
●采用非破坏性总线仲裁技术,当多个节点同时向总线发送信息出现冲突时,优先级低的节点会主动退出数据发送,而优先级高的节点可不受影响地继续传输数据,大大节省了总线冲突仲裁时间,在网络重载的情况下也不会出现网络瘫痪。

C8051F040的车用CAN总线智能节点设计

C8051F040的车用CAN总线智能节点设计

C8051F040的车用CAN总线智能节点设计电气与电子系统是车辆的重要组成部分,其工作状态直接影响车辆的性能。

按照传统设计思想设计车辆电气系统时,往往采取堆积各种子系统的途径来提高系统的性能,因此车辆内部各子系统之间单纯面向任务而不考虑与全局的关系。

随着子系统及装置数量不断增加,传统设计方法遇到了一系列问题:线路增多、布线复杂、电磁干扰增加、系统可靠性下降、检查维修困难等。

为了解决上述问题,现代车辆采用了综合电子系统。

总线是综合电子系统的基础,通过总线节点,综合电子系统可采集、使用、分配和共享车内所有电子系统的各种信息,达到弱化矛盾、增强整体功能的目的。

CAN 总线由于具有性价比高、可靠性高、实时性好、灵活性强等特点,得到广泛应用。

本文针对CAN 总线,提出了一种基于C8051F040 的通用总线智能节点的设计方法。

1 总体设计本文采用C8051F040 单片机作为智能节点的主控芯片来设计CAN 总线通用智能节点。

智能节点通过现场信号调整、高速数据采集获取该节点下设备的参数,并通过总线收发器将数据发送到CAN 总线,同时根据参数及总线上的其他信息和命令对设备进行控制。

通过CAN 总线智能节点,可将车辆电气系统各子系统及设备紧密联系在一起,构成一个实时控制网络,如图1 所示。

考虑到智能节点的通用性,经过对车辆各子系统和设备参数进行分析,确定了智能节点主要指标。

①信号输入:8 路模拟信号输入,16 路数字信号输入,2 路脉冲量输入;②控制信号输出:2 路模拟控制信号输出,8 路数字信号输出;③CAN 总线接口:1 个CAN 总线接口(支持CAN2.0A 和CAN2.0B)。

2 硬件设计CAN 总线节点有两种设计方法,一种采用通用微控制器结合独立CAN 控制器加上收发器,另一种采用集成CAN 控制器的微控制。

基于PIC单片机的嵌入式CAN智能节点及其与PC的通信

基于PIC单片机的嵌入式CAN智能节点及其与PC的通信
初始化系统
程序需要对PIC16F874单片机。显示模块。I/O扩展芯片8255和CAN控制器MCP2510进行初始化。其中对MCP2510初始化是非常重要的,主要包括设置数据传输的波特率,将标识码和屏蔽字写入CAN信息接收过滤和屏蔽控制寄存器。对PIC16F874进行初始化时,要特别注意定时器TMR2。
调试过程中应注意通过查看各个寄存器的值来判断程序执行的程度。
PC端
在编写PC端的程序时,需要将PCL-841双端口CAN接口卡驱动程序库CAN841S.LIB嵌入到自己的工程中,驱动程序库中封装了直接操控CAN接口卡的函数。对CAN接口卡进行操控时必须按照规定流程进行,否则CAN接口卡无法正常工作或者无法正确的发送和接收CAN信息。
硬件设计
Microchip公司的单片机PIC16F874采用RISC指令系统,哈佛总线结构,低功耗,高速度。内部集成了ADC.串行外围接口(SPI)和Flash程序存储器等,具有PWM输出。LCD驱动等功能。PIC16F874通过SPI接口可以实现与CAN控制器MCP2510的无缝连接。PIC16F874的I/O资源丰富,共有A.B.C.D.E五个I/O口,每个I/O口除了基本用途外还有一些特殊功能。
PIC16F874通过SPI与CAN控制器MCP2510连接,其串行数据输入(SDI)脚与MCP2510的SO脚相连,其串行数据输出(SDO)脚与MCP2510的SI脚相连,其串行时钟(SCK)脚与MCP2510的SCK脚相连。MCP2510的复位信号。片选信号由单片机A口的RA5.RA2提供,MCP2510的中断信号。接收缓冲区满中断信号输出到单片机B口的RB0.RB5。
软件部分
PC端的软件采用C语言编写,主要完成CAN信息的实时读龋处理和显示,向嵌入式CAN智能节点发送数据和设置嵌入式CAN智能节点PWM波输出的脉冲宽度等工作。

项目七 汽车CAN总线系统智能节点的设计【 汽车单片机应用技术】

项目七  汽车CAN总线系统智能节点的设计【 汽车单片机应用技术】
,Touran汽车车载局域网(LAN)的构成如图所示。从目前情况看, 世界各大汽车公司的车身网络控制和动力系统网络控制技术平台均己基 本建立,在新推出的车型中,全面采用网络控制技术己成为可能。
(2)高速、实时、容错的网络控制技术 线控概念(x-by-wire)是一种新的汽车工程概念,目前己有使用线控 系统的概念车出现。2002年1月初在底特律举行的北美国际车展上, 展出的跑车Autonomy就首次在汽车中使用了x-by-wire技术。x-by-wire 技术在未来将是十分重要的技术,该技术极大改善了汽车的可操纵性
败。这种现象称为冲突。为了避免冲突,每次只能由一个站点发送信号
,因此,必须有一种仲裁机制来决定每次由哪个站点使用信道,这是属 于数据链路层的任务。总线网中通常采用分布式的控制策略,如CSMA/ CD协议就是常用的规范。
总线拓扑的优点是,所需电缆长度短,布线容易。总线仅仅是一个传
输信道,没有任何处理功能,从硬件的角度看,它属于无源器件,工作 的可靠性较高,增加和减少站点都很方便。缺点是系统范围受到限制(由 于数据速率和传输距离的相互制约关系)。一个站点的故障可能影响整个 网络,故障的检测需要在各站点上进行。
环型拓扑的优点是,所需介质长度较短;它的链路都是单方向性的,因而 可以用光纤作为传输介质。环型拓扑的缺点是,一个站点的故障会引起全网的 故障。
汽车网络大多采用总线型拓扑结构E的汽车网络分类
位传输速率
应用场合
A
低速,<l0Kbps
应用于只需传输少量数据的场合,如控制行李箱 开启和关闭
(3)多媒体、高带宽的网络
未来汽车网络同时将是一个多媒体、高带宽的网络。它能使车主生活更轻松, 并在某种程度上将办公室移入车内。若从长远来看,汽车甚至可以成为一个网站 ,人们可以下载软件以提高汽车的性能。目前,此类技术尚处研发阶段,与蜂窝 移动电话技术相结合,如全球定位系统(GPS)和导航系统等少数技术己在高档汽车 得到应用。作为最早的汽车电子产品的汽车收音机,现在不止是一种娱乐工具, 还可以适配导航系统等的接口。

51单片机can通信原理

51单片机can通信原理

51单片机can通信原理
51单片机CAN通信原理主要涉及到CAN总线的工作原理、硬件
连接和通信协议等方面。

首先,CAN(Controller Area Network)总线是一种串行通信
协议,用于在汽车、工业控制等领域中的实时控制系统中进行通信。

CAN总线采用差分信号进行通信,具有抗干扰能力强、传输距离远、传输速率高等特点。

在51单片机中,实现CAN通信需要通过CAN控制器和CAN总线
收发器来实现。

CAN控制器负责控制CAN总线的发送和接收,而CAN
总线收发器则负责将单片机的数字信号转换成CAN总线上的差分信号,并接收CAN总线上的差分信号并转换成数字信号供单片机处理。

在CAN通信中,数据通过CAN消息的形式进行传输。

CAN消息
由标识符(ID)和数据组成。

发送端通过CAN控制器将消息发送到CAN总线上,接收端通过CAN控制器接收并解析消息。

CAN总线采用CSMA/CR(Carrier Sense Multiple Access with Collision Resolution)协议,能够实现多个节点之间的协同工作,避免数据
冲突。

在硬件连接方面,需要将51单片机的CAN控制器和CAN总线收发器连接到CAN总线上,并通过电阻终端电阻来终止总线。

在软件开发方面,需要编写相应的CAN通信协议的驱动程序,实现CAN消息的发送和接收,并进行数据的解析和处理。

总的来说,51单片机CAN通信的原理涉及硬件连接、CAN消息的发送和接收、通信协议的实现等方面,需要综合考虑硬件和软件的设计。

希望这个回答能够全面地解答你的问题。

凌阳单片机CAN总线智能节点的开发

凌阳单片机CAN总线智能节点的开发
_
1 组成一个 R 0 C反馈 电路 , 以获得振 荡信号, 为外部 中断源 E T 作 X2
l 5 e d a k I p t OB F e b c _ n u2
I 6 OB
C N通信控制器 S 10 , A A J 00C N总线驱动器 8C 5 和 高速 A 2 20

I B O7
的 C N控 制 芯 片 组 成 , 它 们 有 合 二 为 一 的 , 如 芯 片 A
IB、 B 引脚相 连接 , T连接 SC O 1 O 5I 。 O I N P E 6A的 IB。连 接 O2
微处理器 S C 0I P E 6A负责 SA 00的初始化,通过控制 J1 0 SA 00 J 10 实现数据的接收和发送等通信任务。 表 1SC 0 1 P E 6A输入输出口B口 特殊功能
器采用 8C 5 系统 智能节点结构图见 图 1 从 图中可 以 2 2 O( )。 看出, 电路主要 由 4部分构成 , 微 控制 器 S c O 1 独立 { P E 6 A,
I Fe bc O t t 与 OB e d a k u u p2
I . F e b c l p t OB e d a k n u I
与 IB 组成一个 R O,  ̄ c反馈 电路, 以获得振 O t t 荡信 号 u u1 p 作 为外部 中断源 E T XI E r 2 外部 中断源 ( 下降沿触 发)

_
通信接口中, A C N通信控制器采用 SA 00 C N总线驱动 J 10 ,A
器采用 8C 5 ,光耦 隔离部 分采用 6 17C N总线 驱动 2 20 N 3 ,A
e db c e ak
_
串行接 口 S l O的时钟信号 串行接 口 S l O的数据传送信 号 外部中断源 ( 下降沿触发)

基于单片机CAN总线AO智能节点设计讲解

基于单片机CAN总线AO智能节点设计讲解

U9 Vin AD J Vo u t
LM 3 1 7 LZ
R2 4 10K
13 CA NINT 1 2 15 14
C1 1 1 . 0 5 9 2 M HZ 3 0 PF X1 C2 RST M 9 3 0 PF RD 1 7 W R1 6 +5 V X1 X2 31 X1 1 9 X2 1 8
DA CA R7 1K DA CB R8 1K
变量输入控制输出变量输入can总线ao节点软件模型41can基本通信软件与控制器交互完成对can控制器的管理与操作5can溢出处理函数42应用层协议根据can协议编写2组装待发送报文43数据字典智能节点主控制器的ram分配表智能节点的数据中心001fh工作寄存器区202fh标志区可位寻址区域用于存放各种软件标志304fhcan相关数据区500cfh过程数据和相关节点数据缓冲区0d0h以上堆栈区44ao节点应用2模拟输出ao节点具体应用程序有输出刷新标志
VSS 1 10 9 20 19 14 13 1 2 MHZ X2
1 5 PF C7 IN4 1 4 8 R4 47K GN D RS CA NL CA NH 2 8 6 7
XTA L2 XTA L1 RX 1 RX 0 TX1 TX0
C1 0 +5 V 1 5 PF CA NRX D CA NTXD 3 5 4 1
1K DA CB R8 1K
+5 V U4 RST S 1 7 7 CA NINT 1 6 WR 6 RD 5 ALE 3 CS0 4 D7 2 D6 1 D5 28 D4 27 D3 26 D2 25 D1 24 D0 23 /RST CLK OUT /INT /WR /RD ALE /CS AD 7 AD 6 AD 5 AD 4 AD 3 AD 2 AD 1 AD 0 SJ A1 0 0 0 M ODE VD D3 VD D2 VD D1 VSS 3 VSS 2 VSS 1 11 12 18 22 15 21 8 C8 CA NH D1 3 0 PF R2 120 CA NL C7 XTA L2 XTA L1 RX 1 RX 0 TX1 TX0 10 9 20 19 14 13 1 2 M HZ X2 C1 0 +5 V 1 5 PF CA NRX D CA NTXD 3 5 4 1 3 0 PF U5 VC C VR EF RX D TXD 82C 250 GN D RS CA NL CA NH 2 8 6 7 IN4 1 4 8 R4 47K

基于单片机的CAN智能总线节点的设计.doc

基于单片机的CAN智能总线节点的设计.doc

基于单片机的CAN智能总线节点的设计ﻭ
ﻭﻭﻭ全部:
第1单位:ﻭ
北大学人工智能与机器人研究所ﻭ
摘要:
基于单片机介绍了CAN总线节点的硬件电路结构和软件设计流程图。

完成1个CAN智能节点的主要电路的设计和对于单片机的软件设计中SJA1000的程序初始化,数据发送和数据接收的1般程序流程.ﻭ
CAN总线;智能节点;硬件设计;软件设计 (浏览全文)ﻭ
发表日期:
ﻭ2007年10月19日ﻭﻭ同行评议:
“基于单片机的CAN智能总线节点的设计” 完成1个CAN智能节点的主要电路的设计和对于单片机的软件设计中SJ A1000的程序初始化,数据发送和数据接收的1般程序流程,其研究成果具有1定的创新性。

该文仍然存在以下问题并亟待解决:(1)应该说明从事“基于单片机的CAN智能总线节点的设计”研究的目的,否则不能读者有什么启发.(2)CAN智能总线1般与集散等1起组合使用,如果采用单片机进行设计,与集散嵌入方式怎么解决?应该要考虑才行。

(3)语言太口语
化.ﻭ
综合评价:ﻭﻭ注:同行评议是由特聘的同行专家给出的评审意见,综合评价是综合专家对各要素的评议得出的数值,以1至5颗星显示.
ﻭﻭ。

单片机在CAN总线智能节点中的应用

单片机在CAN总线智能节点中的应用

单片机在CAN总线智能节点中的应用作者:kzcd 时间:2006-01-191 Can总线概述CAN, 全称为“Controller Area Network”,是国际上应用最广泛的现场总线之一。

20世纪80年代初,德国Bosch公司为了解决现代汽车中众多的控制与测试仪表之间的数据交换问题,开发出 CAN总线。

CAN总线能有效支持分布式控制或实时控制的串行通信网络,具有抗干扰性强和使用可靠等优点,最初主要应用汽车工业,现在广泛应用于汽车工业、航空工业和工业控制等自动化领域,如分布式环境监测系统、温室环境监控系统、变电站变监测系统等。

CAN总线是一种串行数据通信协议,其通信接口中集成了CAN协议的物理层和数据链路层功能,可完成对数据的成帧处理,用户可在其基础上开发适应系统实际需要的应用层通信协议。

CAN协议的一个最大特点是废除了传统的站地址编码,而代之以对通信数据块编码,采用这种方法可使网络内节点个数在理论上不受限制,还可使不同的节点同时收到相同的数据。

CAN总线提供高速数据传送, 在短距离(40m)条件下具有高速(1Mbit/s)数据传输能力,而在最大距离10000m时具有低速(5kbits/s)传输能力,极适合在高速的工业自控应用上,CAN总线可在同一网络上连接多种不同功能的传感器(如位置,温度或压力等)。

CAN总线的其他特点如下:(1)它是一种多主总线,即每个节点机均可成为主机,且节点机之间也可进行通信;(2)通信介质可以是双绞线、同轴电缆或光导纤维,通信速率可达1Mbps;(3)数据段长度最多为8个字节,可满足通常工业领域中控制命令,工作状态及测试数据的一般要求。

同时,8个字节不会占用总线时间过长,从而保证了通信的实时性;(4)CAN协议采用CRC检验并可提供相应的错误处理功能,保证了数据通信的可靠性。

CAN可以以多主方式工作,网络上任意节点均可以在任意时刻主动地向总线上其它节点发送信息,实现点对点、一点对多点及全局广播几种方式发送接收数据;CAN采用非破坏性总线仲裁技术,当两个节点同时向总线上发送信息时,优先级低的节点主动停止数据发送,而优先级高的节点可不受影响地继续传输数据,节省了总线冲突仲裁时间。

基于Mega8单片机的CAN总线智能节点设计

基于Mega8单片机的CAN总线智能节点设计

基于Mega8单片机的CAN 总线智能节点设计孙道宗,王卫星,俞 龙,孙宝霞(华南农业大学工程学院 广东广州 510642)摘 要:智能节点能通过节点电路中的微处理器对CAN 控制器编程设置工作方式、ID 地址、波特率等参数,实现对网络上的信息接收和发送,他主要由微处理器和可编程的CAN 控制器组成。

以AVR 系列8位单片机Mega8和Philip s CAN 控制器S J A1000为基础,设计了Mega8单片机与CAN 总线的智能节点接口电路,并给出了详细的接口电路原理图和软件设计流程图。

实验证明,此设计有效地优化了以传统8位微处理器为核心的节点电路,增强了所在系统的稳定性和节点通信的可靠性。

关键词:智能节点;Mega8单片机;CAN 总线;S J A1000中图分类号:TP393.03 文献标识码:B 文章编号:1004373X (2006)1005002Intelligence Node Design B ased on the Mega8Single Chip Computer and CAN BusSUN Daozong ,WAN G Weixing ,YU Long ,SUN Baoxia(College of Engineering ,South China Agricultural University ,Guangzhou ,510642,China )Abstract :Through the program of microprocessor in the node circuit ,the intelligent node which is mainly composed of mi 2croprocessor and programmable CAN controller can set working way ,ID address ,Baud rate and so on ,to achieve the receiving and sending of the network information.Based on AVR series 8bits single chip computer Mega8and Philips CAN controller S J A1000,an intelligence node interface circuit of Mega8single chip computer and CAN bus are designed in this paper ,and in 2terface circuit schematic diagram and software design flow chart are provided in detail.Experiments prove that this design effectively optimizes the node circuit focusing on the traditional 8bits microprocessor ,and strengthen the reliability of node communication and the system stability.K eywords :intelligent node ;Mega8single chip computer ;CAN bus ;S J A1000收稿日期:200511201 引 言Mega8单片机是AVR 系列中8位低端处理器,内部具有丰富的资源,具有较高的性能价格比;CAN 总线是目前惟一一种具有国际标准的现场总线,在当今自动控制领域占有越来越重要的地位。

基于CAN总线的智能节点设计

基于CAN总线的智能节点设计

基于CAN总线的智能节点设计朱悦涵;林立;邵明【摘要】应用51单片机为控制核心结合其他的器件设计了一种能连接于CAN总线上的智能节点。

通过单片机控制CAN总线控制器SJA1000,并进一步通过CAN总线收发器PCA82C250,实现该智能节点与CAN总线的通信。

此外通过对MCS-51单片机的I/O进行相应的扩展,使该智能节点具有了8输入和8输出的控制端口。

最终完成该智能节点并通过实际测试,验证了其实用性。

%The thesis introduces a design of a kind of an intelligent node, which is used to communicate with CAN bus. Single- chip microcomputer MCS-51 is applied as a central controller, of which other devices operate under control. Applying the Single-chip microcomputer to control CAN bus controller SJA1000 realizes the communication with CAN bus, through the CAN bus transceiver PCA82C250.Through I/O extension of MCS-51 MCU, the intelligent node has the control port of eight inputs and eight outputs. At last the practicability of the intelligent node has been verified by the practical tests.【期刊名称】《电子设计工程》【年(卷),期】2012(020)024【总页数】4页(P90-92,95)【关键词】CAN总线;智能节点;MCS-51;SJA1000【作者】朱悦涵;林立;邵明【作者单位】福建工程学院,福建福州350108;福建工程学院,福建福州350108;福建工程学院,福建福州350108【正文语种】中文【中图分类】TP336CAN总线,即控制器局域网总线,主要用于各种设备检测及控制的现场总线。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单片机在总线智能节点中的应用
总线概述
, 全称为“ ”,是国际上应用最广泛的现场总线之一。

世纪年代初,德国公司为了解决现代汽车中众多的控制与测试仪表之间的数据交换问题,开发出总线。

总线能有效支持分布式控制或实时控制的串行通信网络,具有抗干扰性强和使用可靠等优点,最初主要应用汽车工业,现在广泛应用于汽车工业、航空工业和工业控制等自动化领域,如分布式环境监测系统、温室环境监控系统、变电站变监测系统等。

总线是一种串行数据通信协议,其通信接口中集成了协议的物理层和数据链路层功能,可完成对数据的成帧处理,用户可在其基础上开发适应系统实际需要的应用层通信协议。

协议的一个最大特点是废除了传统的站地址编码,而代之以对通信数据块编码,采用这种方法可使网络内节点个数在理论上不受限制,还可使不
同的节点同时收到相同的数据。

总线提供高速数据传送, 在短距离(40m)条件下具有高速()数据传输能力,而在最大距离10000m时具有低速()传输能力,极适合在高速的工业自控应用上,总线可在同一网络上连接多种不同功能的传感器(如位置,温度或压力等)。

总线的其他特点如下:
()它是一种多主总线,即每个节点机均可成为主机,且节点机之间也可进行通信;
()通信介质可以是双绞线、同轴电缆或光导纤维,通信速率可达;
()数据段长度最多为个字节,可满足通常工业领域中控制命令,工作状态及测试数据的一般要求。

同时,个字节不会占用总线时间过长,从而保证了通信的实时性;
()协议采用检验并可提供相应的错误处理功能,保证了数据通信的可靠性。

可以以多主方式工作,网络上任意节点均可以在任意时刻主动地向总线上其它节点发送信息,实现点对点、一点对多点及全局广播几种方式发送接收数据;采用非破坏性总线仲
裁技术,当两个节点同时向总线上发送信息时,优先级低的节点主动停止数据发送,而优先级高的节点可不受影响地继续传输数据,节省了总线冲突仲裁时间。

图为一个总线应用系统,主要有主机和各节点组成,主机和节点之间通过收发器及控制器相连,单个节点包括一个单片机控制器、一个收发器和一个控制器。

其中一个典型的应用是:主机接收各节点发送的现场数据,如现场温度、电流或压力等参数,主机经过综合计算、判断作出相应的控制命令,这些命令将通过总线传送至各节点。

各节点由单片机作为控制器,它用于采集现场的各项参数,并执行主机发送的各项命令,这些命令将最终传送至各执行机构,如阀门、电机或泵等。

图总线应用系统
本文将介绍基于凌阳位通用型工控单片机的总线智能节点的设计。

本文将阐述智能节点中的主控器2404A在本方案中的应用特点,及主控器与总线控制器之间的通信。

相关文档
最新文档