摘要: 本文研究和设计了一种基于S3C4510B芯片和嵌入式实时系统的远程测控系统,主要包括系统硬件设计与嵌入式操作系统的选择。硬件系统主要由三部分组成,首先是S3C4510B及其存储器部分、包括必要的辅助电路。存储器部分包括16MB DRAM和2MB的Flash。DRAM作为操作系统内核及应用程序运行的空间。其二是对设备的采集和控制电路,主要包括两个串行口和通用I/O接口。其三是以太网数据交换电路与JTAG接口电路。 关键字: 嵌入式;ARM;测控系统;VxWorks
1 引言
嵌入式系统主要由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户应用软件等部分组成,用于实现对其它设备的控制、监视和管理等功能。嵌入式系统以应用为中心,以计算机技术为基础,软件硬件可剪裁,对功能、可靠性、成本、体积、功耗有严格要求,属专用计算机系统。特别近年来,计算机网络的飞速发展,也给嵌入式系统的发展注入了新鲜活力。本文主要完成了一种嵌入式远程测控系统硬件电路设计部分。
2 硬件系统总体结构

图1 远程控制系统硬件结构框图
本文依据ARM7体系结构进行设计,与其它ARM7系列的设计方法有类似处,但也具有它的独有特点。文章详细介绍了基于S3C4510B的硬件系统的设计步骤。硬件设计的主要内容包括:主芯片电路,电源电路,晶振电路与复位,FLASH存储器接口电路,SDRAM接口电路,串行接口电路, JTAG接口电路,通用I/O接口电路。系统硬件结构框图如图1所示。
3 系统硬件各单元电路设计
3.1 存储电路设计
1、Flash存储器。FLASH是一种可以通过指令序列在系统可编程的(In-System Programmable)存储器,掉电后信息不丢失,目前市场上有两种主要的非易失闪存技术,分别是NOR型和NAND型,NOR型存储容量较小,NAND型容量较大,由于NOR的特点是二进制代码直接在闪存芯片内可执行(XIP, execute In Place),这样不必把代码读到系统RAM中,适合存放Boot loader映像并可以移植TFFS文件系统。在本应用系统中选择了16位的SST39VF1601(NOR型)芯片,容量是1M×16位(2M字节),工作电压2.7V~3.6V,采用48脚TSOP封装。
2、SDRAM存储器。本应用系统需要RTOS的支持,RTOS在引导开始执行后,程序代码需要在RAM中运行以提高运行的速度,系统及用户堆栈和运行的数据也都放在SDRAM中,S3C4510B最大支持64M的内存空间,本系统中采用两片16位的HY57V641620组成32位的SDRAM存储器系统,HY57V641620为4Bank×16M位(8M字节),工作电压3.3V,支持自动刷新(Auto-Refresh)和自刷新(Self-Refresh)。
3.2 串行接口电路
几乎所有的微控制器,PC都提供串行接口,使用美国电子工业协会(EIA)推荐的RS-232-C接口标准,这是一个很常用的串行数据传输总线接口标准。随着微型计算机和微控制器的发展,不仅在远距离,近距离也采用了该通信方式。在近距离的通信中不采用电话线和MODEM,而是直接进行端到端的连接。
设计中的串行电路图如图2所示,因为本设计中,需要两个串行口,一个用于控制台显示输入输出,另一个用于云台控制,均用跳线引出。因此图中串口1(UART0)部分采用MAX3232电平转换后引出。串口2 (UART1)部分直接引出,并在UATXD0和UARXD0处加了两个串口数据指示灯。

图2 两组串行口的电路原理图
3.3 ARM处理器JTAG接口电路设计
JTAG (Joint Test Action Group),联合测试行动小组)是一种国际标准测试协议,主要用于芯片内部测试及系统进行仿真、调试。JTAG是一种嵌入式调试技术,它在芯片内部封装了TAP(Test Access Port,测试访问接口),通过专用的JTAG测试工具对内部节点进行测试。标准的JTAG接口是四线:TMS, TCK, TDI, TDO,分别为测试模式选择、测试时钟、测试数据输入、测试数据输出。
JTAG测试允许多个器件通过JTAG接口串联在一起,形成一个JTAG链,能实现以各个器件分别测试。JTAG接口还常用于ISP(In-System Programmable)功能,如对Flash器件进行编程。14针的JTAG接口电路如图3所示。

图3 14针wiggler JTAG接口
3.4 云台控制器的接口电路设计
根据距离远近,远程控制系统与云台控制器的通信距离在15米以内可以采用TTL电平的串口通信,超过15米就应该考虑使用485总线进行串行通信,嵌入式系统硬件的串行输出是TTL电平,那么就需要一个电路对两种电平进行转换,此处借签了RS-485收发的零延时电平转换电路,如图4所示。

图4 TTL与RS-485收发的零延时转换电路
引脚意义如下:R0-接收数据的TTL电平输出;/RE-低电平有效的接收允许;DE-高电平有效的发送允许;DI-发送数据的TTL电平输入;A-485差分信号的正向端;B-485差分信号的反向端。在RS-485电路设计中,通常将RE和DE短接,用1根信号线来控制,这样可以做到收发的切换。
当不发送数据时,TTL电平的Tx信号为高电平,经V1反向为低电平,RS-485芯片处于接收状态。
当发送数据时,① 若Tx为低电平,经V1反向后,DE为高电平,发送允许。此时由于DI接地,所以RS-485芯片的输出端A, B产生表示低电平的差分信号,低电平的Tx被送出。② 若Tx为高电平,经V1反向后,DE为低电平,RS-485芯片的A, B端处于高阻态。此时靠电阻R1和R2的下拉和上拉作用,使总线上产生正的差分信号,从而将Tx的高电平信号送出。
由以上分析看出,在使用这个电路时,只要程序能保证不同时进行接收和发送的操作,即保证是半双工传送数据,程序不必用指令控制DE进行接收和发送的转换。转换由硬件本身完成。
3.5 电源与系统时钟设计
在本系统的绝大多数芯片使用3.3V电源,如S3C4510B, RTL8201BL,HY57V651620和SST39VF1601。本设计中采用6V~9V的直流电源输入,由电源转换器CXl117(5.0V)产生5.0V的稳定电压输出,提供给MAX202和3.3 V稳压管,再由BM1117 3.3V稳压管得到3.3V的稳定电压输出。电源指示灯表示3.3V电压正常。一个大电容和一个小电容并联起来使用,大电容抑制低频干扰,小电容抑制高频干扰,以得到较稳定的线性电压输出,如图5所示。

图5 系统电源模块电路原理图
根据S3C4510B的最高工作频率为50MHz和片内PLL电路的工作方式,选择10MHz的有源晶振。10MHz有源晶振的输出经过片内的PLL电路5倍频,产生系统工作频率50MHz。使用低频晶振经PLL产生工作频率的方式可以降低高频干扰,也是其它内置PLL电路型微处理器的常用手段。在使用倍频的情况下,S3C4510B的外部设置电路如下,第C1kSel(83脚)为低电平,VSSa (54脚)和FILTER (55脚)接一个820p的电容,若直接使用50MHz有源晶振则插上JP1跳线,同时CPU端FILTER脚需要作相应改动。
4 嵌入式操作系统
嵌入式系统以应用为中心,以嵌入式计算机技术为基础,软硬件可裁剪,适用于对功能、可靠性、成本、体积、功耗等综合性能有严格要求的专用计算机系统。嵌入式操作系统(Embedded Operating System)是一种系统软件,过去它主要应用于工业控制和国防系统领域。EOS负责嵌入系统的全部软、硬件资源的分配、任务调度,中断处理等软件模块。
VxWorks操作系统是目前实时系统中最具特色的操作系统之一。VxWorks操作系统包括了进程管理、存储管理、设备管理、文件系统管理、网络协议及系统应用簿几个部分。
VxWorks的开发环境是Tornado,使用该IDE软件在进行开发和调试时,宿主机和目标机可以采取多种通信方式,目前常用的有网络,串口,甚至可以将调试方式设置为telnet方式,使得多个开发人员可以同时调试目标系统。通过其集成开发环境可以动态编译连接工程,并下载到目标板。它的优点有:高性能的微内核设计、可以裁剪的运行软件、丰富的网络支持、与POSIXI003. IB兼容、多版本的BSP支持、用户可定制操作系统附件、可靠性强、实时性强、支持多任务、抢占调度、任务间的通信与同步支持、设计了任务与中断间的通信机制、开发与调试环境比较友好。因此本系统选用VxWorks作为其嵌入式操作系统。限于篇幅限制,详细设计过程在此不详细叙述。
本文作者创新点::随着32位ARM芯片的广泛应用和性价比的不断提高和嵌入式系统的广泛研究,具备设计嵌入式应用系统的条件。本文中设计了测控系统的硬件系统部分,并挑选了适合本平台的嵌入式操作系统,实现了测控系统的基本功能。硬件设计方面完成了存储器模块、JTAG电路、以太网接口电路、串行通信电路等外围电路。
参考文献
[1] 陈维刚.工业控制系统的网络化发展[J].工业仪表与自动化装置,2004 (01) :10
[2] 宋延昭.嵌入式操作系统介绍及选型原则[J].工业控制计算机,2005(07):41
[3] 王建新.远程测控技术的发展现状和趋势[J].国外电子测量技术,2005(04):9
[4] 朱华生,冯祥胜. 基于ARM智能家居控制器设计与实现[J]. 微计算机信息, 2007,1-2: 185-187
|