3 主机接口(HPI)通信设计
主机接口[6-7](HPI,Host Port Interface)是TMS320C54x系列定点芯片内部具有的一种接口部件,主要用于DSP与其他总线或CPU进行通信。HPI接口通过HPI控制寄存器(HPIC)、地址寄存器(HPIA)、数据锁存器(HPID)和HPI内存实现与主机通信。其主要特点有:接口所需外围硬件很少;HPI单元允许芯片直接利用一个或两个数据选通信号、一个独立或复用的地址总线以及一个独立或复用的数据总线接到微控制单元MCU上;主机和DSP可独立地对HPI接口进行操作;主机和DSP握手可通过中断方式来完成。
图6为89C51与DSP HPI通信硬件接口图。其中89C51的端口P0.1~P0.7与HPI的8位数据线(HD0~HD7)相连作为数据传输通道,P2.0~P2.4设置为输出来控制HPI接口的操作。其中P2.0为读写控制选通信号连接P2.1连接字节识别信号HBIL,控制读写数据是属于16位字的第一字节还是第二字节;P2.2和P2.3分别连接HCNTL0和HCNTL1以实现对HPIC、HPIA和HPID寄存器的访问;P2.4连接作为数据选通信号来锁存有效的HCNTL0/1、HBIL和信号;P2.5与相连作为片选信号;INT0作为输入与HPI的主机中断信号一直接高电平。在数据交换过程中,89C51向HPI发送数据时通过置TMS320VC5402的HPI控制寄存器HPIC中的DSPINT位为1来中断TMS320VC5402;89C51接收来自HPI的数据时通过查询方式,当TMS320VC5402 DSP准备发送数据时置为低,89C51查询到INT0为低时调用接收数据子程序来实现数据的接收。
4 系统调试及结果
为了调试该系统,可以在A/D转换器输入端输入一个确定信号,观察其采集和输出的情况。为此设计了A/D转换和数据处理程序。将信号发生器DG2000的输出转换后存入DSP数据存储器的连续单元中,设计了简单明晰的频率计算程序,通过零点检测计算出信号的频率,最终结果经HPI传送给单片机并显示出来。
测试中所用仪器为:RIGOL系列信号发生器DG2000。
将信号发生器DG2000的输出经一个保护电阻接到A/D输入端。波形输入和LED显示界面如图7所示。
通过对不同信号和不同算法程序运行的实践,LED的输出显示均与输入量相符合,证明系统工作稳定。由于本采集系统具有高速转换器和DSP硬件基础,只需根据采集信号种类的不同及输出要求的不同设计相关的算法软件,对所获得信号进行处理即可。可以在各种工业生产过程和仪器仪表中应用该系统,还可利用RS232串口实现与上位PC机之间的通信,对数据做进一步的处理。