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

发布时间:2014-10-27 阅读量:898 来源: 我爱方案网 作者:

【导读】CAN总线最早是德国的BOSCH公司为解决汽车的监测,控制系统而设计的。现在,已由汽车行业扩展到过程工业,机械工业,机器人和楼宇自动化等领域。本文重点就模拟量输入模块和开关量输入模块的设计,采用具有CAN接口的C8051F550单片机作为系统设计的从节点,用来采集模拟量和开关量,实现与上位机中央控制器的通信。

1 CAN总线通信网络系统


如图1所示,本设计中通过带有终端器(120欧电阻)的通信介质(双绞线)将上位机和底层模块连接起来。实验中,终端电阻和双绞线阻抗的匹配确保了数据信号不会在总线的两端反射。上位机(主节点)采用USB—CAN接口适配器(型号GYB507),使PC机直接通过USB接口就可连入CAN总线网络,成为一个标准的CAN节点。配合总线通信测试软件CANtool的使用,可直接配置PC机的发送与接收状态,通信速率和报文滤波功能等。同时,还可实时监测显示网络中各从节点与PC机的数据通信,应用简单、方便。


2 智能节点硬件设计

传统的从节点设计是将CPU与CAN总线控制器和总线收发器相连后再连入总线网络,这样使CPU外围电路复杂化,整个系统受外部影响较大。为了解决这一问题,很多单片机厂商都将CAN控制器集成在单片机上。本文中选用C8051F550该单片机,它是内部集成的CAN控制器,完全按照BoshchCAN全功能的CAN模块实现,符合CAN2.0B协议,工作位速率可达1Mpbs。控制器包含有一个CAN内核,消息缓冲区,报文处理状态机和CAN控制寄存器。通信控制器有32个消息对象,可以配置为发送或接收数据。输入数据,消息对象及其标识符存储在CAN消息缓冲区中,能实现CAN协议的数据链路层的全部功能及物理层大部分功能。CIP-51CPU可通过特殊功能寄存器直接或间接访问CAN控制寄存器(CANOCN),测试寄存器(CANOTST)和状态寄存器(CANOSTA)。所有其它寄存器只能通过CANOADR,CANODATH和CANOTAL寄存器以地址索引方式间接访问。


CAN总线的驱动器采用隔离CAN总线收发器CTM1050,通信速率1Mbps,至少可连接110个节点。内部集成的电气输入级隔离电路,可隔离高达2 500V的直流电压。输入级兼容3.3V和5V的CAN控制器,输出级驱动具有温度保护,内部TVS管可防止总线过压功能。与传统的PCA82C250总线收发器相比,主要优点是无需外加光耦可直接使用,外围电路简单,安全,可满足工业现场恶劣条件的使用。图2所示为C805117550与CTM1050的接口电路。

3 智能节点软件设计

图1中三个节点与上位机的通信方式采用的是节点1、3与上位机实现点对点通信工作方式。节点1、3的微处理器C8051F550上电复位后,自动采集模拟电压信号,通过C8051F550内部集成的12位A/D转换,将数字量发送到上位机。上位机实时进行数据监控,如果收到的数据出现错误,可以通过CANtool软件,发送自定义的错误数据标识给两个节点,两节点收到该数据后,停止A/D采样工作。节点1、3与节点2是主从工作方式。当节点2的开关量有按键按下时,1、3节点将实时采集到的数据在发送给节点2,并在节点2的LCD上显示。

3.1 初始化CAN控制器


C8051F550上电复位后,控制寄存器CANOCN的INIT位和CCE位置‘1’。允许寄存器初始化并写入设置信息。需要写入的寄存器主要包括位定时寄存器和扩展寄存器,命令掩码寄存器。主要完成时序参数的配置和消息对象的初始化。本设计中,使用晶振频率为11.05MHz,位定时设置为996.65~1000ns。初始化程序如下:

3.2 CAN中断服务程序

C8051F550的CAN支持的中断方式有状态中断和模块中断。状态中断方式是在报文成功传输或检测到CAN总线出错时发生的。模块中断也称消息中断。CAN控制器允许用户按需求配置消息对象成为中断源。通过设置消息控制寄存器的中断悬挂位可实现此功能。在CAN中断寄存器中以最高优先级来指向这些挂起的中断,而不考虑时序。状态中断有最高优先级,读取状态寄存器会自动清除状态中断值(8000h)。消息中断优先级是随消息编号的增加而减小。消息中断是由清除消息对象的INTPND位来清除的。中断服务流程图如图3所示。


本系统的总线通信网络已实现三个节点与上位机的连调,系统软件采用结构化程序设计方案,使其具有较好的模块化和可移植性,对于不同的系统功能或不同的应用环境,可以方便地进行编程重组。

本文设计的CAN总线通信网络中的主从智能节点经过试验调试,硬件电路工作正常,在总线数据采集系统中抗干扰能力强。软件部分实时性强,准确率高。从节点可以实时地将信息传送给主节点,以便主节点实时监控。整个节点通信系统工作稳定,可以满足现场环境要求。

相关文章

CAN总线汽车仪表基于SAE J1939协议的设计

汽车仪表基于CAN总线的设计系统

CAN总线的新能源汽车电池数据采集方案
相关资讯
2025年5月日本半导体设备销售额创历史次高,AI需求驱动连续17个月增长

日本半导体制造设备协会(SEAJ)于2025年6月24日正式发布其最新统计报告,详细介绍了2025年5月及1-5月日本半导体制造设备的销售表现。这些数据反映了全球半导体产业链的强劲需求,为行业提供了关键的市场洞察。整体来看,日本制造设备销售额持续展现出卓越的增长态势,多项指标刷新历史纪录,凸显了日本在该领域的核心竞争力和市场主导地位。

龙芯3C6000 vs 英特尔第三代至强:国产算力破局之战

全球数据中心处理器市场长期被x86架构垄断,国产处理器面临指令集授权与生态建设的双重壁垒。2025年6月,龙芯中科发布基于100%自研指令集(LoongArch)的3C6000系列服务器处理器,首次在核心性能参数上对标英特尔2021年推出的第三代至强可扩展处理器,标志着国产高端芯片实现从技术攻关到市场应用的跨越式突破。

2025全球车载无线充电普及率破56%,中国增速24%领跑新兴市场

2024年全球车载无线充电系统销量同比增长14%,普及率首次突破50%大关,达53%;2025年Q1进一步攀升至56%。美国以87%的普及率领跑,韩国及北美市场紧随其后。中国欧洲和拉丁美洲需求强劲,其中中国销量同比激增24%,显著拉动全球增长。

汽车底盘传感器技术突破:英飞凌TLE4802实现无屏蔽高抗扰

全球半导体技术巨头英飞凌科技股份公司(FSE:IFX / OTCQX:IFNNY)始终致力于推动汽车电子领域的创新。随着新能源汽车和智能网联汽车的快速发展,底盘系统的安全性、精度和可靠性成为核心挑战。例如,电动助力转向和悬挂系统亟需更高性能的传感方案。在此背景下,英飞凌近期推出的新一代电感式传感器产品线正式亮相,旨在为汽车底盘应用提供颠覆性解决方案。这不仅标志着公司在前沿电子组件的深度布局,更呼应了行业对高可靠性传感技术的迫切需求。

英伟达Q1营收440亿:Blackwell引爆AI算力,自动驾驶增长72%

2025年Q1,英伟达营收达440亿美元(同比+69%),数据中心业务贡献390亿美元(同比+73%),占收入比近90%。Blackwell架构芯片创下公司史上最快增速,推动计算收入增长73%。汽车与机器人部门收入5.67亿美元(同比+72%),自动驾驶技术成为核心驱动力。尽管受美国对华H20芯片出口管制影响(损失45亿美元库存),英伟达仍维持增长韧性,市值一度突破3.75万亿美元,登顶全球上市公司。