基于C8051F单片机的CAN总线硬件系统设计_曹少华

汤杯收稿日期:2006-12-13
作者简介:曹少华(1982 ),男,安徽人,在读硕士研究生,主要研究方向为嵌入式系统与控制网络;张培仁(1944 ),男,教授,博士生导师,长期从事嵌入式系统、CAN /485等控制网络研究。
基于C8051F 单片机的CAN 总线硬件系统设计
曹少华,张培仁,王津津,李 勇,胡晓柘
(中国科学技术大学自动化系,安徽合肥 230027)
摘要:从分析C AN 总线控制系统的设计思路入手,着重讨论设计中的主要问题,采用RS -485/422辅助CAN 总线的混合总线结构,选用C8051F 系列单片机和U SB 转UART 桥接器CP2102作为控制核心,设计了一种多主、多功能的混合式总线监控系统。试验表明:该系统成功解决了数据传输瓶颈、数据冲突、同步等一系列问题,具有良好的实时性和稳定性,广泛适用于各类远程大型实时监控网络。
关键词:CAN;C8051F;U SB 接口;远程监控系统
中图分类号:TP336  文献标识码:A  文章编号:1000-8829(2007)11-0038-04
D esign of CAN H ardware system Based on C 8051F M CU
CAO Shao -hua ,Z HAGNG Pe-i ren ,WANG Jin -ji n ,L I Y ong ,HU X iao -zhe
(D epart m en t of Auto m ation ,Un i versity of Science and Technology of Ch i na ,H efei230027,C h i na)
Abstrac t :A ki nd o fm ult-i m aster and m ult-i functiona l surveillance syste m based on CAN i s desi gned .Fo llow i ng the discussion abou t
the m a i n issues of CAN syste m des i gn ,a m i xed bus a rchitecture ,CAN associated w it h RS -485/422,is i ntroduced .T he core desi gn i s C8051F SOC M CU s and CP2102,a new U SB to UART br i dg e .The result o f i m p l em entation shows tha t th i s syste m successf u lly so l ves the m a i n i ssues ,for exa m ple ,the bo ttleneck i n data trans m ission ,data co lli sion and synchroniza tion .The h i gh rea -l ti m e ab ility and stability m ake th i s desi gn su itab le for var i ous l ong -d istance rea -l ti m e surveillance ne t w orks .K ey word s :C AN;C8051F;U SB i nte rface ;re m ote s u rve ill ance syste m  控制器局域网(CAN,contro ll e r area ne t w ork)是Bosch 公司提出的一种串行数据通信协议,它的模型结构包括物理层、数据链路层和应用层,信号传输介质是双绞线,通信速率最高1M b /s(40m ),直接传输距离最远10k m (5kb /s),每条总线可挂接设备多达110个,特别适用于
实时性要求很高的网络。由于通信速率高、开放性好、报文短,纠错能力和扩展能力强以及控制简单、应用成本低等优点,CAN 总线已被应用到众多的工业过程监控领域,是公认最有前途的现场总线之一[1]。
由于是多主控制,CAN 总线系统在设计过程中必然会存在竞争、同步等问题,同时对于任何一种CPU 而言,都需要将并行数据转换成CAN 总线串行数据格式,并附加相应的串行控制位。如何保证CAN 总线数据传送的一贯性和连续性,并很好地处理总线与CPU 竞争消息RAM,以及上位PC 机数据接口瓶颈和数据冲突等一系列问题,将是CAN 总线控制系统设计的重点。笔者根据这一思路,分析比较了大量的M CU 、C AN 控制器芯片和不同的总线结构,设计出基于C8051F 系列单片机的CAN 复杂总线控制系统,很好地解决了这些核心问题。本设计的硬件系统和基本的软件系统已经全部实现并得到了验证。
1 CAN 总线控制系统总体结构设计
一个优秀的分布式控制系统应该满足实时监控、智能扩展、
可远距离传输、可应对复杂网络、良好的稳定性和方便性、完善的上位机管理等要求。为此比较了现在控制领域中最常用的控制总线  CAN 和RS -485,并给出了完整的控制系统解决方案。
相对于R S -485/422只能采取主从式的多点通信,CAN 可以实现真正意义上的多主通信,并且竞争和同步基本上由协议内部解决,设计者只需在此基础上做出进一步设定。就节点数而言,RS -422支持10个,RS -485支持32个,而CAN 可支持110个之多,并且最大传输距离远大于RS -485/422的1219m 。同时CAN 总线有着更低的误码率(10-11数量级),并且由硬件完成底层的逻辑功能,由协议完成大部分数据链路层功能,用户只需在应用层上设计。与RS -485/422相比,CAN 的同步位可以更好、更可靠地保证数据传送,同时它还采取了非破坏性仲裁技术,并能根据错误检测,在总线严重受干扰的情况下自行判断关闭总线,确保正常的数据传输。
然而由于每帧报文最大只能传送8B 数据,CAN 总线在大批量数据传输上速度大大下降,而R S -485/422却没有这种限制,因而更适用于数据量较大的场合;此外,目前绝大多数现场控制智能仪器都配有R S -485/422接口,也使得RS -485/422总线的应用更为方便。
基于以上分析,综合CAN 和RS -485/422总线的优势,设计了如图1所示的混合CAN 总线监控系统。它以CAN 总线为主,部分数据量较大或需要双通道数据通信节点间采用一个或多个R S -485/422总线,组建成辅助子网,作为CAN 总线的有力补充。
图1 CAN
总线控制系统总体结构
图2 CAN 通用节点电路结构
系统主要由上位PC 机、带有U SB 接口的主机C AN 节点、通用CAN 节点、CAN 网关节点、中继器节点,以及专用于高精度ADC 采样和精密控制的智能测控节点组成。网络采用总线式拓扑结构,工作在多主通信方式,可根据具体应用需求任意添加或删除节点。
2 M CU 选择与CAN 节点功能设计
选择合适的M CU 是CAN 总线控制系统设计成功的关键。它必须能适应各类复杂监控系统的要求,如实时性、低功耗、快速数据处理、集成数模外设功能、集成CAN 总线接口,还应该集成充足的F lash 或RAM 供程序、数据存储,以简化电路,提高系统的可靠性。此外,它还要具有低成本和恶劣环境下的适应性。在综合比较了当前业界流行的几款M CU,如DSP2000系列、ATM 89系列和C8051F 系列之后,最终选择了S ilicon L aborator i es 的C8051F 这一系列高性能8位单片机。
C8051F 系列单片机是完全集成的混合信号系统级芯片(SOC ),具有与M CS -51完全兼容的指令内核。由于采用了流水线处理技术,不再区分时钟周期和机器周期,大大提高了指令执行效率,使其处理速度不逊于许多16位单
片机(如DSP2407)。在低功耗的同时它还拥有着控制系统所需的丰富模拟、数字外设,大量的外设功能接口,通过交叉开关表分配到64个I/O 引脚,这一独创性设计使得芯片集成度大大增高。此外,C8051F 还采用了F l ash ROM 技术,集成了J TAG,实现了真正的在线编程和片上调试[2];
其中,C8051F 040内集成了完全支持CAN2.0A 和CAN 2.0B 的CAN 控制器,独立的消息RAM 可以处理32条消息对象,每个消息对象都可以进行发送和接收滤波,最高工作速率达到1M b /s ,能够完成CAN 总线协议数据链路层和应用层的所有功能[3]
;其中CAN 总线的竞争处理、CPU 接口、同步、数据的一贯性以及连续性保证,都是由硬件来解决,CP U 因此得以腾出大量的精力来处理其他的用户功能。以上这些特性,使得F040成为CAN 总线节点微控制器的良好选择。
在此分析基础上,分别设计了以下CAN 总线节点:
(1)通用CAN 节点。以实现CAN 通信功能为主要目的,同时将微控制器F040内集成的大量外设引出,供无限功能扩展,并可实现1~2条R S -485/422总线辅助主CAN 总线通信。(2)智能测控节点。采用集成了24位ADC 的高速M CU C8051F350和带SP I 接口的独立CAN 控制器M CP2515,通过CAN 总线将实时采集数据送至控制网络,根据接收的指令控制底层器件完成相应动作,实现智能测控。
(3)主机CAN 节点。实现CAN 总线与上位PC 机的通信接口,选用U SB 转UA RT 桥接芯片CP2102,完成主机节点与上位机的通信,实现即插即用、U SB2.0高速数据传输,无需额
外供电。
此外,为了满足远距离数据传输以及具有
继电器控制模块复杂结构的控制系统要求,如水利测控系统、大型过程控制系统,在主CAN 总线上又添加了网关节点和中继器节点,实现CAN 总线的子网扩展和远程传输中继。
压屏机
3 CAN 通用节点设计
3.1 通用节点与最小系统板设计
由于C8051F040的数字和模拟外设功能强大,大大减少了外围芯片,简化了硬件电路,使最小系统电路体积缩小;并且通过引出的微控制器引脚,可以方便地任意扩展节点功能。电路设计如图2所示。
鼻渊散采用T I 公司生产的3.3V 芯片SN65HVD230CAN 作为总线收发器,该收发器与PCA82C250引脚兼容,具有差分收发能力、高速率传输(1M b /s)、高抗电磁干扰、超小封装、低功耗性能,并有3种不同工作模式可供选用,与F040配合使用,可使外围电路更加简洁。
作为CAN 总线辅助的R S -485/R S -422总线接口电路,采用M ax i m 公司的低功耗、限摆率收发器MAX 489E ,通过F040的两个UART 和4个通用I/O 引脚来进行收发和控制,可以任意配置成4线或2线、R S -485或者R S -422总线。3.2 具体硬件电路
q1seC8051F040最小系统硬件电路如图3所示,限于篇幅省略了另外一个MAX 489E 外围电路。图中M AX 489E 的D I 、RO 、DE 、/RE 引脚分别连接F040的P 0.0,P0.1,P3.0,P3.1引脚,前
图3 C8051F040最小系统硬件电路图
两个引脚由交叉开关分配给UART 0,后两个普通I /O 分别作发送和接收使能信号。P0.1(RXD0)靠近F
040的引脚处加上一个10k  的上拉电阻R 8,用来保证RXD 输入端常态为高电平,准确检测低电平的出现。此外,在M AX 489E 的输入端口A 、B 间并联一对方向相反的二极管,保护器件不被过高的瞬态电压损坏,接着各自串联一个10k  电阻R 14、R 15限流,再通过一组上下拉电阻进行电阻匹配,有效抑制反射波干扰,保持总线处于高阻态时,接收端收到的始终是 1 电平。最后并联一个电阻R ,作为R S -485/422总线的终接电阻,其阻值等
于传输电缆的特性阻抗,一般取120
。在本节点作RS -485的终端节点,并且传输距离大于300m 时,闭合跳线片J P4,使终接电阻工作。
CAN 收发器SN 65HVD230的D 、R 引脚分别连接F040的CANTX 和CANRX ,并在靠近C ANRX 处加一个10k  的上拉电阻R 10用于保证接收端常态为高电平,准确检测起始位低电平。在CANH 和CANL 输出引脚间并联一个电阻,作为CAN 总线的终接电阻,在本节点作C AN 总线终端节点时,闭合跳线片J P3,使终接电阻工作。终接电阻值R 等于传输电缆的特性阻抗,一般取值120 。S N 65HV D230的R s 引脚为斜率电阻输入引脚,通过F3.6引脚和跳线片J P2改变加在该引脚上的电压,可以改变收发器工作的方式。
3.3 CAN 通信软件
CAN 通信软件设计通过K e il C51实现,采用模块化设计方法,分别完成F 040交叉开关配置与端口初始化、外部振荡器初始化、CAN 定时寄存器初始化、消息对象初始化、CAN 数据发送和接收、消息响应、错误处理、系统广播等,对于不同的系统功能和应用环境,可方便地进行编程重组。
3.4 CAN 网关、中继器设计简述
在上述基于C8051F040的C AN 节点最小系统基础上,采用M icro ch i p 公司研制的带SP I 接口独立CAN 控制器M CP2515,使微控制器通过SPI 总线连接M CP2515,再通过收发器SN65HVD230连接CAN 总线。加上原有的CAN 总线控制器,即可实现双CAN 总线接口。若将此节点CAN 通信软件设置为接收数据全部实时转发,则可实现CAN 中继器;若设为接收数据按地址部分转发,则可方便地实现CAN 网关功能。
4 带U SB2.0接口的CAN 主机节点设计
4.1 主机节点设计需要解决的问题
主机CAN 节点是C AN 总线与上位PC 机的通信接口。由于大量的总线数据需要从各个节点通过主机节点传送至上位机,又有众多的指令需要通过主机节点向下转发或进行大范围广播,CAN 总线与PC 机在接口处的数据瓶颈和数据冲突问题由此而生。
首先,主机节点需要实现与PC 机的高速通信,这样才能保证监控系统的实时性和数据的完整性,否则,大量待转发的数据
和指令将在主机节点堆积,直至内存满而直接丢弃。通用串行总线U SB 因具有连接简单方便、快速灵活、高速、可靠和总线供电等优良性能,已经逐渐替代了普通的串口通信(最大传输速率限制20kb /s),成为主机节点与上位机通信的首选。
其次,主机节点需要解决两次握手,即PC 机与主机节点的握手通信,主机节点与CAN 总线的握手通信。
此外,主机节点还需要配有充足的内存,用来缓存大量的上传数据和下传指令,解决数据的冲突问题。
由于C8051F040不仅有CAN 控制器,还有大量的存储空间  64KB 的片内F lash 和4K B+256B 的内部RAM,以及外部64KB 数据存储器接口,完全符合CAN 通信和缓存数据空间的要求。而S ili con L aborator i es 公司的U SB 转UART 桥接芯片CP2102,内部自带512B 接收缓冲器和512B 发送缓冲器,更进一步从硬件上解决了数据冲突的问题。它还有300b /s~921.6kb /s 的波特率变化范围,满足高速通信要求;并且集成片内相应的上拉电阻,把全部功能集中在5mm  5mm M LP 封装中,外围电路十分简单;另外,CP2102还集成了5V 转3V 电压调节器,可以由U SB 总线来对整个主机节点供电[3]
,这样整个电路就只需一根U SB 连线即可实现与PC 机通信,无需额外电源,即插即用,十分方便。
因此,选用了C8051F040和CP2102来设计U SB 接口的主机C AN 节点。4.2 硬件电路设计
基于C8051F 040和CP2102芯片设计的主机CAN 节点电路,如图4所示。由于只需要用到C AN 控制器和两个UART,其他外设接口无需引出,使得C8051F040的外围电路更加简洁。本节点采用S i pex 公司的3.3V 低功耗RS -485收发器SP3485来连接两线制R S -485总线。
为了方便,只用简单的UART 连线,即F040的P1.0(RXD 1)、P1.1(TXD1)引脚分别与CP2102的TXD 、RXD 相连。此外,CP2102具有U SB 挂起和恢复信号支持功能,将它的SU S -END 与/SU SPEND 引脚连接到F 040的P1.3、P1.2,并在交叉开关里将后者设为外部中断/I NT 0。这样,当在总线上检测到挂起信号时,CP 2102将进入挂起模式,发出S U SPEND 和/S U SPEND 信号,外部中断0触发F040里的中断处理程序,告知F 040停止
图4 带USB 接口的CAN 主机节点电路
向上位机转发数据,并做出缓存数据以及其他一系列响应动作。本设计中,CP2102可由两种方式复位,一种是F040输出一个复位信号给CP2102的/R S T 引脚,进行软件复位;另一种方式是在程序无法检测到芯片时进行硬件复位。本设计中,针对C8051F040和CP2102分别设计了硬件复位电路。
值得注意的是,/S U SPEND 在CP 2102复位期间会暂时处于高电平,为确保/I NT 0的状态,特在/S U SPEND 引脚加上一个10k  的下拉电阻,以避免这种情况。
整个主机CAN 节点的电路实现仅为5c m  6cm ,只有普通鼠标大小的一半;并且只需一根U SB 线与上位机相连,一条线与CAN 总线相连,即可实现对整个控制系统的监控。如果使用便携式计算机,还能随时随地跟踪总线状态。
4.3 U SB 通信软件设计
作为上位机的基本通信软件,不仅应该提供U SB 与PC 机操作系统的软件接口,还要能够实现两次握手,能够灵活设置两种通信的波特率,并实现收发数据和UART 状态显示这一系列主要功能。拉紧带
由于CP2102内置有与计算机通信的U SB 协议,上位机在安装S i Labs 免费提供的CP2102驱动程序后,主机CAN 节点就会在计算机上产生一个增加的虚拟COM 口,用户可以按照通用串行口的控制方
式使用这个COM 口控制CP 2102,从而实现与F040的通信,再由F040最终到达C AN 总线。
用V B 设计出的主机CAN 节点-上位PC 机基本通信软件如图5
所示。
图5 主机CAN 节点-上位机通信软件界面该通信软件分别实现了串口选择、波特率设定、串口开关控
制、接收显示及保存数据、通信状态监控、数据与命令字的发送。主机CAN 节点可以根据规定好的命令字来调整UART 通信波特率、设定CAN 总线波特率、发送控制命令以及收发各种数据等。
5 结束语
基于C8051F040、F350单片机以及U SB 转UART 桥接芯片CP2102的CAN 总线控制系统设计方案,在硬件和软件上都得到了检验。它是一个功能强大、
多主的混合总线监控网络,成功地解决
了监控系统中数据传输瓶颈和数据冲突、数据同步等一系列问题,具有良好的实时性和稳定性,结构简单,集成度高,易扩展,易操作。其中通用节点的设计使具体应用更方便、更灵活;中继器和C AN 网关节点的设计可实现超远距离大型监控网络;带U SB 接口的主机CAN 节点即插即用,无需额外供电,使用便携式计算机作上位机与之相连,便可随时随地管理跟踪整个系统状态。该控制系统能够方便实现各类工业过程、传感器网络、水利工程等领域的分布式实时监控,有着广阔的应用前景。参考文献:
[1] 史久根,张培仁,陈真勇.CAN 现场总线系统设技术[M ].北京:国
防工业出版社,2004.
[2] 鲍可进.C 8051F 单片机原理及应用[M ].北京:中国电力出版社,
2006.
[3] C8051F04x Data Sheet ,Rev i s i on 1.4[Z].S ili cion Laboratories ,2004.[4] CP2102Dat a Sheet ,R evisi on 1.1[Z].S ilici on Laboratori es ,2005.
研华科技高交会精彩呈现,新品倍受关注
2007年10月17日,为期6天的第九届高新技术成果交易会在深圳会展中心拉下帷幕,研华科技以彩稳重的展台形象再次突显了工控行业领导者的风范,向到场的观众展示了研华嵌入式主板、工业计算机平台、平板电脑、Compact PC I 、嵌入式工控机、网络安全平台、数字视频监控系统、数字电子看板、车载终端等几十种最新产品。
生动的展示,直觉的感受,研华车载终端产品和U bi Q 智能家居终端产品以其新颖的展示形式和尖端的科技吸引着来往的人。研华展出的高性能S OM-Express 模块:S OM-5782和高集成度的SO M-XT
X 模块:SO M-4780,也倍受关注,特别是07年初开始推广的SO M 载板设计协助服务已经得到了军工、电力、医疗等行业客户的认可,本次展会上也引起了诸多观众的兴趣。该区产品从操作员终端(HM I)、坚固型IPC 电脑平台到各种分布式和插入式I/O 系统硬件和软件,专注于工业自动化领域,为客户 一站式自动化采购 提供最佳选择。展览过程中无论是普通观众还是专业观众提出的问题,研华销售及工程师们都给予了最及时和详实的解答。
正如研华企业宣传片中所说的那样 真实值得信赖,通往未来的路有多远,我们的承诺就有多坚定! ,研华通过此次高交会再次展示了研华作为全球领先的网络平台(eP l atf or m )服务供应商的形
象,研华也将继续为客户提供值得信赖的eP l atrfor m 服务。

本文发布于:2024-09-22 11:37:39,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/217293.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:总线   节点   数据   系统   设计
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议