预览加载中,请您耐心等待几秒...
1/4
2/4
3/4
4/4

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

基于LPC2119的CAN总线智能节点的设计 长江大学电信学院李家绪徐爱钧万天军 引言 微控制器与CAN总线连接的传统方式是将CPU与总线控制器和总线收发器相连后再 接CPU入总外围电线网路复络,杂化这样,整使个系统受外部影响较大。为了解决这一问 题,很CAN多单控制器。目前,单片机CAN片机集成厂商内部在单纷纷集成片机将的芯片上 控Motorola公制器MC68HC912DG128A司的、Philips公P87C591有和ARM7司的LPC2xxx 系列、Atmel公司的AT89C51CC01和AT89C51CC02、Intel公司的TN87C196CA和 TN87C196CB以及Cygnal公C8051F040等。司的 LPC2119是Philips公司推出的一款性价比很高的ARM7核处理器,内部集成两路独立 的CAN控。ARM核制器、的处成,本低适,理器用于和能具有多种耗小性能领域的特高点 如、消费/教嵌入、DSP和育类。本移动式控LPC2119的文主CAN多媒式应制要介体用等绍 总线智能节点的设计。 硬件设计 LPC2119处理器特点 LPC2119是基于16/32位ARM7TDMI-STMCPU,并一个128带有支持实时仿真和跟踪的 KB嵌Flash存入的。128位储器宽度高速32位代码的存能够储器在接口和独特的加速结构使 最大时钟速率下运行。对代码规模有严格控制的应用可使用16位Thumb模式将代码规模降 低30%,超过而性EmbeddedICE逻能的辑,损失支持却很片上小。实行流水线作业,提供 断点和调试点,具有先进的软件开发和调试环境。LPC2119具有非常小的64脚封装、极低 的功耗、多个32位定时器、4路10位ADC、2路CAN、PWM通道、多个串行接口,包括2 个16C550工业标准UART、高速I2C接口(400kHz)和2个SPI接口,46个GPIO以及多达9 个外部中断,特别适用于汽车、工业控制应用以及医疗系统和容错维护总线。 LPC2119内2个CAN控部集,每CAN控制器一个CAN控制器SJA1000成制器都与独立 有。着相其主要似的,篇,这里的区幅有寄存别在限器结于标构识符接收过滤的编程操作上 不作详述。它的主要特性有:单个总线上的数据传输速率高达1Mb/s;32位寄存器和RAM 访问;兼容CAN2.0B,ISO11898-1规范;全局验收滤波器可以识别所有的11位和29位标识 符;验FullCAN-style自收滤动接波器收。为选择的标准标识符提供 CAN智能节点硬件电路 CAN接口部分包括LPC2119(内置CAN控制器)、光电耦合器和总线收发器,如图1 所示。 CAN总线遵循ISO的标准模型,分为数据链路层和物理层。在工程上通常由CAN控 制器和收发器来实现。收发器选择Philips公司的TJA1050高速收发器,它符合ISO11898标 准。CAN控制器主要完成CAN的通信协议,实现报文的装配和拆分、接收信息的过滤和校 验等。收发器TJA1050则是实现CAN控制器和通信线路的物理连接,提高CAN总线的驱 动能力和可靠性。 为了进一步提高系统的抗干扰能力,LPC2119引脚Tx1、Rx1与收发器TJA1050并不直 接相连,而是通过高速光耦6N137后与TJA1050相连。电路中采用隔离型DC/DC模块向收 发器电路供电。DC/DC模块采用金升阳的B0505S-1W定电压输入隔离非稳压单输出型 DC/DC模块,隔离电压≥1000VDC。这样就可以很好地实现总线上各接点的电气隔离,这部 分电路虽增加了接点的复杂性,但却提高了接点的稳定性和安全性。 TJA1050与CAN总线的接口部分也采用了一定的安全和抗干扰措施。CANH和CANL 与地之间并联两个小电容CH和CL可以滤除总线上的高频干扰并具备一定的防电磁辐射能 力。电容值须由节点的数量和波特率决定,当TJA1050的输出级阻抗大约是20,总线系统 有10个节点速度是500kbit/s,则电容的值不应该超过470pF。另外在两根CAN总线接入端 与地之间分别反接了一个保护二极管。当CAN总线有较高的负电压时,二极管的短路可起 到一定的过压保护作用。根据TJA1050的特性,本设计中CAN终端电阻使用了分裂终端, 即总线端节点的两个终端电阻都被分成两个等值的电阻,用两个60的电阻代替一个120的 电阻,这样可以有效的减少辐射。由于使用了分裂终端TJA1050的EMC,性能得到优化而且 不会产生扼流。 软件设计 软件调试环境采用KEIL公司的keiluvision3,通过ULINK仿真调试。软件设计关键 部分是编写CAN控制器(在LPC2119内部)的驱动程序。主程序只需通过调用驱动程序提 供的接口来实现数据的接收和发送。C