- UID
- 1029342
- 性别
- 男
|
3) 闪存FLASH 模块 闪存芯片在系统断电之后,能够永久保存系统进行重新启动所需的原始软件设置和数据。本文选用ATMEL公司生产的AT49BV1614 闪存芯片,该芯片容量为2MB,芯片上存储嵌入式操作系统uClinux 内核、系统启动程序以及用户程序等。
图3 基于ARM 的嵌入式系统原理图
4) 现场总线CAN 接口电路
这部分电路是用于装置内部主板与其他数据采集板之间的通信。CAN 的通讯速度可以高达1Mb/s (距离在40m以内) ;CAN 对通信介质没有苛刻的限制,可以为双绞线、同轴电缆或者光纤等,比较灵活;其中,最重要的是CAN 通信具有很高的稳定性和性价比,所以在装置的内部采用CAN 实现主板与辅板之间的通信是工业控制装置中最流行的方法。CAN 总线作为ARM 的外围电路,采用了双CAN 模式,这在快速通信的基础上增强了装置内部通信的稳定性。装置中CAN 总线通信电路如图4 所示,SJA1000 为工业级的CAN 通信控制器,82C250 是CAN 总线驱动器,其中4 个光耦是用于光电隔离,以达到减小通信干扰,同时可以实现通信板的带电插拔。
图4 双CAN 通信接口电路
5) 以太网模块
电路中采用CS8900A 工业级以太网芯片CONTROL ENGINEERING China版权所有,可以达到10Mb/s 的网络速度,在线监测装置通过这部分接口电路与系统的高层(如上位机等) 和其他监测装置进行数据的传输共享,实现互操作。
基于ARM 嵌入式系统的软件框架
系统的软件主要包括3 方面:uCbootloader、uClinux 和应用软件。uCbootloader 用于硬件系统初始化,uClinux 是嵌入式操作系统,而应用程序是用户根据具体要求开发出来实现特定功能的程序模块。硬件系统上电后,运行uCbootloader 对硬件系统配置进行初始化,将检测到的硬件转交给操作系统,由它进行统一支配; 用户程序是建立在uClinux之上,并由它负责引导启动。
1) 嵌入式操作系统uClinux
本装置选用uClinux 作为嵌入式操作系统主要考虑到以下几个因素:
a) 选用的AT9M40800 没有内存管理单元;
b) 对Linux- X 裁剪得到的uClinux 内核很小(约900 kB) ,但仍保留了Linux 系统的稳定性、强大的网络功能和出色的文件系统等优点;
c) uClinux 拥有一个完整的TCP/IP 协议栈,使GIS 监测装置能够实现标准的以太网通信功能。考虑到系统的实时性要求,本系统采用内核加载方式,将内核的压缩文件放在FLASH 上,系统启动时读取压缩文件在内存中解压,然后运行。
2) 用户程序
本嵌入式系统中的所有应用程序是采用标准C语言编写,编译的过程是在Linux 系统下建立的交叉编译器中进行。根据嵌入式系统要实现的功能,应用程序主要分为以下几部分:以太网通信、CAN 总线通信和串口通信程序等。下面仔细讨论一下以太网通信和CAN 总线的通信: |
|