一种基于DSP和MCU的双CPU数据处理系统设计
时间:11-27
来源:互联网
点击:
2.2.3.2 FLASH的写操作
FLASH的写操作相对复杂一些,它需要一串命令序列,通过对FLASH的命令寄存器写入相应的命令字来完成写入和擦除。对应的写操作时序图如图5(b)所示。
![](../img/eec-mcu/mcu-167742i3amxb4vu3d.gif)
3 主机接口(HPI)通信设计
主机接口[6-7](HPI,Host Port Interface)是TMS320C54x系列定点芯片内部具有的一种接口部件,主要用于DSP与其他总线或CPU进行通信。HPI接口通过HPI控制寄存器(HPIC)、地址寄存器(HPIA)、数据锁存器(HPID)和HPI内存实现与主机通信。其主要特点有:接口所需外围硬件很少;HPI单元允许芯片直接利用一个或两个数据选通信号、一个独立或复用的地址总线以及一个独立或复用的数据总线接到微控制单元MCU上;主机和DSP可独立地对HPI接口进行操作;主机和DSP握手可通过中断方式来完成。
由于本数据处理系统采用双CPU(DSP+MCU),经A/D转换后的信号先保存在DSP的存储器中,DSP和MCU之间需进行数据通信,同时HPI方式还能让单片机共享DSP内部的双口RAM,弥补单片机内部RAM不足等缺陷。在硬件设计时,要注意单片机89C51是+5V供电,DSP是+3.3V供电,需进行电平转换。
图6为89C51与DSP HPI通信硬件接口图。其中89C51的端口P0.1~P0.7与HPI的8位数据线(HD0~HD7)相连作为数据传输通道,P2.0~P2.4设置为输出来控制HPI接口的操作。其中P2.0为读写控制选通信号连接
![](../img/eec-mcu/mcu-167743a4pcarfzf2i.gif)
P2.1连接字节识别信号HBIL,控制读写数据是属于16位字的第一字节还是第二字节;P2.2和P2.3分别连接HCNTL0和HCNTL1以实现对HPIC、HPIA和HPID寄存器的访问;P2.4连接
![](../img/eec-mcu/mcu-1677445iuywud4pc5.gif)
作为数据选通信号来锁存有效的HCNTL0/1、HBIL和
![](../img/eec-mcu/mcu-167745zkuyzen1gvq.gif)
信号;P2.5与
![](../img/eec-mcu/mcu-167746dfaogzoklmu.gif)
相连作为片选信号;INT0作为输入与HPI的主机中断信号
![](../img/eec-mcu/mcu-1677470nfs42oji4f.gif)
一直接高电平。在数据交换过程中,89C51向HPI发送数据时通过置TMS320VC5402的HPI控制寄存器HPIC中的DSPINT位为1来中断TMS320VC5402;89C51接收来自HPI的数据时通过查询方式,当TMS320VC5402 DSP准备发送数据时置
![](../img/eec-mcu/mcu-1677480vo5xjhjcun.gif)
为低,89C51查询到INT0为低时调用接收数据子程序来实现数据的接收。
![](../img/eec-mcu/mcu-167749c4aev0lspue.gif)
4 系统调试及结果
为了调试该系统,可以在A/D转换器输入端输入一个确定信号,观察其采集和输出的情况。为此设计了A/D转换和数据处理程序。将信号发生器DG2000的输出转换后存入DSP数据存储器的连续单元中,设计了简单明晰的频率计算程序,通过零点检测计算出信号的频率,最终结果经HPI传送给单片机并显示出来。
测试中所用仪器为:RIGOL系列信号发生器DG2000。
将信号发生器DG2000的输出经一个保护电阻接到A/D输入端。波形输入和LED显示界面如图7所示。
![](../img/eec-mcu/mcu-167750cdbysl2tk00.gif)
通过对不同信号和不同算法程序运行的实践,LED的输出显示均与输入量相符合,证明系统工作稳定。由于本采集系统具有高速转换器和DSP硬件基础,只需根据采集信号种类的不同及输出要求的不同设计相关的算法软件,对所获得信号进行处理即可。可以在各种工业生产过程和仪器仪表中应用该系统,还可利用RS232串口实现与上位PC机之间的通信,对数据做进一步的处理。
FLASH的写操作相对复杂一些,它需要一串命令序列,通过对FLASH的命令寄存器写入相应的命令字来完成写入和擦除。对应的写操作时序图如图5(b)所示。
![](../img/eec-mcu/mcu-167742i3amxb4vu3d.gif)
3 主机接口(HPI)通信设计
主机接口[6-7](HPI,Host Port Interface)是TMS320C54x系列定点芯片内部具有的一种接口部件,主要用于DSP与其他总线或CPU进行通信。HPI接口通过HPI控制寄存器(HPIC)、地址寄存器(HPIA)、数据锁存器(HPID)和HPI内存实现与主机通信。其主要特点有:接口所需外围硬件很少;HPI单元允许芯片直接利用一个或两个数据选通信号、一个独立或复用的地址总线以及一个独立或复用的数据总线接到微控制单元MCU上;主机和DSP可独立地对HPI接口进行操作;主机和DSP握手可通过中断方式来完成。
由于本数据处理系统采用双CPU(DSP+MCU),经A/D转换后的信号先保存在DSP的存储器中,DSP和MCU之间需进行数据通信,同时HPI方式还能让单片机共享DSP内部的双口RAM,弥补单片机内部RAM不足等缺陷。在硬件设计时,要注意单片机89C51是+5V供电,DSP是+3.3V供电,需进行电平转换。
图6为89C51与DSP HPI通信硬件接口图。其中89C51的端口P0.1~P0.7与HPI的8位数据线(HD0~HD7)相连作为数据传输通道,P2.0~P2.4设置为输出来控制HPI接口的操作。其中P2.0为读写控制选通信号连接
![](../img/eec-mcu/mcu-167743a4pcarfzf2i.gif)
P2.1连接字节识别信号HBIL,控制读写数据是属于16位字的第一字节还是第二字节;P2.2和P2.3分别连接HCNTL0和HCNTL1以实现对HPIC、HPIA和HPID寄存器的访问;P2.4连接
![](../img/eec-mcu/mcu-1677445iuywud4pc5.gif)
作为数据选通信号来锁存有效的HCNTL0/1、HBIL和
![](../img/eec-mcu/mcu-167745zkuyzen1gvq.gif)
信号;P2.5与
![](../img/eec-mcu/mcu-167746dfaogzoklmu.gif)
相连作为片选信号;INT0作为输入与HPI的主机中断信号
![](../img/eec-mcu/mcu-1677470nfs42oji4f.gif)
一直接高电平。在数据交换过程中,89C51向HPI发送数据时通过置TMS320VC5402的HPI控制寄存器HPIC中的DSPINT位为1来中断TMS320VC5402;89C51接收来自HPI的数据时通过查询方式,当TMS320VC5402 DSP准备发送数据时置
![](../img/eec-mcu/mcu-1677480vo5xjhjcun.gif)
为低,89C51查询到INT0为低时调用接收数据子程序来实现数据的接收。
![](../img/eec-mcu/mcu-167749c4aev0lspue.gif)
4 系统调试及结果
为了调试该系统,可以在A/D转换器输入端输入一个确定信号,观察其采集和输出的情况。为此设计了A/D转换和数据处理程序。将信号发生器DG2000的输出转换后存入DSP数据存储器的连续单元中,设计了简单明晰的频率计算程序,通过零点检测计算出信号的频率,最终结果经HPI传送给单片机并显示出来。
测试中所用仪器为:RIGOL系列信号发生器DG2000。
将信号发生器DG2000的输出经一个保护电阻接到A/D输入端。波形输入和LED显示界面如图7所示。
![](../img/eec-mcu/mcu-167750cdbysl2tk00.gif)
通过对不同信号和不同算法程序运行的实践,LED的输出显示均与输入量相符合,证明系统工作稳定。由于本采集系统具有高速转换器和DSP硬件基础,只需根据采集信号种类的不同及输出要求的不同设计相关的算法软件,对所获得信号进行处理即可。可以在各种工业生产过程和仪器仪表中应用该系统,还可利用RS232串口实现与上位PC机之间的通信,对数据做进一步的处理。
嵌入式 DSP 单片机 传感器 MCU 电路 电路图 电压 总线 PIC 信号发生器 电阻 LED 相关文章:
- 嵌入式系统的定义与发展历史(11-15)
- 嵌入式系统亲密接触(11-22)
- 嵌入式系统设计中的USB OTG方案(02-01)
- 嵌入式线控驾驶系统开发过程中设计和测试考虑(02-02)
- 一个典型的嵌入式系统设计和实现 (02-02)
- DDR SDRAM在嵌入式系统中的应用(02-07)