基于CAN总线的分布式显示控制系统

发布者:笑脸猫最新更新时间:2015-08-21 来源: eefocus关键字:CAN总线  分布式  显示控制系统 手机看文章 扫描二维码
随时随地手机看文章
   CAN(Controller Area Network) 即控制器局域网络,是一种全数字化、多主和双向的现场总线。CAN总线数据通信具有很高的可靠性、实时性和灵活性,越来越广泛地应用于各种工业现场。本分布式显示控制系统采用CAN控制器SJA1000实现各节点间远距离串行通信,得到了很好的效果。系统结构如图1所示。 
基于CAN总线的分布式显示控制系统
主机负责监控各个从机,向从机发布指令,并接收处理从机传来的检测数据。从机执行主机的指令,显示运行信息,向主机传送检测数据。CAN接口电路负责各节点间的串行通信。两只125Ω电阻作为CAN线路的匹配电阻。本文着重介绍CAN总线的设计使用以及点阵显示电路的设计原理,其他功能电路的介绍从略。
CAN总线硬件设计
CAN接口电路如图2所示, SJA1000是PHILIPS公司生产的独立CAN通信控制器,SJA1000集成了CAN协议的物理层和数据链路层功能,可完成对通信数据的成帧处理,该控制器具有多主结构、总线访问优先权、硬件滤波等特点。PCA82C250是CAN 协议控制器和物理总线的接口,它可以提供总线的差动发送能力和接收能力,高速应用可达1M baud,最多可挂110个节点。 
基于CAN总线的分布式显示控制系统
CAN总线初始化设计 
要使SJA1000正常工作,必须先对其作初始化,这是一个重点。对SJA1000的操作是由读写其片内的控制寄存器实现的。待SJA1000硬件复位完成后,单片机就可以初始化SJA1000,初始化程序如下: INITISJA1000: 
RESET:
CONFIG:
OPERATE_MODE:
CONFIG1:
CLR EX0 ;关中断 
MOV DPTR , #0000H 
MOV A , #01H 
MOVX @DPTR , A ;设置复位请求标志 
MOV A , #40H 
MOV DPTR , #001FH 
MOVX @DPTR , A ;CDR=40H 
MOV A , #13H 
MOV DPTR , #0004H 
MOVX @DPTR , A ;设ACR接受代码=13H 
MOV A , #00H 
MOV DPTR , #0005H 
MOVX @DPTR , A ;接受屏蔽寄存器(AMR)=00H 
MOV A , #01H 
MOV DPTR , #0006H 
MOVX @DPTR , A ; BTR0=01H 
MOV A , #1CH 
MOV DPTR , #0007H 
MOVX @DPTR , A ; BTR1=1CH 
MOV A , #1AH 
MOV DPTR , #0008H 
MOVX @DPTR , A ; OCR=1AH 
MOV A , #00001100B 
MOV DPTR , #0001H 
MOVX @DPTR , A ; GTS=0, CDO=1, RRB=1 
MOV DPTR , #0000H 
MOV A , #00011010B 
MOVX @DPTR , A ;进入工作模式 
SETB EX0 ;开中断 
RET 
#p##e#
这里SJA1000的首地址是0000H。只有SJA1000进入复位工作模式,才可以初始化相应的寄存器。时钟分频寄存器(CDR)设定值为40H,表示选BasicCAN工作模式,忽略CAN输入比较器和不用TX1输出做专用接收中断输出。接收代码寄存器(ACR)和接收屏蔽寄存器(AMR)组成接收过滤器,接收代码位(AC.7-AC.0),接收屏蔽位(AM.7-AM.0)和信息识别码的八位(ID.10-ID.3)满足下述方程,该信息才会被接收: 
[(ID.10-ID.3)≡(AC.7-AC.0)] ∨(AM.7-AM.0)≡11111111
总线时序寄存器0(BTR0)可决定波特率预置值和同步跳转宽度的值,BTR0=01H表示波特率设为250Kbps(用16M晶振)。总线时序寄存器1(BTR1)决定位周期宽度,采样点位置和在每个采样点的采样次数。系统中各节点的BTR0、BTR1应设为相同,否则不能互相通信。输出控制寄存器OCR决定了不同输出驱动配置的建立。设置完这些寄存器后,要将SJA1000设为正常工作模式,并按需要使能其相应的中断位。SJA1000中各控制寄存器的详细说明和用法可参考文献1。
CAN总线通信程序设计
各节点间的通信可采用中断方式或查询方式,本控制系统采用中断方式通信。各个节点之间的指令、数据交换通过下面这个子程序模块完成的。 
显示电路各节点的一个重要组成部分是显示电路。作为人机交互界面,显示电路告诉人们系统当前运行信息。显示电路结构图如图3所示。 
基于CAN总线的分布式显示控制系统
单片机的任务是根据上位主机的命令产生显示数据及控制信号。16行×64列的LED显示点阵由点阵块组成。显示电路采用1/16扫描方式,显示点阵的一行对应一路行选通信号,各行的同一列共用一个列选通信号,这样既满足显示要求,又可以简化电路。行驱动电路主要由74HC163、74HC138、Si4953组成,用以产生行选通信号。74HC163和74HC138构成行译码器,在单片机的控制下,从第一行开始按顺序选通显示点阵各行;Si4953是P沟道MOSFET管,作用是提高行信号的驱动能力。在选通某一行后,该行上各个LED是点亮还是熄灭,由各自的列选通信号决定,其它行的LED则全熄灭。显示电路以这样方法逐行扫描显示点阵,只要整个扫描周期足够快,人们就感觉不到显示闪烁。
驱动电路由74HC595级联组成,前一片74HC595的Q,H引脚连接下一片的SER引脚,各片的SRCLK、SRCLR、RCLK引脚分别并联。单片机的RXD口输出显示数据给第一片74HC595的SER引脚;TXD口发出移位脉冲将串行数据逐位移入74HC595中。在一行数据传输完后,单片机向各个74HC595的SRCLK引脚发一个锁存信号,这行数据就被锁入74HC595的锁存器中,产生对应输入数据的列选通信号。在该行显示期间,同时进行下一行显示数据的传输,这样可以缩短扫描周期。
本文介绍的分布式显示控制系统已应用于电梯控制系统中,其性能稳定、可靠。CAN总线的选用提高了本系统的通信效率和可靠性。CAN总线通信具有可靠性高、通信距离远、速率高、多主结构、错误处理能力强等特点,非常适合分布式系统的串行通信。系统中的显示电路是一个成熟可靠的显示方案,可根据这个设计原理,设计出各种规格要求的点阵显示屏。
关键字:CAN总线  分布式  显示控制系统 引用地址:基于CAN总线的分布式显示控制系统

上一篇:单片机软件模拟SPI接口
下一篇:基于SJA1000的CAN总线接口电路的设计与实现

推荐阅读最新更新时间:2024-03-16 14:29

Loto实践干货(3) 测量CAN总线通讯数据
最近在做运动控制卡的项目,调试样机的过程中,需要验证CAN总线通讯功能的正确性。以前只限于理论上认识CAN总线,使用的CANbus的通讯卡也是有上位机例程,基本上简单地配置上位机软件就可以正常工作了。这次调试需要深入测试CAN接口的通讯过程,正好把之前的对CAN的认识再复习深化一下。 之相对远的距离,在工业现场抗干扰能力也很强。下图是我按照CAN总线的要求做的一条双绞线,黄色和绿色分别是CAN_High线和CAN_Low线。要求绞距20mm,不绞合的距离不超过50mm。所以采用CAN总线,是因为它只需要两根双绞线就可以连接多个通讯节点,并且可以传输 规定的双绞线传输距离与CAN总线的传输速率的关系如下表。我们的传输距离很短
[测试测量]
Loto实践干货(3) 测量<font color='red'>CAN总线</font>通讯数据
基于DSP的分布式温度采集记录仪的设计与实现
随着现代信息技术的飞速发展,分布式温度测量控制系统在工业、农业及人们的日常生活中扮演了一个越来越重要的角色。因此,对温度采集控制系统的设计与研究就具有十分重要的意义。 系统总体设计方案 TMS320F2812是TI公司推出的150MHz高速处理能力的高精度定点数字信号控制器。本设计采用TMS320F2812作为数据处理与控制单元,以Maxim公司的单线数字温度计DS28EA00为基础,通过DSP控制温度传感器顺序采集各个测量点的温度,经处理送LED显示并暂存到外扩RAM中,当满足特定的要求时,将数据存储到U盘或SD卡以便于以后分析处理。温度采集记录仪的硬件电路主要包含6个部分:DS28EA00温度测量模块、USB接
[嵌入式]
电力现货市场建设加快,分布式电站投资需提前做好应对
广东电力交易中心日前完成电力现货市场2020年首次全月结算试运行第一轮测试,这是南方(以广东起步)试点继2019年完成按日试结算测试和按周结算试运行后首次开展全月结算的试运行。 在此之前,已有山西、甘肃、山东、浙江、福建、蒙西和四川在2019年全部实现模拟试运行,并在9月密集开展结算试运行测试,全国8个电力现货市场建设进度明显加快。 我国以中长期交易为主、现货交易为补充的电力市场体系建设已初见雏形。据统计,2019年全年市场化交易电量预计达2.3万亿千瓦时,占全社会用电量的32%,同比提高约6%。 电力现货交易是电力市场的重要组成部分 2015年启动的新一轮电力体制改革中,电力市场建设被寄予厚望,而电力现货
[新能源]
一文读懂CAN总线/LIN总线/FlexRay/以太网,汽车总线的未来是它?
20世纪80年代后, MCU和MPU开始在汽车中被广泛使用,汽车电子化进程开始逐年加快。近几年,智能化和网联化在汽车行业兴起,汽车电子化程度更上一层楼。据统计,当前汽车的创新70%来源于汽车电子产品,电子产品成本占整车比例已经从上世纪70年代的4%,成长到现在的30%左右。未来仍将进一步提升,预期到2030年,该比例将可达到50%。在电子零部件越来越多,信息传输量越来越大的需求促动下,汽车网络化势头已经不可挡。因此,传统的电气网络已无法适应现代汽车电子系统的发展,新型 汽车总线 技术应运而生。   图|汽车总线   目前汽车上普遍采用的汽车总线有局部互联协议 LIN 和控制器局域网 CAN ,正在发展中的汽车总线技术还有高速容
[汽车电子]
ARM嵌入式开发系统与CAN总线
  随着集成电路和嵌入式电脑在汽车上的广泛应用,现代汽车上的电子控制器的数量越来越多,常见的有发动机的电子燃油喷射装置、防抱死制动装置(ABS)、安全气囊装置、电动门窗装置、主动悬架等。电控系统的增加虽然提高了轿车的动力性、经济性和舒适性,但随之增加的复杂电路也降低了汽车的可靠性,增加了维修的难度。从布线角度分析,传统的电子气系统大多采用点对点的单一通信方式,相互之间少有联系,这样必然造成宠大的布线系统。因此,一种新的概念——汽车上电子控制器局域网络CAN,也就应运而生。为使不同厂家生产的零部件能在同一辆汽车上协调工作,必须制定标准。按照ISO有关标准,CAN的拓扑结构为总线,因此称为CAN总线。CAN总线被设计作为汽车环境中的微
[单片机]
基于FPGA的飞行模拟器通信接口设计
  飞行模拟器是现代飞行员训练的必需设备,它是一种由计算机实时控制、多系统协调工作、能模拟真实飞行环境的模拟设备。相较于利用飞机的飞行训练而言,利用飞行模拟器的模拟飞行训练不仅不受天气等自然条件的制约,而且没有后勤、机务保障以及飞行安全等因素的限制。国内外许多单位均研制了各种不同种类和规模的训练模拟器,并取得良好的训练效果,保证了飞行任务的圆满完成。   在飞行模拟器的设计中,要求大量的信息能够快速有效地在飞行模拟器的各个模块之间进行高速传递,这就需要一定的通信接口协议来实现数据的交互。目前,飞行模拟器通常采用CAN总线作为通信协议,并采用单片机作为微处理器,可扩展性差。文章根据飞行模拟器的结构特点,分析了现场总线技术和FPGA技术
[嵌入式]
应用于高压电缆的光纤分布式温度传感新技术
Application of Distributed Temperature Sensing Technology in HighVoltage Cable CHEN Jun, LI Yongli (School of Electrical Engineering and Automation,Tianjin University, Tianjin 300072, China) Abstract:The technology of distributed temperature sensing is a novel technique surveying the realtime distribution of spatial
[传感器]
CAN总线接口电路设计注意事项
   CAN总线 是一种有效支持分布式控制和实时控制的串行通信网络,以其高性能和高可靠性在自动控制领域得到了广泛的应用。为提高系统的驱动能力,增大通信距离,实际应用中多采用Philips公司的82C250作为CAN控制器与物理总线间的接口,即CAN收发器,以增强对总线的差动发送能力和对CAN控制器的差动接收能力。为进一步增强抗干扰能力,往往在CAN 控制器与收发器之间设置光电隔离电路。典型的CAN总线接口电路原理如图1所示。   图1 典型的CAN总线接口电路原理图   1 接口电路设计中的关键问题 1.1 光电隔离电路   光电隔离电路虽然能增强系统的抗干扰能力,但也会增加CAN总线有效回路信号的传输延迟时间
[嵌入式]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved