位置:51电子网 » 技术资料 » D S P

高速DSP与PC实现串口通信的方法

发布时间:2008/5/27 0:00:00 访问次数:521

电子世界

  数字信号处理器(digital signal processor,dsp)在图形图像处理、高精度测量控制、高性能仪器仪表等众多领域得到越来越广泛的应用,实际运用中,通常须将dsp采集处理后的数据传送到pc机,然后进行存储和处理。

  t1公司的tms320vc33微处理器具有性价比高,同时,该芯片的i/o电平、字长、运行速度、串口功能具有大多数dsp的共同特点。本文针对tms320vc33与pc rs-232的通讯,分析三种具体的接口电路和软件设计方法,实现高速dsp与低速设备的通讯:①通过tms320vc33的通用i/o口实现通信;②通过tms320vc33中可设置为通用i/o的串行引脚实现通信;③直接利用tms320vc33的串口功能实现通信,在硬件和软件设计的基础上,完成相关试验和调试,并达到预期的效果。

采用通用i/o口实现

  pc的rs-232接口按照设定的固定波特率传送,rs-232串行口进行通信采用三线式接法,即rx(数据接收)、tx(数据发送)、gnd(地)三个引脚,pc机按帧格式发送、接收数据,一帧通常包括1位起始位("0"电平)、5-8位数据位、1位(或无)校验位、1位或1位半停止位("1"电平),起始位表示数据传送开始,数据位为低位在前、高位在后,停止位表示一帧数据结束。

  tms320vc33微处理器的串口帧格式没有起始位和停止位,只有数据位,且数据位为高位在前、低位在后。利用tms320vc33微处理器的通用i/o引脚实现串行通信时,须依据rs232的通信协议并结合dsp硬件资源编写相应的dsp程序。

1.硬件设计

  tms320vc33微处理器共有10个引脚可配置为通用i/o口,其中xfo、xfl为专用的通用i/o口,通过软件设计可实现xfo、xfl专用i/o口与rs232的串行通信。

  本文选用max3232e作为rs232c电平与ttl电平的转换芯片,r1in、t1out为rs232c电平,r1out、t1in为ttl电平,tms320vc33微处理器的int2引脚为外部中断脚,r10ut同时连接到int2和xf0,即可利用传输的第一位触发tms320vc33微处理器的外部中断。

2.软件设计

  假设系统已经完成初始化,数据接收流程如图2所示,设传输速率为9600bit/s,一个起始位("0")、8位数据位、一个终止位("1")。数据传输时对起始位定时半位的时间,数据位第一位以后的定时周期设置为一个位的时间,保证每一位数据都在中间采样,与传统rs232串口传输方式不同,有利于降低传输的误码率。

  数据传输时,先判断rx是否为oah,即判断是不是传输起始位,若rx=oah,表明数据开始传输;接着判断xf0管脚的状态是否为"o",若xf0=1,则数据传输错误,重新接收下一个数据;若xf=0,则表示数据开始正常传输;然后将rx-1,同步刷新rx中的内容,即rx=rx-1;同时,在timer0的周期寄存器和计数寄存器中存入定时整个位的时间常数,开定时器0的中断,定时时间一到,程序进入timer0的中断服务子程序,再判断rx是不是终止位,若rx为终止位,则开始继续接收新的数据,打开int2,将timer0周期寄存器和计数寄存器中存放半位的时间参数;若rx不是终止位,则继续接收数据位,直到rx接收到终止位。

  数据发送程序与数据接收程序原理相同。

  串口引脚作为通用i/o口实现

1.硬件设计

  tms320vc33微处理器的串口引脚也可作为通用i/o口,通过对i/0口的操作即可实现串行数据的接收和发送,将微处理器的数据接收引脚dr作为rs232的数据接收端,数据发送引脚dx作为rs232的数据发送端。

2.软件设计

  软件设计与i/o口软件原理相似,tms320vc33微处理器串口寄存器将串口功能引脚dr、dx设置为通用i/o口功能,不实施串口功能,即dr、dx引脚的功能与图1中xf0和xf1的功能相同。

  需要说明两点:①将图1和图3硬件电路相组合,即可实现一片tms320vc33微处理器与两台微机的同时通信;②tms320vc33微处理器共有10个引脚可配置为通用i/o口,因此,利用tms320vc33微处理器的内部和外部中断源、2个定时器、1个串口定时器和软件定时等方式,可巧妙地实现1片tms320vc33微处理器与多台微机同时通信。

  串口功能实现 该方法直接利用tms320vc33微处理器的串口功能实现通信。tms320vc33微处理器的串行通信有固定数据速率和可变数据速率两种类型,每种类型又分连续、标准和爆发三种方式。

1.硬件设计

  本文与rs232接口的通信方式采用固定速率的爆发方式,在该方式下,每个字的传送都由帧同步(fsx/fsr)信号开始,后面开始为数据位,其时序如图4所示。tms320vc33微处理器在爆发方式接收数据时,从帧同步信号后开始接收数据,并不再考虑fsr信号,在一帧信号传输的最后一位时,fsr必须为低电平,否则将会被作为下一帧的帧同步信号位。

  tms320vc33微处理器与标准串口间的通信硬件结构如图5所示,同样采用三线连接的电路。因pc

电子世界

  数字信号处理器(digital signal processor,dsp)在图形图像处理、高精度测量控制、高性能仪器仪表等众多领域得到越来越广泛的应用,实际运用中,通常须将dsp采集处理后的数据传送到pc机,然后进行存储和处理。

  t1公司的tms320vc33微处理器具有性价比高,同时,该芯片的i/o电平、字长、运行速度、串口功能具有大多数dsp的共同特点。本文针对tms320vc33与pc rs-232的通讯,分析三种具体的接口电路和软件设计方法,实现高速dsp与低速设备的通讯:①通过tms320vc33的通用i/o口实现通信;②通过tms320vc33中可设置为通用i/o的串行引脚实现通信;③直接利用tms320vc33的串口功能实现通信,在硬件和软件设计的基础上,完成相关试验和调试,并达到预期的效果。

采用通用i/o口实现

  pc的rs-232接口按照设定的固定波特率传送,rs-232串行口进行通信采用三线式接法,即rx(数据接收)、tx(数据发送)、gnd(地)三个引脚,pc机按帧格式发送、接收数据,一帧通常包括1位起始位("0"电平)、5-8位数据位、1位(或无)校验位、1位或1位半停止位("1"电平),起始位表示数据传送开始,数据位为低位在前、高位在后,停止位表示一帧数据结束。

  tms320vc33微处理器的串口帧格式没有起始位和停止位,只有数据位,且数据位为高位在前、低位在后。利用tms320vc33微处理器的通用i/o引脚实现串行通信时,须依据rs232的通信协议并结合dsp硬件资源编写相应的dsp程序。

1.硬件设计

  tms320vc33微处理器共有10个引脚可配置为通用i/o口,其中xfo、xfl为专用的通用i/o口,通过软件设计可实现xfo、xfl专用i/o口与rs232的串行通信。

  本文选用max3232e作为rs232c电平与ttl电平的转换芯片,r1in、t1out为rs232c电平,r1out、t1in为ttl电平,tms320vc33微处理器的int2引脚为外部中断脚,r10ut同时连接到int2和xf0,即可利用传输的第一位触发tms320vc33微处理器的外部中断。

2.软件设计

  假设系统已经完成初始化,数据接收流程如图2所示,设传输速率为9600bit/s,一个起始位("0")、8位数据位、一个终止位("1")。数据传输时对起始位定时半位的时间,数据位第一位以后的定时周期设置为一个位的时间,保证每一位数据都在中间采样,与传统rs232串口传输方式不同,有利于降低传输的误码率。

  数据传输时,先判断rx是否为oah,即判断是不是传输起始位,若rx=oah,表明数据开始传输;接着判断xf0管脚的状态是否为"o",若xf0=1,则数据传输错误,重新接收下一个数据;若xf=0,则表示数据开始正常传输;然后将rx-1,同步刷新rx中的内容,即rx=rx-1;同时,在timer0的周期寄存器和计数寄存器中存入定时整个位的时间常数,开定时器0的中断,定时时间一到,程序进入timer0的中断服务子程序,再判断rx是不是终止位,若rx为终止位,则开始继续接收新的数据,打开int2,将timer0周期寄存器和计数寄存器中存放半位的时间参数;若rx不是终止位,则继续接收数据位,直到rx接收到终止位。

  数据发送程序与数据接收程序原理相同。

  串口引脚作为通用i/o口实现

1.硬件设计

  tms320vc33微处理器的串口引脚也可作为通用i/o口,通过对i/0口的操作即可实现串行数据的接收和发送,将微处理器的数据接收引脚dr作为rs232的数据接收端,数据发送引脚dx作为rs232的数据发送端。

2.软件设计

  软件设计与i/o口软件原理相似,tms320vc33微处理器串口寄存器将串口功能引脚dr、dx设置为通用i/o口功能,不实施串口功能,即dr、dx引脚的功能与图1中xf0和xf1的功能相同。

  需要说明两点:①将图1和图3硬件电路相组合,即可实现一片tms320vc33微处理器与两台微机的同时通信;②tms320vc33微处理器共有10个引脚可配置为通用i/o口,因此,利用tms320vc33微处理器的内部和外部中断源、2个定时器、1个串口定时器和软件定时等方式,可巧妙地实现1片tms320vc33微处理器与多台微机同时通信。

  串口功能实现 该方法直接利用tms320vc33微处理器的串口功能实现通信。tms320vc33微处理器的串行通信有固定数据速率和可变数据速率两种类型,每种类型又分连续、标准和爆发三种方式。

1.硬件设计

  本文与rs232接口的通信方式采用固定速率的爆发方式,在该方式下,每个字的传送都由帧同步(fsx/fsr)信号开始,后面开始为数据位,其时序如图4所示。tms320vc33微处理器在爆发方式接收数据时,从帧同步信号后开始接收数据,并不再考虑fsr信号,在一帧信号传输的最后一位时,fsr必须为低电平,否则将会被作为下一帧的帧同步信号位。

  tms320vc33微处理器与标准串口间的通信硬件结构如图5所示,同样采用三线连接的电路。因pc

相关IC型号

热门点击

 

推荐技术资料

业余条件下PCM2702
    PGM2702采用SSOP28封装,引脚小而密,EP3... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!