TMS320VC5402和PC机的UART研究与设计.docx
-
资源ID:17801675
资源大小:19.09KB
全文页数:9页
- 资源格式: DOCX
下载积分:15.18金币
快捷下载
![游客一键下载](/images/hot.gif)
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
TMS320VC5402和PC机的UART研究与设计.docx
TMS320VC5402和PC机的UART研究与设计hesp导语:TMS320VC5402以其低本钱、低功耗、资源多的特点在通讯、控制领域得到了广泛的应用。1引言TMS320VC5402以其低本钱、低功耗、资源多的特点在通讯、控制领域得到了广泛的应用。片上集成了最大192kB存储空间64kBRAM、64kBROM、64kBI/O,具有时分多路串口TMD,2个缓冲串口BSP、8位并行主机接口HPI、可编程等待状态发生器等,完全可以知足数据处理及控制要求。基于5402构建的应用系统中必不可少的是各种数据通讯接口的设计。与并口相比,串行接口的特点是减少器件引脚数目,节省了硬件系统的体积,降低了接口设计的复杂性。实际应用中,各系统之间需要实现异步串行数据传输和通讯,而DSP5402具有同步串口,与标准的异步串行接口不同,本文针对这种应用,设计实现了DSP5402和PC机的异步串行通讯。2串行通讯和DSP5402串口在工业控制和实际应用中,串行通讯的应用已非常普遍,图1示出常见的三种232通讯方式,在此笔者选用短间隔有线传输方式。目前,大多数PC机的串口采用RS-232标准,该标准规定采用一个25脚的DB25连接器,实际上RS-232的25条引线有很多是很少用的,所以目前较为常用的串口有9针和25针,在普通电路设计中最为简单且常用的是三线制接法,即在通讯中不需要RS-232的控制联络信号,采用发送数据TXD、接收数据RXD、地GND三脚相连,便可实现全双工异步串行通讯,本文即采用此法实现PC与DSP的串行通讯。align=center图1三种RS-232通讯方式/align由于RS-232中没有时钟信号,所以按照设定的固定波特率传送。在一信号中包括开场位、停顿位和数据位,校验位可以选择。其中数据位为5-8bits,奇偶校验位共有5种方式可选:奇校验、偶校验、始终为1、始终为0以及空;停顿位也有三种选择:1位、11/2位以及2位。串口传数时低位优先,由开场位表示数据传输。DSP5402有2个多缓冲的同步串口,通过幀信号来控制数据流。每一个串口有6个信号:CLKR/X:接收、发送时钟信号,DR/DX:接收、发送串行数据信号,FSR/FSX:接收、发送幀同步信号;串行接口有5个存放器:数据接收存放器DRR、数据发送存放器DXR、串行接口控制存放器SPC、数据接收移位存放器RSR、数据发送移位存放器XSR,其中3个存储器映射存放器SPC、DXR和DRR和2个程序不能直接访问的存放器RSR和XSR来操纵,RSR和XSR在执行双缓冲功能时很有用。发送数据写到DXR中,而接收数据从DRR中读取。其各存放器配置及控制请参考文献2。3DSP和PC机串口通讯的软硬件实现3.1DSP和PC机UART硬件连接由上所述,PC机的异步串口和DSP5402的同步串口在数据格式以及传送控制上有区别,但是通过必要的硬件控制和软件模拟就可实现DSP5402与标准串口间的通讯。DSP5402和PC机的UART实现主要有二种硬件方法和二种软件模拟方法。硬件方法如下:基于MAX3100的同步转异步实现和利用DSP5402I/O模拟时序法。MAX3110E内部集成了全功能UART和内置电泵电容以及土15kVESD保护的RS-232收发器。其中,UART局部采用兼容SPITM/QSPITM/MICROWIRETM的串行接口,因此可节省线路板空间和微控制器的I0引脚。由于RS-232局部使用了特有的低压差输出级,进而使双接收/发送接口可以在高速通讯、正常电源下提供真正的RS-232特性,而功耗仅600A。通过MAX3110E可实现同步串行数据接口到异步串行通讯口RS-232的转换,它可直接与PC机的串行口COM相连。MAX3110E具有尺寸小,价格低,功耗少,通讯速率高等特点,因此有着较好的应用前景。MAX3110E包括UART与RS-232两个独立的局部。其中,UART局部包括兼容于SPI的串行接口、可编程波特率发生器、发送缓冲器及发送移位存放器、接收缓冲器及接收移位存放器、8字节接收FIFO以及有四种可屏蔽中断源的中断产生器。而RS-232局部包括自带电容的电泵,以及可由SHDN对其进展硬件关断的。MAX3110E通过SPI接口与DSP5402进展16位数据的全双工通讯。DSP5402通过BDX线向MAX3110发送的16位串行数据序列中包括传输格式控制字,如波特率设置、中断屏蔽、奇偶校验位等。DSP5402的McBSP串行接口工作于SPI形式时可直接与MAX3110进展连接。DSP5402的BDX1与MAX3110的DIN连接作为发送数据线,BDR1与DOUT连接作为接收数据线,发送同步脉冲信号BFSX1作为片选信号,发送时钟信号BCLKX1作为MAX3110的串行时钟输入,硬件接口图如图2所示:align=center图2DSP5402和MAX3110硬件接口图/align同时必须根据时序设置DSP5402的McBSP存放器,此种UART方式才得以实现,时序图如图3所示:align=center图3MAX3110和DSP5402配合时序/alignalign=left利用DSP5402I/O模拟时序法分析如下:用定时器中断来处理数据,用I/O口来配置作为输入输出,由于DSP5402单独I/O引脚较少,节省资源,这里使用DSP5402的标志位引脚XF和配合软件得到实现,硬件原理图如图4所示:/alignalign=center图4硬件原理图/align3.2DSP和PC机UART软件实现对于基于MAX3100的同步转异步实现DSP5402编程如下:stmSPCR11,SPSA1;配置SPCR11stm#1800h,MCBSP1stmSPCR21,SPSA1;配置SPCR21stm#0000h,MCBSP1stmPCR1,SPSA1;配置PCR1stm#0a0ch,MCBSP1stmRCR11,SPSA1;配置RCR11stm#0040h,MCBSP1;配置RCR21stmXCR11,SPSA1;配置XCR11stm#0040h,MCBSP1;配置XCR21stmSRGR11,SPSA1;配置SRGR11stm#0027h,MCBSP1;配置SRGR21rpt#20;等待2个CLKSRG时钟周期stmSPCR21,SPSA1;配置SPCR21stm#0040h,MCBSP1;启动MCBSP1采样率发生器rpt#20;等待2个CLKG时钟周期nopstmSPCR11,SPSA1stm#1801h,MCBSP1;启动接收stmSPCR21,SPSA1;配置SPCR21stm#0041h,MCBSP1;启动MCBSP1发送端stmSPCR21,SPSA1;配置SPCR21stm#00c1h,MCBSP1;启动帧同步脉冲rpt#80;等待8个CLKG时钟周期ld?#0h,Astm#0c042h,DXR11;配置MAX3110,2个停顿位配置完成即可发送数据,接收程序只需根据形式配置相应的接收存放器。图5示出测试界面。align=center图5串口调试助手测试界面/align对于I/O模拟方式软件编程可以通过定时器中断来设置通讯波特率,对于DSP5402定时需设置TIM0、PRD0、TCR0三个存放器,定时时间TX1+TDDRX1+PRD。同时还可以通过软件延时来设置通讯波特率,方法如下:DELAY:stm#1004h,AR6;通讯速率:1200bpsbanz$,AR6-其软件模拟程序如图6所示。二种软件模拟在PC机上均需运用串口调试助手测试,作者实现测试界面如图6,为了知足实际应用需要,可以运用VC编写自己的软件。align=center图6软件模拟程序/align4完毕语主要讨论了TMS320VC5402和PC之间实现UART的方法,利用同步串口实现简单、易行、稳定;利用软件模拟不需专用硬件,灵敏、方便、本钱低,各自知足自己的需求,二种方法均已测试通过,此思想对研究DSP5402和串口有一定的参考价值。编辑:何世平