PC/104总线/TMS320VC5402HPI口通信解决方案
3 软件编程
程序分为两大部分:主程序及中断服务子程序。主程序完成初始化后,等待CC同步脉冲的到来。CC同步信号连到DSP的外部中断上,当脉冲到来时,DSP响应外部中断,脉冲到来一次响应一次中断。中断服务子程序完成随机数的迭代、对比、信号的接收、译码、解密及主控机的数据传输等。主程序流程如图3所示。
C54x和主机都能够访问C54x片内RAM。主机存取时必须同步于C54x的时钟,以确保片内RAM读/写正确。当C54x和主机同时读/写同一存储区域时将产生冲突,这时主机具有优先权,C54x CPU将等待一个C54x时钟周期。
主机访问HPI时,首先完成外部接口部分的操作,即先初始化HPIC寄存器,然后初始化HPIA寄存器,再从HPID寄存器中读出或写入数据。HPI的3个寄存器如表3所示。
在DSP的初始化程序中,一般对HPIC进行了初始化后就无需再对HPI操作了,其余的工作就完全由主机完成。通过HPI接口,主机和C54x之间可以相互发送中断请求。主机通过HPIC寄存器的DSPINT位中断C54x,而C54x通过HPIC寄存器的HINT位发中断请求到主机。无论是主机或C54x都可以通过读取HPIC来判断HINT引脚的状态,但是HPIC中的HINT位只能由主机清除。
HPID寄存器具有可供选择的自动地址自增特性,它为读/写连续的存储区提供了便利。自增模式下连续传送数据,每访问存储器一次,HPIA寄存器地址就自动增加。由于主机无需在每次访问存储器时修改HPIA值,从而提高了系统性能。当HCNTL0=1且HCNTL1=0时选择自增模式。需要注意的是,如果采用了扩展的片内RAM,要保证正确的自增操作,HPIC寄存器中的XHPIA位必需设置为1。
当使用地址自增模式时,读操作后HPIA寄存器地址加1;写操作前,HPIA寄存器地址加1。因此,如果对给定地址使用自增模式下写操作时,HPIA寄存器应初始化为起始地址减1。地址自增会影响HPIA的16位,在使用扩展片内RAM(C5410除外)时,地址自增也影响扩展地址。如果HPIA=FFFFh,那么下次读/写时将HPI地址改变为010000h。由于C5410的地址自增不会影响扩展HPI寻址,因此在上面的操作中,如果使用C5410,将使C5410地址改变为000000。
HPI口的应用极大地方便了PC/104总线与DSP系统的数据交换,使在线修改DSP存储器的数据成为可能。该方案灵活、简单,适用于任何含有HPI接口的DSP应用系统,从而为开发人员提供了一种全新的数据共享/传输方案。
TMS320VC5402 HPI口通信 PC104总线 相关文章:
- 基于DSP CCS 2.2实现指纹识别预处理系统(07-28)
- TMS320VC5402 DSP与单片机的HPI接口实现 (09-30)
- 基于DSP TMS320VC5402的水表号码图像采集系统的研究(10-29)
- 基于HPI方式自举在TMS320VC5402 DSP芯片上实现(05-29)
- TMS320VC5402 I/o资源配置及与USB通信(10-04)
- PC/104总线与HPI口通信的解决方案(12-21)