基于ARM的Linux下LonWorks总线设备驱动设计
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于ARM的Linux下LonWorks总线设备驱动设计
LonWorks 是美国Echelon 公司1992 年推出的局部操作网络,最初主要用
于楼宇自动化,但很快发展到工业现场网。
LonWorks 技术为设计和实现可互
操作的控制网络提供了一套完整、开放、成品化的解决途径,它协议完整、通
信可靠,而且为用户提供了功能强大的开发工具(LONBU ILDER,NODEBU ILDER)。
在LonWorks 现场总线设备的使用过程中,由于其设备驱动与操作系统的相
关性,从而要求开发者在开发过程不仅实现硬件构成,更需要熟悉操作系统及
设备驱动程序的制定。
本文给出在ARM 平台下实现LonWorks 总线设备的互联,并在嵌入式Linux 系统下,介绍LonWorks 现场总线设备驱动程序的设计
与实现。
1 LonWorks 总线设备的构成
LonWorks 技术的核心是神经元芯片(Neuron Chip)。
该芯片内部装有3 个微处理器:MAC 处理器完成介质访问控制;网络处理器完成OSI 的3~6 层网络协议;应用处理器完成用户现场控制应用。
它们之间通过公用存储器传递数据。
同时神经元芯片共设置11 个I/O 口,这些I/O 口可根据不同需求,利用Neuron C 编程来灵活配置与外围设备的接口,如RS232、并口、定时/计数、位I/O 等。
其芯片结构如图1 所示[1]。
在本系统设计中,基于嵌入式ARM 平台下实现对LonWorks 总线的访问,
设计原理是利用S3C2410 芯片的SPI(Serial Peripheral Interface)接口[2]与Neuron 芯片来实现数据通信,其原理如图2 所示。