TMS320VC5402串行通信接口设计
发布时间:2008/9/2 0:00:00 访问次数:750
摘 要:介绍了tms320c5402 mcbsp的结构及主要特点,给出了通过mcbsp扩展成spi串口与pc机及at89s51单片机通信的设计方案。该方案充分利用dsp的mcbsp接口功能,实现了主机、dsp和单片机之间的实时通信。应用结果表明该方案稳定可靠,实际应用良好。
近年来,dsp在电子、通信和控制领域得到了非常广泛的应用,在dsp应用系统设计中与上、下位机的通信必不可少。目前几乎所有的dsp都提供一个或多个串口,然而,多数dsp芯片提供的是同步串口,在实际的应用中,dsp要能够与外设进行异步串行通信,如与pc机进行串行数据传输就要求dsp系统具uart串行接口。另外,由于单片机控制灵活方便、便于键盘及显示的扩展,使得其与dsp结合的更加紧密。针对这种情况,本文研究并实现了dsp与pc机及单片机通信接口的扩展。
1 spi接口协议
串行外围设备接口(spi)是motorola公司提出的一个同步串行外设接口,以主从方式工作,允许cpu 与各种外围接口器件以串行方式进行通信、交换信息。接口包括4条线:串行时钟线(sck)、主机输入/从机输出线(miso)、主机输出/从机输入线(mosi)、低电平有效的使能信号线(/ss)。这样,仅需3~4根数据线和控制线即可扩展具有spi接口的各种i/o器件。
2 tms320vc5402与pc机的异步串口通信
2.1 mcbsp的功能与特点
tms320vc5402芯片具有2个高速、全双工、多通道缓冲串行接口(mcbsp),其方便的数据流控制可使其与大多数同步串行外围设备接口。mcbsp通过6个引脚(bdx、bdr、bclkx、bclkr、bfsx 和bfsr)与外设接口。
mcbsp串口工作于时钟停止模式时与spi协议兼容。此时,发送器和接收器在内部得到同步,mcbsp可作为spi的主设备或从设备。发送时钟信号(bclkx)对应于spi协议中的串行时钟信号(sck),发送帧同步信号对应于从设备使能信号(/cs)。在这种方式下对接收时钟信号(bclkr)和接收帧同步信号(bfsr)不进行连接,因为它们在内部分别与bclkx和bfsx相连。mcbsp工作于spi模式的主机时,与spi从设备接口如图1所示。
图1 mcbsp作为spi的主设备
2.2 max3111通用异步收发器
max3111通用异步收发器是maxim 公司为微处理系统设计的通用异步收发器uart,包括振荡器、可编程波特率发生器、可屏蔽的中断源、8字节的接收fifo缓冲器和两个rs232电平转换器。它应用spi接口技术直接与主控制器进行通信,通信速率可达230 kb/s,无需再接入普通的max232进行电平转换,即可应用一个芯片实现微控器与pc机或其它设备之间的异步数据传输。
2.3 dsp与max3111的接口设计
由于max3111是3.3 v器件,dsp的mcbsp串行接口工作于spi模式时可直接与max3111连接,实现与rs232设备异步数据传输。此时dsp作为spi协议中的主设备,发送时钟信号(bclkx)作为max3111的串行时钟输入,发送帧同步脉冲信号(bfsx)作为max3111的片选信号(/cs)。bdx与din 连接作为发送数据线,bdr与dout 连接作为接收数据线。max3111的tx 与tiin连接,rx与r1out连接,以便利用其片内的转换
器实现uart到rs232电平的转换。max3111的中断信号(irq)与dsp的外部中断into相连,其接口电路如图2所示。这样硬件上无需任何其它外围器件,由于异步数据的发送和接收由max3111以硬件方案实现,所以软件编程只需考虑dsp与max3111之间的同步数据通信。
图2 dsp与max3111的接口电路
在spi串行协议中,主设备提供时钟信号并控制数据传输过程,必须对mcbsp初始化并设定适当的工作方式才能保证与max3111的时序相配合,设计中采用mcbsp的时钟停止模式2(clkstp=11 b,clkxp=0) 。
3 tms320vc5402与at89s51单片机的串口通信
dsp主机接口hpi具有强大功能的智能外设,主要用于dsp与其它总线或cpu进行连接。dsp与单片机的接口通常采用hpi来实现,但要外加电平转换,硬件电路较复杂。这里采用c5402通过spi
摘 要:介绍了tms320c5402 mcbsp的结构及主要特点,给出了通过mcbsp扩展成spi串口与pc机及at89s51单片机通信的设计方案。该方案充分利用dsp的mcbsp接口功能,实现了主机、dsp和单片机之间的实时通信。应用结果表明该方案稳定可靠,实际应用良好。
近年来,dsp在电子、通信和控制领域得到了非常广泛的应用,在dsp应用系统设计中与上、下位机的通信必不可少。目前几乎所有的dsp都提供一个或多个串口,然而,多数dsp芯片提供的是同步串口,在实际的应用中,dsp要能够与外设进行异步串行通信,如与pc机进行串行数据传输就要求dsp系统具uart串行接口。另外,由于单片机控制灵活方便、便于键盘及显示的扩展,使得其与dsp结合的更加紧密。针对这种情况,本文研究并实现了dsp与pc机及单片机通信接口的扩展。
1 spi接口协议
串行外围设备接口(spi)是motorola公司提出的一个同步串行外设接口,以主从方式工作,允许cpu 与各种外围接口器件以串行方式进行通信、交换信息。接口包括4条线:串行时钟线(sck)、主机输入/从机输出线(miso)、主机输出/从机输入线(mosi)、低电平有效的使能信号线(/ss)。这样,仅需3~4根数据线和控制线即可扩展具有spi接口的各种i/o器件。
2 tms320vc5402与pc机的异步串口通信
2.1 mcbsp的功能与特点
tms320vc5402芯片具有2个高速、全双工、多通道缓冲串行接口(mcbsp),其方便的数据流控制可使其与大多数同步串行外围设备接口。mcbsp通过6个引脚(bdx、bdr、bclkx、bclkr、bfsx 和bfsr)与外设接口。
mcbsp串口工作于时钟停止模式时与spi协议兼容。此时,发送器和接收器在内部得到同步,mcbsp可作为spi的主设备或从设备。发送时钟信号(bclkx)对应于spi协议中的串行时钟信号(sck),发送帧同步信号对应于从设备使能信号(/cs)。在这种方式下对接收时钟信号(bclkr)和接收帧同步信号(bfsr)不进行连接,因为它们在内部分别与bclkx和bfsx相连。mcbsp工作于spi模式的主机时,与spi从设备接口如图1所示。
图1 mcbsp作为spi的主设备
2.2 max3111通用异步收发器
max3111通用异步收发器是maxim 公司为微处理系统设计的通用异步收发器uart,包括振荡器、可编程波特率发生器、可屏蔽的中断源、8字节的接收fifo缓冲器和两个rs232电平转换器。它应用spi接口技术直接与主控制器进行通信,通信速率可达230 kb/s,无需再接入普通的max232进行电平转换,即可应用一个芯片实现微控器与pc机或其它设备之间的异步数据传输。
2.3 dsp与max3111的接口设计
由于max3111是3.3 v器件,dsp的mcbsp串行接口工作于spi模式时可直接与max3111连接,实现与rs232设备异步数据传输。此时dsp作为spi协议中的主设备,发送时钟信号(bclkx)作为max3111的串行时钟输入,发送帧同步脉冲信号(bfsx)作为max3111的片选信号(/cs)。bdx与din 连接作为发送数据线,bdr与dout 连接作为接收数据线。max3111的tx 与tiin连接,rx与r1out连接,以便利用其片内的转换
器实现uart到rs232电平的转换。max3111的中断信号(irq)与dsp的外部中断into相连,其接口电路如图2所示。这样硬件上无需任何其它外围器件,由于异步数据的发送和接收由max3111以硬件方案实现,所以软件编程只需考虑dsp与max3111之间的同步数据通信。
图2 dsp与max3111的接口电路
在spi串行协议中,主设备提供时钟信号并控制数据传输过程,必须对mcbsp初始化并设定适当的工作方式才能保证与max3111的时序相配合,设计中采用mcbsp的时钟停止模式2(clkstp=11 b,clkxp=0) 。
3 tms320vc5402与at89s51单片机的串口通信
dsp主机接口hpi具有强大功能的智能外设,主要用于dsp与其它总线或cpu进行连接。dsp与单片机的接口通常采用hpi来实现,但要外加电平转换,硬件电路较复杂。这里采用c5402通过spi