VxWorks操作系统下的HDLC设备驱动库设计

需积分: 10 3 下载量 200 浏览量 更新于2024-09-09 收藏 308KB PDF 举报
"这篇论文详细介绍了基于VxWorks操作系统设计和实现HDLC设备驱动库的方法,旨在解决传统直接读写硬件寄存器方案所面临的开发难度大和移植性差的问题。作者常诚和陈煦阳提出了一个创新的驱动方案,通过提取硬件无关部分并构建驱动库,提升了驱动的效率和可移植性。该库在VxWorks I/O系统和硬件驱动之间起着桥梁作用,并以SAB82538H芯片作为硬件验证实例进行了具体实现。" 在VxWorks操作系统中,传统的HDLC(高级数据链路控制)设备驱动通常需要开发者直接操作硬件寄存器,这不仅增加了开发的复杂性,也不利于驱动在不同硬件平台上的移植。为了克服这些挑战,作者提出了一个新型的HDLC设备驱动库设计,它分离了硬件相关和无关的功能。驱动库负责处理硬件无关的部分,使得驱动开发者可以专注于硬件的特定实现,同时为应用程序提供统一的接口。 HDLC驱动库的设计分为几个关键部分。首先,总体设计考虑了读、写、初始化流程的实现,确保数据传输的高效和正确。缓冲区的存储表示是其中重要的一环,因为HDLC协议基于帧进行数据交换,需要有效管理数据缓冲以适应帧的边界。接口函数的设计则使得驱动库能够灵活地与上层应用和底层硬件通信。 论文以西门子的SAB82538H HDLC控制芯片为例,详细阐述了驱动库的具体实现步骤。通过这种方式,不仅提高了驱动的效率,还改善了其可移植性,因为驱动库可以独立于具体的硬件实现。使用的VxWorks版本是5.5.1,开发工具是Tornado 2.2.1。 此外,论文还讨论了VxWorks提供的串行设备驱动库的局限性,如不支持多字节数据操作和需要手动插入帧分隔符,这些都使得直接使用串行设备驱动库开发HDLC驱动变得困难。而新的HDLC驱动库方案解决了这些问题,简化了开发流程,提高了性能,并增强了驱动在不同VxWorks系统间的移植性。 这篇论文提供了一个实用的解决方案,对于在VxWorks环境下开发高效、可移植的HDLC设备驱动具有重要的参考价值,尤其是在工业自动化、网络通信等领域,这些领域常常需要对HDLC协议有深入的支持。