ARM嵌入式工控机研究:CAN总线驱动开发与初始化
需积分: 49 57 浏览量
更新于2024-08-07
收藏 5.38MB PDF 举报
"深入理解软件构造系统原理与最佳实践,设备初始化,CAN总线驱动,PC/104,CPLD,ARM,湖南大学硕士学位论文,李臻君,电路与系统,黎福海,嵌入式工控机,S3C2410,Linux操作系统,CAN网络,以太网络,总线控制器,驱动编写"
本文主要探讨了基于ARM的PC/104总线嵌入式工控机的研究和实现,涉及多个关键知识点。
首先,CAN总线是一种广泛应用的工业现场总线,以其低成本、高可靠性和实时性受到青睐。在Linux系统中,由于缺乏现成的驱动,需要自行开发。文中提到的CAN控制器SJA1000由PHILIP公司制造,集成物理层和数据链路层,支持报文的优先级控制、错误检测及自动重发功能。驱动编写涉及初始化、设备注册、缓冲区管理以及文件操作接口等环节。
设备初始化阶段,CAN驱动程序需要对控制器进行配置,比如确定PC/104总线上的地址映射。在本系统中,PC/104总线内存映射到虚拟内存0xfa000000,而CAN控制器位于100h地址,因此其虚拟内存地址为0xfa000100。使用`volatile`关键字防止编译器优化控制器内存存取。
文章还提到了在特定工业控制应用中,ARM处理器因低功耗和高性能适合使用。由于ARM不直接支持PC/104总线,设计中利用CPLD(复杂可编程逻辑器件)实现ARM本地总线与PC/104总线的转换。硬件部分详细描述了最小系统、CAN网络、以太网络和PC/104总线控制器的实现,特别是PC/104总线控制器的时序分析和VHDL实现。
在软件层面,嵌入式Linux操作系统被移植到S3C2410处理器上,包含了配置、编译和下载运行调试的步骤。同时,开发了PC/104总线驱动,实现地址映射和中断绑定,以及CAN总线驱动,详细阐述了初始化、中断处理、数据缓冲区管理和文件操作接口的实现过程。
最后,该系统在机车工业控制领域得到应用,经过运算性能测试、高低温测试和射频干扰测试,证明了其满足设计要求,并在3个月的装车试运行中表现出良好的稳定性。
关键词涵盖的领域包括嵌入式系统设计、ARM处理器技术、PC/104总线接口、CAN通信协议以及在实际工业控制环境中的应用。
点击了解资源详情
点击了解资源详情
116 浏览量
205 浏览量
点击了解资源详情
点击了解资源详情
147 浏览量
点击了解资源详情
点击了解资源详情
Yu-Demon321
- 粉丝: 23
- 资源: 3955
最新资源
- ehcache-2.8.0.zip
- 易语言学习-视频播放支持库(测试版) (1.0#0版).zip
- UI设计框架工具集 Semantic UI Kit .xd素材下载
- 行业分类-设备装置-烟熏炉的快拆式燃烧仓结构.zip
- device_oneplus_enchilada:OnePlus 6的设备树
- django-unicorn:神奇的Django全栈框架。 :sparkles:
- android nfc 读写demo
- shooter:使用node.js和HTML5制作的多人射击游戏
- 暑假儿童乐园PPT模板下载
- canal1.1.4(1.1.5).rar
- HackerRank-Problem-Solving:该存储库提供了用于解决hackerrank类别问题的解决方案。 解决方案是我创造的
- 易语言学习-超级加解密支持库 (1.1#0版)静态库版.zip
- 学习资料:超实用的双通道数据传输仿真和单片机源码(基于adc0832)-电路方案
- 免费年会抽奖软件特别版.rar
- linux平台远程桌面-基于Java AWT、SpringBoot、websocket、canvas的跨平台远程桌面实现
- storm_r1.1-adarna.zip