DSP 与PC 机串行通讯的设计

发布者:创意驿站最新更新时间:2011-03-30 关键字:DSP  串行通讯 手机看文章 扫描二维码
随时随地手机看文章
   

    摘要:以TMS320F240 系列为例,简要介绍了数字信号处理器串行通信接口SCI 模块和RS485 串口通信,并编程实现了TMS320F240 与PC 机串行通信接口电路。

1 引言

    DSP 既是Digital Signal Pricessing 的缩写,也是Digital Signal Pricessor 的缩写。前者是指数字信号处理的理论和方法,后者则是指用于数字信号处理的可编程微处理器。TMS320F240 系列是在TMS320F2000TM 平台下的一种定点DSP 芯片,是专为数字电机控制和其他控制应用系统而设计的16位定点运算的DSP。它集合了DSP 的高速运算功能与电机的强大控制能力,为控制系统应用提供了一种理想的解决方案。TMS320F240 片内外设有一个16 位的同步串行外围接口(SPI),一个用于串行通讯接口的SCI 模块,双10 位A/D 转换器,带中断的看门狗定时器模块(WDT),带有锁相环(PLL)时钟发生器。另外,还集成了两个事件管理模块EVA 和EVB。因此,TMS320F240 不仅具有高速数据处理能力,还具有控制和事件管理能力,可完成人机界面、与上位机进行串行通信等功能。

2 串行通讯接口(SCI)模块

    SCI 接收器和发送器是双缓冲的,每一个都有他自己单独的使能和中断标志位。两者可单独工作,或在全双工的方式下同时工作。为了确保数据的完整性,SCI 对接收到的数据进行间断检测、奇偶性校验、超时和帧出错的检查。通过一个16 位的波特率选择寄存器,数据传输的速度可以被编程为65535多种不同的方式。SCI 的串行通信接口包括SCIRXD(串行通信数据接收)和SCITXD(串行通信数据发送),在不使用SCI 时,这两个引脚也可作通用I/O 口。发送和接收的操作可以利用状态标志位通过中断驱动或查询算法来完成。与之相关的主要寄存器:发送缓冲寄存器SCITXBUF、接收缓冲寄存器 SCIRCBUF、接收仿真缓冲寄存器SCIRXEMU;通信控制寄存器SCICCR、中断使能和内部时钟使能SCICTL1 和SCICTL2 、波特率选择高字节寄存器SCIHBAUD、波特率选择低字节寄存器SCILBAUD、优先级控制寄存器SCIPRI、引脚控制功能SCIPC2 以及反映通信状态SCIXST 等。

    串行通信接口模块有两个多处理器通信协议:空闲线多处理器模式和地址多处理器模式。空闲线模式在地址前留有一个固定空间,该模式没有附加的地址 /数据位,它在处理包含多于10 个字节的数据块方面比地址位模式更有效;地址位模式在每个字节中加入一个额外位(地址位)来区分地址和数据,这种模式在处理多个小数据块时更有效。

3 RS-485串口通信

    RS-232 虽然被广泛接受,但其数据传送的速度慢、在现代网络通信中已暴露出的接口处各信号间容易产生干扰等明显的缺点。RS-232 只能传输15 米,不能满足远距离传输要求,而RS-485 最大传输距离为1200 米,最大传送速率可达10Mb/s。因此,RS-485 在远程通信和多机总线系统中具有很大吸引力。MAX48X/49X 系列收发器芯片适合于RS 一422/RS 485 通信标准。其主要有以下特点:

DSP 与PC 机串行通讯的设计

·单+5V 电源供电;

· 低功耗:工作电流120~ 500μA :

· 驱动过载保护;

· 通信传输线上可挂32 个收发器方便组成半双工通信电路;

· 共模输入电压范围:-7V ~ + l2V

MAX485 为8 脚封装,引脚配置如图l 所示,各引脚功能说明如表l 所示。

表1

DSP 与PC 机串行通讯的设计

    本设计以PC 机为主机,TMS320F240 为从机,主从机之间进行串口通信。TMS320F240 与PC 机之间采用RS 一485 标准进行半双工通信的接口电路如图2 所示。其中,接收器和驱动器的选择由TMS320F240 的XF/IOPC2 引脚控制。由于一般PC 机上提供的是标准的RS 232 C 串行接口,因此,需要RS 232C/RS485 转换器进行接口转换。

DSP 与PC 机串行通讯的设计

4 上位机PC机的软件设计

    上位机PC 采用高级语言C,在用C 语言开发DSP 应用程序时,需要嵌入一句或几句汇编语言,如在程序的初始化阶段对INTM、SXM 等位的配置。用asm 的方式就可以实现单句汇编语言的嵌入。
Code Composer Studio 简称CCS,是TI 公司推出的为开发TMS320 系列DSP 软件的集成开发环境(IDE)。CCS 工作在Windows 操作系统下,类似于VC++的集成开发环境,采用图形接口界面,提供有编辑工具和工程管理工具。在CC 环境下串行通信有两种方式:即同步方式和异步方式,在此仅讨论异步方式中的串行通信。PC 串行口发送器输出端和接收器输入端的数据格式为帧信息格式,与TMS320F240的SCI 口格式相同。通信时,双方必须约定通信数据传输格式、传输速率及各自工作方式等。本文设计,当上位机请求通讯时,先发请求通讯命令,下位机有效接收并判断,确认后向上位机发响应码。上位机在收到响应码后,再发操作命令。双方约定:波特率208h;8 位字符,一位停止位,无校验;传送方式:PC 机采用查询方式接收数据,TMS320F240 采用中断方式接收数据。

5 DSP软件设计

5.1 串口初始化

    首先对寄存器地址、波特率、数据位、停止位、奇偶校验位进行设置。

void Set()

{

*SCICCR=0x7; //8 位字符,1 停止位,无校验

*SCICTL1=0X13; //使能发送和接受

*SCICTL2=0x03; //使能接受和发送中断

*SCIHBAUD=0x02; //波特率=208h,40MHZ

*SCILBAUD=0x08; //208h=40*106/(9600*8)-1

*SCICTL1=0x33; //使能发送和接受,复位

*SCIPRI=0X60; //SCI 中断(接受和发送中断)为低优先级中断

}

5.2 中断初始化

a)禁止总中断子程序

void inline disable()

{

asm("setc INTM");

asm("setc SXM");

}

[page]

 

   

b)使能总中断子程序

void inline enable()

{

asm("clrc INTM") ;

}

c)中断服务程序

void interrupt uarttr(){

switch (*PVIR){

//根据中断向量寄存器PVIR 的值区别是接收还是发送中断

case 6:UartRec();

//如果PVIR=6,则发生了接受中断,执行接受中断服务程序

}

}

d)当由于干扰而引起其它中断时,中断进入此程序直接返回主程序

void interrupt nothing(){

return; }

5.3中断处理

void UartRec(){

unsigned int uwork;

int I, k;

k=0;

while(1) {

do{

uwork=(*SCIRXST);

}while((uwork&0x40= =0));

cReceive=(*SCIRXBUF);

cBuffer[k]= cReceive;

if(cReceive= =’.’) {

cBuffer[k+1]=’’;

nlen=k+1;

Set();

Break;

}

k++; k%=16;

}

}
5.4程序初始化

# include "2407c.h"

//初始化子程序

Initial(){

*IFR=0xFFFF; //清除中断标志

*WDCR=0Xe8; //不使能看门狗

*SCSR1=0x81FE; //CLKIN=6M, CLKOUT=24M

*MCRA=0x3; //use SCITXD, SCIRXD

*PADATDIR=0x100; //设置ADIR 为输出口

}

5.5主程序

Main(){

Set();

Disable(); //屏蔽所有中断

Initial(); //系统初始化

Enable(); //使能总中断

While(1) {

unsigned int uwork;

For (intI=0;I<10;I++){

Do{

Uwork=(*SCICTL2);

}while (uwork&0x0c0!=0x0c0);

(*SCITXBUF)=cAnswer[i];

*IFR=0x0010;

Enable();

}

Do{

Uwork=(*SCICTL2);

}while (uwork&0x0c0!=0x0c0);

(*SCITXBUF)='"';

}

For(;;){

:

}

}

6结束语

    本文作者创新点:利用DSP 的串行通信接口(SCI)和功能强大的开发环境CCS,可以方便地实现DSP 与PC 机间的单机或多机串行通信。通过实际运行表明,利用TMS320 的SCI 模块实现DSP 之间或与PC 机的通信,与传统的C51 单片机相比,其电路简单、设置灵活、运行速度快,性能可靠稳定。

关键字:DSP  串行通讯 引用地址:DSP 与PC 机串行通讯的设计

上一篇:双DSP的多路视频监控系统设计
下一篇:在选用FPGA进行设计时降低功耗的方法

推荐阅读最新更新时间:2024-05-02 21:19

数字使智能视频监控超越传统系统
  模拟系统构成了目前绝大部分视频安全系统,但是这些基于传统TV线缆技术的系统具有很多缺点:建设与维护可提供连接的宽带线缆基础设施耗资巨大;依靠人力监视多个摄像头来检测可疑活动会耗费大量人能监控系统能够高效运行至少5种算力,而且由于人为错误还会造成假警报和降低安全性;最重要的是,发生违反安全的行为和发现这种行为的间隔往往太长,因而无法预防犯罪,甚至也无法逮住不法分子。   毫不夸张地说,模拟视频监控技术已经走进死胡同。一大堆人需要整天坐在那里盯住一大堆屏幕,因此有可能产生一大堆假警报,而安全性也更是无从谈起。视频监控市场正在迎来一种具有颠覆性的技术,它依赖的概念是通过在网络中嵌入机器智能来提高性能并降低成本。新的模式变革正姗姗而
[焦点新闻]
DSP芯片在自动报站系统中的应用
作者Email: greatchen1979@163.com 引言: 当前国内主要大城市的公交车大都采用人工语音报站,即每到一站由司机或者乘务员按语音键来进行报站。但有时由于受到各种因素如雨雪天路滑、车上拥挤、乘务员心情的变化等的影响,会出现报错站,漏报站的情况,给乘客特别是不熟悉本市地形的乘客带来了不必要的麻烦,从而影晌到了一个城市的窗口形象工程建设,于是开发研制自动报站系统成为必然。系统中由于要求对接收到的公交车GPS定位信息(经纬度信息等)进行处理,由经纬度信息生成站牌与公交车之间的距离信息,这之间会经历繁琐的计算,用一般的微控制器难于实现,而当采用DSP处理芯片时,这一问题就很好解决了。 1. 自动报站系统
[嵌入式]
基于DSP的网络通信程序设计
摘要:通过分析网卡基本通信过程控制和数字信号处理器(DSP)对网卡直接编程方法,成功设计基于DSP的网络通信程序,从而最终实现DSP系统数字化和网络化的融合。 关键词:DSP 网络通信程序 通信协议 网卡 DSP芯片是专门为实现各种数字信号处理算法而设计的、具有特殊结构的微处理器,其卓越的性能、不断上升的性价比、日渐完善的开发方式使它的应用越来越广泛。将计算机网络技术引入以DSP为核心的嵌入式系统,使其成为数字化、网络化相结合,集通信、计算机和视听功能于一体的电子产品,必须大大提升DSP系统的应用价值和市场前景。将DSP技术与网络技术相结合,必须解决两个关键问题:一是实现DSP与网卡的硬件接口技术,二是基于DSP的网络通信程
[嵌入式]
单片DSP处理器功能系统的SOPC技术设计
   摘要 结合Altera公司推出的Nios II嵌入式软核处理器,提出一种具有常规DSP处理器功能的NiosII系统SOPC解决方案;利用NiosII可自定叉指令的特点,通过Matlab和DSP Builder或直接用VHDL设计并生成复数乘法器、整数乘法器和浮点乘法器等硬件模块,将它们定制为相应的指令,从而将软件的灵活性和硬件的高速性结合起来,较好地解决了传统DSP处理器所面临的速度问题、硬件结构不可重构性问题、开发升级周期长和不可移植性等问题。   随着微电子技术和计算机工具软件的发展,可编程片上系统SOPC的设计理念和设计方法成为了一种趋势。为了解决传统DSP处理器所面临的速度问题、硬件结构不可重构性问题、开发升级周期
[应用]
基于DSP的软件锁相环的实现
0 引言 准确获取电网基波及谐波电压的相位角,在变频器、有源滤波器等电力电子装置中具有重要的意义,通常需要采用锁相环得以实现。传统锁相环电路一般由鉴相器、环路滤波器、压控振荡器及分频器组成,其工作原理是通过鉴相器将电网电压和控制系统内部同步信号的相位差转变成电压信号,经环路滤波器滤波后控制压控振荡器,从而改变系统内部同步信号的频率和相位,使之与电网电压一致。传统锁相环存在硬件电路复杂、易受环境干扰及锁相精度不高等问题,随着大规模集成电路及数字信号处理器的发展,通过采用高速DSP 等可编程器件,将锁相环的主要功能通过软件编程来实现。本文设计的锁相环控制系统采用数字处理器TMS320F2812 芯片实现对电网基波及特定次谐波电压相位
[嵌入式]
基于<font color='red'>DSP</font>的软件锁相环的实现
CPU传统功能阻发展 GPU也适合服务器
      GPU厂商nVidia的首席科学家称,谈到节能计算,CPU因负载过多的传统功能而在执行常见的并行任务方面逊色于GPU(图形处理单元)。nVidia的首席科学家和高级副总裁Bill Dally在新奥尔良举行的2010年超级计算机大会上提到,CPU在执行一些当前计算环境中不必要的任务上耗费了大量功率。   他称,“GPU为吞吐量优化,而CPU是为低延迟优化,以获取非常不错的线程性能。”   Dally指出大多数现代CPU具有的一些在追求低延迟的过程中浪费能源的功能。   虽然GPU最初设计用于在屏幕上绘制图形,但现在像nVidia和AMD等厂商将其GPU显卡定位为一种常见的计算引擎,至少是针对那些可分解成多个部
[嵌入式]
基于TMS320C6x11系列DSP的图像获取方案
本设计方案旨在利用上述 的有利条件,提出一套基于TMS320C6x11系列DSP的图像获取方案,利用模拟视频信号的统一性,实现随意更换带有标准模拟视频信号输出接口的图像设备而无需在图像处理系统的硬件和软件上作修改。同时,本方案还需提供一个相对通用的数字视频接口,可以适应TMS320C6xll系列DSP的接口。本设计的主要技术要求有:   ①支持标准的模拟视频输入接口,可以对标准的模拟视频信号解码得到数字图像数据;   ②在不降低图像幅面的前提下,图像采集速度快,满足一定的实时性要求;   ③占用CPU时间少,使得图像采集过程在后台自主完成;   ④数字图像接口通用性好,可以在TMS320C6u1l系列乎台上通用互换。   1
[单片机]
基于TMS320C6x11系列<font color='red'>DSP</font>的图像获取方案
DSP实现新一代磁浮列车悬浮控制器
    摘 要 用浮点DSP实现磁浮列车数字控制器克服了传统模拟控制器和数字控制器的缺点和局限性。达到了理想的控制效果。     关键词 磁浮列车 电磁悬浮控制 电磁铁 控制系统 数字信号处理器     由于磁浮列车是脱离轨道运行的所以控制技术与磁浮技术无疑是磁浮列车的关键所在。对磁浮列车控制的一个最基本要求,是要保证磁浮列车能够在各种扰动(外部和内部)作用下仍然具有平衡稳定的悬浮。从磁浮列车的控制手段来看,可以应用模拟电子电路,亦可以应用数字电子计算机。模拟控制具有运算速度快、实时性好等优点,但由于其存在工作稳定性差、精度低、调整困难以及难于实现复杂的控制规律等许多缺点,所以采用高速、高性能的数字控
[应用]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

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

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