嵌入式计算机系统在现代工业控制中发挥着越来越重要的作用,它具有便携、可靠、低功耗、通用、易扩展等诸多优点。使用嵌入式系统进行工业控制要涉及到计算机数据的传输、采集、调制解调等一系列问题。
2 PC104总线及数据接收电路
PC104总线是专门为嵌入式系统开发的系统总线,是一种自堆栈式、模块化的总线,它基于ISA总线发展而来,有16位和8位两种接口方式(分别为64+40引脚和64引脚端口结构),该总线具有结构紧凑、便携、可靠、功耗低、易扩展等优点。对于工程开发而言,常用的引脚主要有以下几个:
SD0~SD7,SD8~SD15:数据总线,当采用8位接口方式时,只有SD0~SD7工作;
SA0~SA19,LA17~LA23:地址信号,对端口进行操作时使用SA0~SA9;
AEN:DMA选通信号,为高电平时表示处于DMA模式;
IOW,IOR:端口写、读信号,低电平有效;
SYSCLK:系统提供的基准时钟信号,是标准的方波信号,约为8 MHz;
VCC,GND,+12 V,-12 V:系统提供的电源接口。
数据接收电路就是要在正确的时序上将所需的数据进行提取,还要实现将电路工作状态传送回总线,以便总线决定是否发送下组数据的功能。由于PC104总线最高支持约8 MHz的时钟频率,而受控设备所需的2FSK信号频率为几千赫兹,因此这里只用8位数据总线就完全能够满足要求。
总线接收电路如图2所示。其中SD0~SD9,SA0~SA9是从总线发来的数据、地址信号,SEL0~SEL3为分路选择信号,ANSWER0~ANSWER3为FPGA的状态返回信号,由于总线速度要比2FSK输出速度高得多,因此,总线要对FPGA数据缓存器是否为空进行查询,当FPGA没有完成数据转换时,总线要等下个周期,直到状态返回信号显示FPGA内部为空时,总线才可以发送下组数据到FPGA。74LS273负责将每路的数据分别进行锁存,4路数据共使用4个。OUT1D0~D7为第一路8位数据输出,LOCK0为其控制信号,表示数据的更新。