儒卓力在上海和深圳举办物联网先进解决方案研讨会
06-06
本文从以太网与工业现场总线的互联出发,主要介绍CAN总线和以太网嵌入式网关电路的设计与实现。
本文比较了两种连接CAN和以太网的嵌入式网关的设计方法,从硬件结构和软件结构两个方面进行了阐述。
目前连接CAN、以太网的嵌入式网关设计方法主要有两种:一是低端MCU加接口芯片的设计方法,二是高端MCU加EOS的设计方法(实时多任务操作系统)。
添加接口芯片的设计方法。
由于CAN仅使用ISO/OSI参考模型的第一层和第二层,因此协议相对简单,更适合成本低、速度要求不高的离散控制系统。
考虑到合理成本和有效利用处理能力两个方面,设计采用低端MCU加接口芯片的方法。
硬件框图如图所示。
主控芯片及以太网接口模块 根据要求,系统选用了性能价格比较高的AT89C55单片机。
它面向测控对象和嵌入式应用,因此其体系结构、CPU、指令系统和外围单元电路都是根据这一要求专门设计的。
它具有高达 20 KB 的内部 FLASH 程序存储器。
AT89C55与指令集完全兼容。
片内FLASH方便用户进行在线编程。
工作速度最高可达33 MHz。
B的内部RAM和32个可编程I/O端口。
3个16位定时器/计数器,8个中断源,支持低功耗空闲工作模式。
以太网接口采用RTLAS芯片,它是一款高度集成的以太网控制器,可以实现以太网媒体访问层(MAC)和物理层(PHY)的所有功能。
RTLAS 内部有两个 RAM 区域:一个为 16 KB,地址为 0x~0x7fff。
为了接收和发送数据包,必须通过 DMA 读写 RTLAS 内部的 16 KB RAM。
它实际上是一个双口RAM,即有两条总线与其连接,一条总线用于RTLAS读/写或写/读RAM,即本地DMA;另一条总线用于单片机读写RAM,即远程DMA;第二个是32字节,地址为0x~0xF,用于存储以太网物理地址。
主控芯片与以太网接口芯片的硬件接口原理图如图2所示。
值得注意的是,由于以太网数据包最大可以超过1字节,而AT89C55的片上RAM只有1字节,所以它无法存储这么大的数据包,因此这里扩展了32 KB的外部RAM,这样也可以提高单片机的数据传输速度。
CAN接口模块 组成CAN系统的主要部件是CAN控制器和收发器。
本设计中CAN接口模块采用SJA芯片和PCA82C芯片。
SJA是一个独立的CAN控制器。
它是飞利浦公司另一款CAN控制器PCA82C的替代品,并增加了新的工作模式(Peli CAN),支持CAN 2.0B协议。
SJA主要完成CAN通信协议,实现报文的组装和拆分、接收信息的过滤和验证等。
PCA82C是CAN控制器与物理总线之间的接口,主要用于增强系统的驱动能力。
在使用收发器的系统中,节点数量至少可以达到2个,并且还具有降低射频干扰(RFI)的能力,并具有较强的抗电磁干扰(EMI)能力。

特别注意: (1)晶振电路问题。
89C55和SJA都应该有独立的晶振电路,并且SJA的时钟输出信号CLKOUT不能用来驱动单片机。
(2) 复位引脚有问题。
SJA的复位虽然是低电平,但不能通过非门直接连接到单片机的复位引脚。
一般来说,解决复位引脚问题有两种方法:第一种是利用单片机的I/O引脚来控制SJA的复位引脚。
优点是单片机可以完全控制SJA的复位过程;二是采用适当的方式对芯片进行复位,为了降低成本,本设计采用第一种方法。
(3) RX1引脚电位必须保持在0.5VCC左右,否则无法形成CAN协议所需的逻辑电平。
(4)一定要注意电缆的终端阻抗匹配,它直接影响CAN总线能否正常工作以及网络性能。
CAN接口模块的硬件电路图如图3所示。
PCA82C的RS引脚连接有斜率电阻R。
该电阻的大小可以根据总线通信速度适当调整。
版权声明:本文内容由互联网用户自发贡献,本站不拥有所有权,不承担相关法律责任。如果发现本站有涉嫌抄袭的内容,欢迎发送邮件 举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。
标签:
相关文章
06-06
06-18
06-18
06-06
06-06
最新文章
使用电子管有哪些注意事项?如何检查电子管之间是否短路?
博通支付1200万美元和解SEC财务欺诈指控
八名运营商高管确认加入虚拟运营商
内蒙古农牧区雷电灾害成因分析及防雷对策
北京联通将5G应用于世园会远程医疗急救
TD-SCDMA最后一轮冲刺测试启动,产业前景更加光明
专访阿里云总裁王健:云计算服务平台梦想成真
USB2.0控制器CY7C68013的接口设计与实现