计算机毕业论文网
网站地图 RSS订阅
高级搜索 收藏本站
订做说明 购买说明
首页 | VB | VC/VC++ | java/jsp | delphi | ASP | .net | PB | VF | 计算机网络毕业论文 | 电子,通信,自动化毕业论文 | flash毕业论文 | Authoware设计 | 管理/社会/经济/法学论文 | 机械/土木/建筑 | 计算机毕业论文资料 | 计算机毕业设计指导 | 交款方式
  当前位置:主页>免费计算机毕业论文>计算机毕业设计免费>文章内容
DSP与单片机通信的多种方案设计

如对本论文有购买需求,请联系客服QQ:920225073必过网计算机毕业设计

 

摘  要:基于嵌入式系统发展的需要,提出TMS320VC5402 DSP与AT89C51单片机通信的三种设计方案。利用TMS320VC5402的多通道缓冲串口MCBSP分别实现TMS320VC5402与AT89C51的SCI和SPI串行通信,以及通过TMS320VC5402的8位增强主机接口HPI一8实现TMS320VC5402与AT89C5l并行通信。就硬件接口电路和软件编程进行详细的阐述。
关键词:单片机  DSP  MCBSP  HPI
 
    将DSP和单片机构成双CPU处理器平台,可以充分利用DSP对大容量数据和复杂算法的处理能力,以及单片机接口的控制能力。而DSP与单片机之间快速正确的通信是构建双CPU处理器的关键问题。下面就此问题分别设计串行SCI、SPI和并行HPI三种连接方式。
 
串行通信设计与实现
1 1 SCI串行通信设计
1.1.1  多通道缓冲串行口McBSP原理
    TMS320VC5402(简称VC5402)提供了2个支持高速、全双工、带缓冲、多种数据格式等优点的多通道缓冲串行口McBSP。MCESP分为数据通路和控制通路。①数据通路负责完成数据的收发。CPU或DMAC能够向数据发送寄存器DXR写入数据,DXR中的数据通过发送移位寄存器XSR输出到DX引脚。DR引脚接收数据到接收移位寄存器RSR,再复制到接收缓冲寄存器RBR,最后复制到数据接收寄存器DRR。这两种数据多级缓冲方式使得数据搬移和片外数据通信能够同时进行。②控制通路负责内部时钟产生,帧同步信号产生,信号控制和多通道选择。另外.还具有向CPU发送中断信号和向DMAC发送同步事件的功能。MCBSP时钟和帧同步信号通过CLKR、CLKX、FXR、FSX引脚进行控制,接收器和发送器可以相互独立地选择外部时钟和帧同步信号,也可以选择由内部采样率发生器产生时钟和帧同步信号。帧同步脉冲有效表示传输的开始。

1.1.2 SC
I串行接口设计
设置VC5402的McRSP输出时钟和帧同步信号由内部采样率发生器产生,内部数据时钟CLKG和帧同步信号FSG驱动发送时钟CLKX和帧同步FSX(CLKXM=l,FSXM=l,FSGM=1),输入时钟也由内部采样率发生器产生,内部数据时钟CLKG驱动接收时钟CLKR(CLKRM=1),同时由CPU时钟驱动采样率发生器(CLKSM=1)。考虑到AT89C51(简称C51)串口发送数据帧中第l位为起始位,因此可以利用该位驱动输入帧同步信号FSR,同时要置忽略帧同步信号标志为1。其中FSG帧同步脉冲宽度=(FWID+1)·CLKG;FSG帧同步脉冲周期=(FPER+1)·CLKG;采样率发生器分频系数(采样率=波特率)=FIN/(CLKGDV+1)。

    SCI串口连接如图l所示。
1.1.3  波特率不一致的处理
VC5402初始化(以图1为例):
STM#SRGRl,SPSAl
STM#ooFEH,SPSDl;FSG帧同步脉冲宽度位为1个CLKG
;波特率为100 MHz/(0X(OFF)=392 156 b/s
STM#SRGR2,SPSAl
STM#3D00H,SPSDl;内部采样率发生器时钟由CPU驱动
    C51初始化:
MOV TMOD,#20H
MOVTLl,#FFH
MOVTHl,#FFH  ;C51波特率=(2SMOD/32)*(fosc/12)[1/(256一初值)]一24 509 b/s
MOV SCON,#50H  ;置串口方式l,每一帧10位数据.允许接收
MOV PCON,#80H  ;设置SMOD=1
VC5402波特率/C51波特率=(392 156/24 509)=16.000 49

    VC5402每发送16位数据,C51只采样1位数据。在VC5402存储器中开辟一个空间对每次发送的8位数据进行扩展,1位扩为16位,0为0000H,l为FFFFH,共扩为128位。在数据头部填加16位起始位0000H,数据尾部填加停止位FFFFH。在VC5402发送控制寄存器XCR中设置XWDLEN=000(1字含8位),即可将要发送的8位数据封装成1帧10字的数据。这也符合C51串口1方式下1帧10位的数据格式。C51以1/16的VC5402采样速率接收数据,0000H采样为0,FFFFH采样为1,由此可以将接收到的200位恢复为8位数据,停止位进入RB8。

    C51每发送1位数据,VC5402要采样为16位数据。C51一次发送的10位数据的起始位触发VC5402的接收帧同步。由于VC5402以16倍C51的采样速率接收数据,1位采样为16位,0采样为0000H,1采样为FFFFH.只采样发送来的10位中的前9位,9位封装成144位,即接收的1帧数据完成。VC5402将收到的144位数据在开辟的存储器空间存放,抛弃前16位,在剩下的128位里分成8组,每组16位。比较其中间的8位,若有4位以上为1,则该16位为1,反之则为0。由此将接收到的144位恢复为8位数据。

    为了不让CPU频繁地被数据接收和发送打断,将DMA和MCBSP联合使用来控制数据的接收和发送。RRDY直接驱动MCBSP向DMAC接收数据事件(REVENT事件),XRDY直接驱动MCBSP向DMAC发送数据事件(XEVENT事件)。

    SCI通信协议如图2所示
1. 2 SPI串行通信设计
    将C51置为主机,VC5402为从机。McBSP的时钟停止模式(CLKSTP=1X)兼容SPI模式,接收部分和发送部分内部同步。McBSP可以作为SPI的从机或主机。发送时钟BCLKX作为SPI协议的移位时钟SCK使用,发送帧同步信号BFSX作为从机使能信号nSS使用,接收时钟BCLKR和接收帧同步信号BFSR不使用。它们在内部分别与BCLKX和BFSX直接连接。BDX作为MISO,而BDR作为MOSI,发送和接收具有相同字长。
   
     C51中的并口P1.1和P1.2作为扩展串行SPI输人输出口与VC5402连接,P1.0作为串行时钟输出口,P1.3作为帧同步信号输出口_。

    SPI串口连接如图3所示。
VC5402初始化程序(以图3为例):
STM#SPCRll,SPSAl;设置时钟停止位进入MCBSP的SPI模式
STM#0X1000,SPSDl;时钟开始于上升沿(无延迟)
STM#SPCRl2,SPSAl
STM#0X0040,SPSDl;XINT由XRDY(即字尾)驱动
STM#PCRl,SPSAl
STM#0X000C,SPSDl;对发送和接收时钟,同步帧进行设置
STM#RCRll.SPSAl
STM#0X0000,SPSDl;接收数据l帧1字.1字8位
STM#XCRll,SPSAl
STM#0X0000,SPSDl;;发送数据1帧1字.1字8位;
   
    P1.0发送到VC5402的移位时钟是保证DSP正确采样接收和发送数据的时钟。它要保证和C51的采样接收和发送数据的时钟一致.才能使主从机同步。
2  并行通信设计与实现
2.1 VC5402的HPI接口原理
HPI一8是一个8位(HD0~HD7)的连接DSP与主机设备或主处理器的并行接口。DSP与主机通过DSP的片内RAM交换数据,整个片内RAM都可以作为HPI一8的存储器。HPIA地址寄存器只能由主机直接访问,存放当前寻址的存储器的地址;HPID数据锁存器只能由主机直接访问,存放当前要写入或读出的数据;HPIC控制寄存器可以被主机和VC5402共同访问。HPI本身的硬件中断逻辑可以完成主从设备之间的握手,主机通过置HPIC中的特定位产生DSP中断,同样DSP通过nHINT引脚对主机产生中断。HRDY引脚用于自动调节主机访问HPI的速度,使慢速外部主机与DSP能很好地匹配。HRDY由HCS使能,即当HCS为高时HRDY一直为高,而当EMUl/nOFF为低时,HDRY输出高阻。

    HPI连接如图4所示。
2.2  并行接口设计
    将C51置为主机,VC5402置为从机。C51的PO口和HPI的8位数据线HD0~HD7相连作为数据传输通道,P1.0~P1.3设置为输出控制HPI口的操作。其中P1.0作为读写控制选通信号连接HR/W;P1.1连接字节识别信号HBIL,控制读写数据是属于16位字的第1还是第2字节;P1.2和P1.3分别连接HCNTL0和HCNTLl,以实现对HPIC、HPIA和HPID寄存器的访问;nRD和nWR连接nHDSl和nHDS2作为数据选通信号来锁存有效的HCNTLO/1、HBIL和HR/W信号。nINTl作为输入,与HPI口的主机中断信号nHINT相连。nHCS一直接地,而nHAS口和ALE口相连接,在HCNTL0/I、HBIL和HR/W信号有效之后,设置nHDSl为低电平,则实现了读写的数据选通,从而完成C51对VC5402 HPI口的读写操作。在数据交换过程中,C51向HPI发送数据时,通过置VC5402的HPI控制寄存器HPIC中的DSPINT位为l来中断VC5402。C51接收来自HPI的数据时通过查询方式,当VC5402 DSP准备发送数据时,置nHINT信号为低;C51查询到nlNTl为低时,调用接收数据子程序来实现数据的接收。
C51与VC5402的并行连接如图5所示。
    主机接收和发送初始化程序(以图5连接为例):
RTITEADDRESS:    ;写入VC5402存储器地址信息
    CLR P1.2
注:①HBlL脚在传输过程中指示当前字节为第l还是第2字节。
  ②为方便DSP自举引导加载程序.常采用将nHlNT脚直接与INT2
    脚相连。

    图5  AT89C51与V05402的并行连接
SETB P1.3    ;主机可读写HPlA地址寄存器
CLR P1.0    ;主机要求写选通HPI一8
MOV P0,A    ;写入8位地址
CALL DELAY  ;等待地址写入完成
READDATA:    ;读出VC5402存储器数据信息
SETB P1.2
CLR P1.3    ;主机可读写HPID数据寄存器
SET P1.0    ;主机要求读选通HPI一8
MOVA,P0    ;读出8位数据
CALL DELAY  ;等待数据读出完成
WRITEDATA:    ;写入VC5402存储器数据信息
SETB Pl.2
CLR P1.3    ;主机可读写HPID数据寄存器
CLR P1.0    ;主机要求写选通HPI一8
MOV P0,A    ;写入8位数据
CALL DELAY  ;等待数据写入完成
   
    不管是串行连接还是并行连接,都要考虑到VC5402是采用3.3 V供电,C51采用5 V供电。两者之间存在信号电平的差异而不能直接相连,应互连接口隔离器件。
 
结  语
    在SCI串行通信调试中,发现由于DSP的运行频率在100 MHz左右,造成内部数据时钟CLKG过快,不能与C51串口采样频率保持一致,需要软件加以处理,这样会额外消耗DSP资源。因此可以考虑将发送时钟CLKX和接收时钟CLKR接外部时钟源(慢于DSP时钟),以保证与C51串口采样频率的一致。另外在并行通信的调试中,可以知道通过HPI-8口并行通信完全没有硬件和软件开销,由DSP自身的硬件来协调冲突,因此HPI-8口使用于与单片机构件较好的主从双CPU处理器平台。

(阅读次数:
(阅读次数:

如对本论文有购买需求,请联系客服QQ:920225073必过网计算机毕业设计

上一篇:Delphi 7.0常用函数速查手册   下一篇:IP多媒体子系统——IMS技术与应用
[收藏] [推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]  
用户名: 新注册) 密码: 匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
 §最新评论
  热点文章
·计算机毕业设计
·IP多媒体子系统——IMS技术与应
·图书馆管理系统
·进销存管理系统
·Linux操作系统下以太网卡的安装
·学生成绩管理系统的设计与实现
·使用VB制作多媒体播放器
·嵌入式系统的应用论文
·08毕业设计任务书
·网上书店系统
·防火墙技术与网络安全
·工资发放管理系统
·网络经济对会计发展的十大影响
·实时性远程答疑系统
·网吧的组建及相关技术
·在应用程序中跟踪MOUSE的坐标
·浅析计算机病毒及防范的措施
·库存管理系统的分析与设计
  相关文章
·IP多媒体子系统——IMS技术与应
·Linux操作系统下以太网卡的安装
·Linux操作系统以其独有的开放性
·PCI9052接口电路的功能及应用
·Spring框架的事务管理应用分析
·SSL VPN介绍与安全性研究
·VB调用C程序的方法—动态链接库
·搭建基于Linux桌面环境的影音平
·电子政务与行政体制改革的空间拓
·动态网络组织探析
·改善嵌入式Linux实时性能的方法
·规范司法会计鉴定工作的几点设想
·新会计政策对公司业绩的影响
·我国加入WTO后会计面临的挑战
·也谈会计准则与会计制度
·我国会计市场模式的构建
·会计工作面临的机遇和挑战
·加入WTO对中国财政的影响
订做说明---购买说明---网站地图---收藏我们---RSS订阅
《中华人民共和国增值电信业务经营许可证》
《中华人民共和国信息产业部》备案/许可证编号:[湘ICP备08090636号]
购买咨询QQ:920225073购买计算机毕业设计 定做与售后QQ:859511006计算机专业毕业论文售后 E-MAIL:920225073@qq.com

© 版权所有必过网计算机毕业设计:(www.passlw.com)
必过网计算机毕业论文