TMS320VC5402与51单片机的接口设计

发布者:夜色迷离最新更新时间:2007-06-27 来源: 电子设计信息网关键字:速度  控制  信号  地址 手机看文章 扫描二维码
随时随地手机看文章
  TMS320VC5402(VC5402)是德州仪器公司推出的具有较高性价比的定点数字信号处理器。VC5402增强外设由软件等待状态发生器、锁相环时钟发生器、6通道直接存储器访问(DMA)控制器、增强型8位并行主机接口(HPI)等组成。两个可编程的多通道缓冲串口(McBSP)能够全双工、快速地与其他同步串口进行数据交换,硬件连接简单,串口的工作模式和传送数据的格式可通过编程实现。DSP和单片机之间的通信一般利用双口RAM,通过串口或DSP的HPI接口实现。

  利用双口RAM实现

  CY7C026是CYPRESS公司生产的16k×16B高速双口静态RAM,存取速度小于25ns。他具有真正的双端口,可以同时进行数据存取,两个端口具有独立的控制信号线、地址线和数据线,另外通过主?从选择可以方便地扩存储容量和数据宽度。通过芯片的信号量标志器,左、右两端口可以实现芯片资源的共享。

  由于DSP的数据是16位,而单片机的数据是8位,所以TMS320VC5402与双口RAM的接口并无特别之处,但是89C51与双口RAM之间的接口电路中就需要对89C51进行总线扩展了。具体做法是利用锁存器74HC373的锁存功能,通过对其使能信号的控制,进行分时读写,实现数据总线的扩展,即利用锁存器作为虚拟总线。DSP,单片机与双口RAM之间的接口电路如图1所示。

图1 通过双口RAM实现的接口电路

  双口RAM必须采用一定的机制来协调左右两边CPU对他的读写操作,否则会出现读写数据的错误。通常可以用中断、硬件、令牌和软件这4种方式来协调双方。在接口电路中利用89C51的最低地址位A0把双口RAM的存储空间分为奇、偶地址两个空间。其中,奇地址空间专供89C51写,偶地址空间专供89C51读。那么只需对VC5402的软件做相应处理即可,即VC5402对双口RAM的奇地址空间只读,对偶地址空间只写。这样就避免了DSP和单片机对双口RAM同一地址单元的写入操作。另外,在对双口RAM进行访问之前,单片机和DSP首先对本端的BUSY信号进行查询,只有本端/BUSY信号无效时才进行读写操作,进一步保证了数据读写的可靠性。

  通过串口实现

  VC5402多通道缓冲串行口(McBSP)主要特点:双缓冲区发送,三缓冲区接收以便数据的连续性;接收与发送的帧同步、时钟信号独立;多通道发送和接收,最多可以到达128个通道;数据大小可为8,12,16,20,24和32b;μ率和A率压缩;帧同步、数据时钟极性可编程;内部时钟和帧同步可自行设定。

  VC5402串口通过16b宽度的控制寄存器与内部总线通信。

  数据接收过程:数据从输入引脚(DR)移位到接收移位寄存器(RSR),然后拷贝数据到接收缓冲寄存器(RBR),接着把数据拷贝到数据接收寄存器(DRR),CPU或者DMA控制器读取DRR。

  数据输出过程:CPU或者DMA把数据写到数据传输寄存器(DXR),再通过寄存器(XSR)移位到数据输出引脚DX6。

  对串口寄存器的访问是间接寻址方式,例如要对McBSP数据寄存器进行访问,首先写串口控制寄存器SPCR子地址到子地址寄存器SPSA,然后对数据寄存器进行访问。硬件连接如图2所示。

图2 通过McBSP实现的硬件连接

  McBSP的位时钟由内部采样率发生器产生,为UART波特率×16。

  在软件的设计中McBSP的16位代表UART的1位。发送时,软件将UART的每一位扩展为16位,再由McBSP发送。接收时,软件将McBSP接收的16位压缩为UART的1位,并进行合并。软件还应负责处理UART的起始位、奇偶校验位和停止位。

  通过HPI和电平转换器件实现

  DSP芯片中的HPI(主机接口)是为了满足DSP与其他的微处理器接口而专门设计的。他分为HPI—8和HPI1—6,分别针对具有8位和16位数据线的单片机。每一种又分为标准型和增强型,区别在于标准型只可以访问固定的地址空间,而增强型可以访问整个DSP的片内存储器。利用C5402的增强型8位并行主机接口(HPI)与单片机通信。

  VC5402DSP的外部I/P引脚用的是3.3V的逻辑电平,而大部分51单片机用的是5V的逻辑电平。前者输出高电平,最小值为2.4V;后者输入高电平,最小值为2.0V。所以前者的输出可以直接接到后者的输入。但是前者允许输入高电平最大值为3.6V,而后者的输出高电平一般都在4.6V以上。所以前者的输入和后者的输出不能直接连接,需要做电平转换。如果引脚数量少,可以直接用三极管电阻来转换。这里由于引脚较多,所以选用TI74LVC16245A芯片来进行电平转换。硬件电路如图3所示。

             图3 通过电平转换芯片实现

  HPI的数据传输分为2部分:外部传输和内部传输。外部传输是指主机和HPI寄存器之间的传输,由主机发出指令完成。内部传输是指HPI寄存器和DSP内部RAM之间的传输,由DSP内部的DMA控制器自动完成。主机在进行外部传输时,要先检查内部传输是否完成,这是通过检测HRDY信号实现的。外部传输操作的一般步骤是:检查HRDY信号的电平。为高,表示可以进行传输;为低,表示DSP正在进行内部传输,此时不能进行外部传输。主机发出指令,设置HCNTL0,HCNTL1,BHIL,HR?W信号的状态,以确定读或写的寄存器以及字节的选择。主机发出时序控制信号,按时序进行操作,从而完成一次外部传输。

  结语

  双口RAM实现VC5402和89C51之间的数据通信,极大地提高了数据传输速度和可靠性,能满足控制系统的实时、高速的控制要求。

  利用McBSP的方法,硬件结构简单所用芯片少,但是将占用片上系统中为数不多的同步串行口资源,而且也要占用DSP的处理时间,他是用于传输数据较少,传输速率慢而又希望DSP与单片机之间是紧耦合的场合。

  HPI方案比较简单,附加硬件少、成本低、数据吞吐量非常大,但不适合于实时控制的场合,因为工作中可能将DSP挂起,影响实时工作。而一般应用在对成本比较敏感而数据量又比较大的场合。读者可以根据系统要求选取合适的方案。

关键字:速度  控制  信号  地址 引用地址:TMS320VC5402与51单片机的接口设计

上一篇:TMS320VC5402DSP与51单片机的接口设计技术
下一篇:基于FPGA的RISC微处理器的设计与实现

推荐阅读最新更新时间:2024-05-02 20:36

ZigBee 控制家庭网络的标准
    电灯开关的启发     有人要求发明者发明下一项重大技术,但我们实际上需要的是更好的电灯开关。想想普通的电灯开关是如何工作的: 电灯本身可能装在天花板中央,但如果用户想站在门口就能开灯,还得把线拉到门口。     这都是上个世纪的事!如今,有了无线技术,用户就可以使用用双面胶就能贴在墙上的开关。这样一来,如果用户想把开关位置放低,以便坐在轮椅上的客人能够得着,那么只要把它撕下来,往下移,再贴回到墙上即可。     几十年来,建筑物就有了有线控制网络; 自马可尼时代以来,电气工程师们就一直试图把有线网络变成无线网络。不过,直到1998年,现已解散的行业组织HomeRF工作组才开始设计可以使用可粘贴电灯开关这些装置
[网络通信]
定时中断控制灯的亮灭
TM1 EQU 5 TM2 EQU 10 ORG 0000H; AJMP START ORG 000BH; AJMP TIME0; ORG 30H; START: MOV P1,#0FFH; MOV R7,#00H; MOV R6,#00H; MOV TMOD,#00000001B;定时器0开启 MOV TH0,#3CH;定时50MS MOV TL0,#0B0H; SETB EA ;开启中断 SETB ET0;使能定时/计数中断0 SETB TR0;开启定时0 LOOP: AJMP LOOP TIME0:
[单片机]
MOTOMAN 机器人运动控制指令介绍
安川坐标系介绍 上图为 MOTOMAN 六关节型,它由腰关节 S、大臂关节 L、小臂关节 U 和腕关节 R, B,T 组成。因而机器人末端执行器的空间位置可以表示为 P(S,L,U,R,B,T),其中 S,L,U,R,B,T为该位置机器人各关节相对于关节零点的坐标。另外,直角坐标系下,位置 P 还可以表示为 P (X,Y,Z,TX,TY,TZ),其中 X,Y,Z 表示 P 点的位置,TX,TY,TZ 表示 P 点的位姿。 MOTOMAN 内部坐标系有关节坐标系(Joint codinaon)、机器人坐标系(Robot coordination)、基坐标系(Base coordination)
[机器人]
如何用用C语言编写的单片机来控制流水灯
用C语言编写的单片机流水灯程序的软件和硬件,可以让八个LED轮流点亮,每个灯点亮和熄灭时间均为1秒。是利用单片机I/O口控制外部设备的简单例子。当然,在你掌握了本程序后,完全可以充分发挥你的想象,改变一下程序内容和灯的接法(比如用光耦驱动继电器来控制霓虹灯),做出各种变化非凡的大型灯光广告牌。 一、硬件电路 因为电路用单片机控制,所以电路非常简洁。其电路原理图见下图,印制板图如下图所示。 电路的核心部分是AT89C2051单片机,前面提到它有Pl和P3两组I/O口,我们这里只用到Pl口,共8个引脚。图中Cl、R9组成典型的上电复位(即在加电时单片机复位)电路,XTAL、C2、C3与AT89C2051片内振荡电路组成时钟振
[单片机]
如何用用C语言编写的单片机来<font color='red'>控制</font>流水灯
基于DSP的混沌信号源的设计与实现
Chua’s 电路 、Chen系统、Lu系统Liu系统的提出,极大丰富了混沌动力学的研究,尤其在电类学科群,如保密 通讯 、功率 电子 学、雷达与通信对抗等应用领域。对于混沌保密心脏的混沌信号源,人们也一直在探索产生混沌信号的新方法。传统的采用 模拟 电路 产生混沌信号的方法存在结构复杂、噪声高、精度达不到要求、对外界环境(如温度变化等)特别敏感而难以有效应用的问题,对于DSP的浮点精度相同而且采用相同的数型和算法,得到的结果应该是一致的,这在硬件设计中很难实现。所以,本文采用DSP设计和实现了混沌信号源,并运用简单有效的JTAG测试技术和 CCS在线调试功能,直接访问DSP内存,验证了混沌信号。 2 系统分析与设计 首先根据
[电源管理]
使用LabVIEW 与 NI FlexRIO实现基于FPGA的单原子反馈控制
图1. 用于研究光与物质基本相互作用的激光系统的一部分。系统包括多种透镜,镜面,以及光学模块。 "使用NI FlexRIO,我们定制了自己的高性能硬件设备。基于LabVIEW FPGA,我们能够快速开发FPGA代码,因为它具有很高程度的概括性,同时适当地集成了VHDL IP" – Christian Sames, Max-Planck Institute of Quantum Optics The Challenge: 开发一种定制的时域数字转换器来研究光与物质相互作用的基本量子性质。 The Solution: 使用NI公司的 FlexRIO 与 LabVIEW FPGA模块来创建强大的,多功能的定制仪器,从而使我
[测试测量]
使用LabVIEW 与 NI FlexRIO实现基于FPGA的单原子反馈<font color='red'>控制</font>
人脑思维有望实现对机器人的直接控制
近日,美国波士顿大学和麻省理工学院联合研发出全新的反馈系统,可使机器人适应人类思维模式,实现人脑对机器人的实时直接控制。 将人类语言翻译成机器人信号非常困难,常用方法是使用脑电图扫描仪作为脑机接口,实现人脑对机器人的控制。但这种操纵需要按照计算机可以识别的特定方式“思考”,效率较低。研究人员使用名为“Baxter”的人形机器人作为被控制端,在操纵者的注视下执行二元分类任务,机器人通过脑电图扫描仪实时监测操纵者大脑电位的变化,利用机器学习算法快速准确分析脑电波信号。 当操作者看到机器人工作出现错误时,脑电波信号会发生特定变化,机器人一旦检测到这种“错误相关电位”,反馈系统便会促使其纠正错误。且这种“错误相关电位”信号与机器人错误的严
[机器人]
马瑞利开发灯光域控制器 支持软件定义汽车架构
马瑞利在中国开发了一款创新的灯光域控制单元平台,能够将车辆的前灯、尾灯及所有新的360度照明功能集成于一个灯光域控制器。未来,还将有更多的灯光算法集成到这个灯光域控制器中。这项面向下一代车辆的先进照明系统技术将在4月25日至5月4日期间举办的北京国际汽车展览会上展出,届时马瑞利的其他领先技术也将一并展出。 无论是传统的燃油车还是新能源汽车,汽车照明控制系统一直是增强车辆安全性和提升驾驶体验的关键系统之一。为适应新的电子电气构架的演进,马瑞利前瞻性地提出创新的车灯控制系统架构。马瑞利灯光域控制器的成功量产在中国新能源市场中得到了实践和验证。另一方面,在执行端领域,马瑞利推出了MCU LESS智能驱动器的概念,极大地推动了将整个照
[汽车电子]
马瑞利开发灯光域<font color='red'>控制</font>器 支持软件定义汽车架构
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved