DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1190|回复: 0
打印 上一主题 下一主题

[待整理] 基于Linux的PC104总线与CAN总线通信设计

[复制链接]
跳转到指定楼层
楼主
发表于 2014-10-12 19:46:15 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
1 引 言PC104嵌入式工业计算机由于其小尺寸结构、堆栈式连接、轻松总线驱动的特点得到了广泛的应用。现场总线领域中,CAN总线得到了计算机芯片商的广泛支持,他们纷纷推出直接带有CAN接口的微处理器(MCU)芯片。带有CAN的MCU芯片总量已经达到1亿3 000万片,因此在接口芯片技术方面,CAN已经遥遥领先于FF,PRO-FIBUS,LONWORKS等其他所有现场总线。但是PC104总线不能与CAN总线直接通信,因此在CAN总线控制系统中难以运用。
针对以上问题,以AVR单片机为协处理器设计了PC104总线与CAN总线的转换卡并且考虑到PC104嵌入式工业计算机上通常运行Linux操作系统的特点,编写了转换卡Linux下PC104总线访问双口RAM的驱动程序。该转换卡运用在工业控制系统中,实际表明可以稳定可靠地运行。
2 硬件部分
PC104到CAN总线转换卡的硬件系统框图如图1所示。在PC104总线与CAN总线的通信中,要考虑的主要问题是PC104总线与CAN总线数据同步问题。PC104总线与CAN总线的总线速度存在很大差异,针对这样的问题通常采用的方法是使用双端口RAM或FIFO作为缓冲器,这里使用双端口RAM作为数据缓冲,同时在双端口RAM中预留几个字节作为ATmega64处理器与PC104嵌入式计算机的软握手信号,通过以上方法完成PC104总线与CAN总线的数据同步。EPM7128为Altera的CPLD,这里使用CPLD主要用于PC104到CAN总线转换卡的地址译码。CAN总线通信选用SJA1000 CAN总线控制器实现,为了适应工业现场恶劣的电磁环境,在SJA1000与PC82C250中经过了光隔处理。
[table=560]            [tr]            [td]            <div align="center">
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2025-7-23 22:12 , 耗时 0.078477 秒, 19 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表