微波EDA网,见证研发工程师的成长!
首页 > 射频和无线通信 > 射频无线通信文库 > 用CH365实现PCI息线与DSP的通信

用CH365实现PCI息线与DSP的通信

时间:12-11 来源:互联网 点击:

下面讨论CH365对双口RAM的读写过程。当CH365对双口RAM进行读数据时,设定此时A0为高电平,此时16位数据均从双口RAM中读出,由于高8位数据线与CH365的8位数据线直接相连,所以高8位数据被立即读入CH365中。同时,根据图1中各信号的相互逻辑关系可以得到,读锁存器(U1)的使能信号G有效(高电平),OEN无效(高电平),因而低8位数据被送入U1中锁存起来。接着CH365再进行一次读操作,CH365_A0变成低电平,双口RAM的片选信号变成无效电平,所以此次读操作对双口RAM不产生影响,而此时U1的使能信号G变成了无效电平,而OEN变成了有效电平,上次被锁存的数据(即双口RAM的低8位数据)被送入CH365中,16位数据读完成。当CH365对双口RAM进行写入操作时,设定此时CH365_A0为低电平,同样可根据图l判断写缓存器(U2)的使能信号G有效,而OEN无效,双口RAM片选无效,因而数据被锁存在U2中;接着CH365再进行一次写操作,由于CH365_A0变成高电平,双口RAM片选有效,U2的片选无效,OEN为有效电平,故此时16位数据同时写入双口RAM。从上面的分析可知,利用最低地址位CH365_AO的不同电平,CH365通过两次连续的读或写操作,成功地实现了对双口RAM中数据的读或写,只不过是读入时是先读入高8位,后读入低8位;而写入则是先写入低8位,后写入高8位。同时,两片锁存器不能出现同时被选中的情况.否则就会出现传输数据的混乱,导致传输错误。
本系统的硬件电路原理(主要部分)如图2所示。由于TMS320C2407(3.3V)与双口RAM(5V)的电平差别,加入了电压转换器件SN74LVTHl6245A。

3 PCI和DSP的通信
在硬件电路实现之后,把完成的板卡插于PC机的PCI插槽。上电后,根据系统提示安装CH365驱动程序,在正确安装好硬件之后,就可以在VC环境下编写和调试PCI和DSP的通信软件。
通过API函数编写与DSP的相互数据交换程序,完成双向的中断申请和中断响应,实现数据快速交换。
3.1 CH365的双向通信程序
CH365支持PC机程序以单字节、双字节(字)、四字节(双字)为单位对I/O端口或者存储器进行读写。在多字节连续读写操作期间,CH365每读写完一个字节数据后,就会自动将偏移地址加l,以指向下一个字节的偏移地址。我们可以通过向I/0口的00H写数据实现向DSP申请中断,DSP在响应中断后通过读00H清除上位机的中断。其程序如下:

3.2 DSP的双向通信程序
为了方便观察数据传输结果,本测试中设定,DSP写空间为Ox0400~Ox07FF,读空间为OxO000~Ox03FF,即可以通过DSP程序实现从前lK单元读取数据再写入后lK单元,然后把后写入的数据与PC机写入的数据进行比较。如果吻合,则说明数据交换成功。图3给出DSP的程序流程。
通过双向的软件测试,结果显示数据交换完全正确。

结语
随着计算机技术和电子技术的发展,将运算高速、功能强大的数字信号处理器应用于运动控制,可以实现复杂的控制算法和高精度、高速度、多轴联动功能,在数控应用中,将会占据越来越重要的地位。而快速、准确的通信是这种运动控制器的基础。本文提出的通信方式,具有性能可靠,硬件结构简单,价格便宜的优点,有较好的应用前景。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top