基于DSP芯片实现异步串行通信系统的软硬件设计

作者:齐崇英,陈西宏,苏红潮
1 引言
tms320c3x dsp是目前国内应用比较广泛的dsp芯片之一,它提供了可与外部串行设备通信的串行接口,支持8/16/24/32位数据交换,为设计a/d、d/a接口电路提供了很大的灵活性。然而,当dsp系统和pc机进行通信时,如何设计合理的接口电路和通信软件,将dsp处理后的数据实时准确地传输给pc机,同时使pc机实时有效地控制dsp,成为dsp系统设计中的重要一环。本文采用异步串行通信(universal asychronous receiverand transmitter,uart),较好地解决了dsp和pc机通信这一问题。
2 tms320c3x简介
tms320c3x(以下简称c3x)是ti(texasinstruments)公司生产的第三代产品,也是第一代浮点dsp芯片,包括c30、c31、c32和c33四种,是tms320系列中性能价格比较高的一种浮点dsp芯片,具有32位的浮点精度,总共有三套总线,即程序总线、数据总线和dma总线,取指、读写数据以及dma操作可并行进行,可以寻址16m字的空间。其中c31是c30的简化和改进型,它去掉了扩展总线和一个串口,降低了芯片的成本,并且在硬件上增加了一个非常有用的功能,即程序引导功能(bootloader),使其程序可以从低速eprom、prom或串行口装入到系统的高速ram中全速运行 。c32和c33是c31的进一步简化和改进,其中c32片内ram减为512字,以降低成本。c33片内ram为34k ,需3.3v电源。
3 dsp系统结构框图
图1为整个dsp系统的硬件框图。
其中,tlc32044是ti公司生产的话带模数接口芯片(简称aic)tlc32040系列中的一种,它集a/d、d/a于一体,具有两个模拟输入口和一个模拟输出口,最高采样频率为19.2khz。mc6850为motorola公司生产的异步串行接口芯片(uart),它可以进行8位或9位数据的发送和接收,并可选择÷1、÷16、÷64三种不同的时钟模式。dsp通过对mc6850的控制寄存器初始化来设置异步通信协议,然后mc6850对dsp的并行数据和pc机的串行数据按照协议进行并串转换。max232芯片进行ttl电平和rs-232电平之间的转换。外部信号经a/d转换进入dsp,dsp对其进行处理后,经uart送入pc机,由pc机对数据进行处理和存储。同时,pc机将控制信号或待发数据经uart送入dsp,对dsp实施控制或经dsp处理后送入d/a,经低通滤波后还原为模拟信号。
4 dsp系统通信软件
传输时,发送双方应按照共同遵循的协议进行初始化。通信协议采用起止式异步通信协议,下面分别是dsp对mc6850和上层pc机软件对串行口初始化操作的源程序代码。
4.1 mc6850异步串口通信程序设计
加电之后,6850处于闭锁状态,以避免输出错误的发送。使用前,必须通过程序将控制寄存器的cr0和cr1置“1”,以进行主复位,使其从闭锁状态释放。然后就可以对控制寄存器编程,以确定6850的时钟分频、数据格式和发送与接收控制功能等。以下是在code composer集成开发环境下,用c语言实现对6850的初始化设置和发送数据程序。
4.2 pc机通信程序设计
在vc++6.0环境下,利用pc机进行串口通信的常用方法有两种:(1)调用windows api(application program interface)函数;(2)使用activex的mscomm控件。第一种方法需声明及调用许多api函数,十分烦琐。故本文采用第二种方法。
pc机通信的具体实现过程如下:
第一步,启动vc++6.0,新建一个基于对话框的应用程序txrx。
第二步,在对话框中插入串口控件,增加新的静态文本、编辑框和按钮控件,并为它们添加相应的变量。其属性如下:
其次,需要初始化串口参数,在oninitidialog()函数中todo语句后加入以下代码:
//先预读缓冲区以清除残留数据
接着,为发送按钮idc-trsmitt添加消息处理函数ontransmitt(),内容如下:
下面举例说明如何在transmitt()函数中实现发送一帧数据。
5 结束语
以上是dsp与pc机之间异步串行通信的软硬件解决方案,目前此方案已应用于短波通信智能终端数据传输系统中,运行稳定,通信性能良好,较好地解决了dsp和pc机的通信问题。


Windows实时运动控制软核(二):LOCAL高速接口测试之Qt
安全光幕和安全光栅的区别是什么呢?主要应用在什么行业?
以“网融万物 智向未来”努力形成以建促用的5G良性发展模式
为什么大多数加密货币没有存在的必要
MAX1946应用电路
基于DSP芯片实现异步串行通信系统的软硬件设计
前百度首席科学家吴恩达出任Woebot公司新任董事长,随即推出一款聊天机器人
业内看好台积电领先三星和英特尔率先推出2nm制程
双绞线传输器横纹干扰模拟测试实验和解决办法
如何走出摩尔定律困境?摩尔定律领域的困境与研究方向详细概述
在ISE中直接调用chipscope进行在线逻辑分析(1)
小米7什么时候上市?小米7大曝光,抢不到小米6怎么办,别急!小米7坐着骁龙845来了
直接变频接收机可实现多标准/多频段接收
二氧化碳传感器在汽车空调控制系统中的应用
怎样判断UVLED固化光源的好坏
Upgrade panel-meter range and
从按键到语音:家电设备交互的演进之旅
人工智能技术大显身手,助力抗击新冠肺炎疫情
如何实现NB-IoT的低功耗,最主要的原因是什么
汇芯通信曾学忠的全新5G项目正式浮出了水面