DSP芯片基于SC16C750B的RS232接口设计

发布者:笑脸猫最新更新时间:2012-04-11 来源: dzsc关键字:DSP  SC16C750B  RS232接口 手机看文章 扫描二维码
随时随地手机看文章
引言

美国TI(Texas Instruments)公司的系列DSP芯片采用哈佛结构、流水线操作、专用硬件乘法器、快速DSP指令,使其在数字信号处理,通信和工业自动化等领域得到广泛应用[1]。TMS320C32是32位浮点处理器。它除了上述特点外,还具有增强型存储器接口、灵活的启动装载(boot loader)、可重定位的中断矢量表、灵活的中断方式和其他外设[2];其通信功能只包括片上集成的一个串口,但在设计中此串口一般被串行A/D或D/A芯片占用,或者被用于与另一片DSP芯片在“握手模式”(handshake mode)下直接连接。[3]

虽然TMS320C32串口有多种工作方式[3,4]。但通过串口相应的寄存器并不能直接配置出符合RS232标准的通信串口,而RS通信串口是自动化控制设备的一种基本通信方式,如PC机或其他各种基于微处理器的控制装置。RS232标准在1991年被标准化组织EIA(Electronic Industries Association)重命名为EIA232标准[5],是一种异步串行通信标准,包括机械连接、信号功能、电压特性和通信协议等几个方面的规定。

采用1片SC16C750B UART芯片[6]来完成TMS320C32的RS232串口的设计。此UART最高的串行数据速率可达3Mbps,引脚与TL16C750兼容,并且具有64字节接收和发送FIFOs以及自动硬件流量功能。这些特征使串口通信更加高效、可靠。

1 TMS320C32的RS232串口硬件设计

在基于微处理器开发的自动控制装置设计中,一般并不需要串行通信的长距离传输,故普遍采用“零-Modem”方式(Null-Modem or Zero-Modem)实现一对异步串口连接。图1为一种“零-Modem”连接方式(具体信号的意义可见RS232标准)。

由于RS232标准的异步通信规约数据帧都带起始位和停止位,并且SC16C750B UART芯片具有自动硬件流量控制功能,因此可以进一步忽略与Modem相关的控制信号(DTR、DSR、CD、RTS、CTS),简化连接。

1.1 SC16C7550B UART芯片

SC16C750B为异步串行通信芯片[6],带标准Modem接口,它具有以下主要特点:

(1)标准异步错误位和帧格式位(起始位、停止位、奇偶校验位),并且帧格式可编程;

(2)软件可选择波特率;

(3)发送和接收各64字节FIFOs;

(4)发送、接收、线路状态等中断可独立控制,并且中断优先级可额编程;

(5)独立的接收时钟。

(6)在5V工作电压下,发送或接收速率可达5Mbps;

(7)自动硬件流量控制

(8)4种可选择接收中断级别;

(9)标准Modem接口;

(10)引脚与ST16C450/550、TL16C450/550、PC16C450/550,软件与SC16C750及TL16C750兼容。其他一些特点不再赘述。[page]

SC16C750B主要引脚的功能如表1所列,更具体的资料可见文献 [6] 。

 

1.2 硬件原理

硬件设计的总体思路:

(1)UART的地址被分配到TMS320C32的IOSTRB外部存储器空间,片选信号对应的地址即为UART的基地址。

(2)RXRDY、TXRDY分别作为接收、发送中断信号,分别接C32的中断外部引脚INT0、INT1、并且C32的中断触发方式设为低电平触发。

(3)UART的TX、RX引脚均为CMOS电平,而RS232采用的是“负逻辑电平”。本设计采用1片MAX3232[7]完成它们之间的电平转换和驱动,其数据传输速率最高达1Mbps。

(4)使接收部分和发送部分的波特率相同,此时RCLK接BAUDOUT引脚。

(5)外部参考时钟频率为1.8432MHz。

1.3 UART扩展RS232串口原理

依据上面的整体思路设计出硬件电路,如图2所示。

图2中的端口信号,如数据和地址总线、复位信号、中断信号,完成与TMS320C32之间的连接。本设计中片选信号对应TMS320C32的IOSTRB空间中的0x810100h,即SC16C750B的内部寄存器的基地址。

2 TMS320C32的RS232串口软件功能设计

串口工作模式控制和数据收发都是通过TMS320C32对UART内部相关寄存器的读写操作来完成的。因此,首先分析一下SC16C750B片内寄存器的功能,然后确定在本设计中SC16C750B的工作模式,并且给出该串口的初始化程序、中断发送程序和中断接收程序。程序以C语言写成。 [page]

2.1 SC16C750B片内寄存器

表2给出SC16C750B内部寄存器的功能描述。寄存器各位意义可参见该芯片的数据手册。

2.2 程序设计

首先初始化编程,以确定TMS320C32与SC16C750B之间的操作方式、数据传输帧格式、SC16C750B自身的工作模式、数据传输波特率的设置等工作。设定:

(1)SC16C750B工作DMA模式0(DMA mode 0)。在此模式下,每当发送寄存器THR为空,TXRDY信号会降为逻辑低电平。只要接收寄存器RHR被装载了一个字符,RXRDY会立刻降为逻辑低电平。

(2)TMS320C32与SC16C750B UART之间的操作方式采用中断操作方式,中断方式相对于查询方式可以提高TMS3320C32的工作效率。TMS320C32的INT0中断引脚接UART的RXRDY信号,INT1接TXRDY信号。这样,由INT0、INT1对应的中断服务例程完成数据的接收和发送。

(3)数据传输帧格式:数据字长8位、2位停止位、偶校验。

(4)设置波特率。

在RS232电平逻辑中,串行数据速率(serial data rate)就在等于波特率(baud rate)。如果外部时钟频率(XTAL1 clock frequency)为1.8432MHz、波特率19 200bps时,对应的波特率除数(divisor)为6。

用C语言开发[8]TMS320C32的串口通信程序。初始化程序如下:

#include<stdlib.h>

#include<ioports.h> [page]

//声明SC16C750B寄存器的结构

typedef struct{

uNSigned RHR;//接收保持寄存器

unsigned THR;//发送保持寄存器

unsigned IER;//中断使能寄存器

unsigned FCR;//FIFO控制寄存器

unsigned ISR;//中断服务状态寄存器

unsigned LCR;//线路控制寄存器

unsigned MCR;//Modem控制寄存器

unsigned LSR;//线路状态寄存器

unsigned MSR;//Modem状态寄存器

unsigned SPR;//便笺寄存器

unsigned DLL;//波特率除数低字节锁存器

unsigned DLM;//波特率除数高字节锁存器

}SerialPort;

//SC16C750B的寄存器基地址为0x810100h

serialPort sp={

0x810100h,0x810100h,0x810101h,

0x810102h,0x810102h,0x810103h,

0x810104h,0x810105h,0x810106h,

0x810107h,0x810100h,0x810101h,

};

void main(void){ …

//波特率设置

outport(sp.LCR,0x80); //LCR[7]=0

outport(sp.DLL,0x06); //波特率19 200bps

outport(sp.DLM,0x00);

outport(sp.LCR,0x1F); //数据帧格式

outport(sp.FCR,0xA1); //DMA mode 0 outport(sp.IER,0x07); //中断使能


}

//INT0中断服务例程——数据接收

unsigned char recvdata;

void c_int01(void){

recvdata=inport(sp,RHR);


}

//INT1中断服务例程——数据发送

void c_int02(void){

outport(sp.THR,transdata);


}

3 结论

TMS320C32是一种高性价比的32位浮点DSP芯片,但其通信功能相对较弱。采用SC16C750B UART芯片扩展TMS320C32的RS232串行口,用于实际温度和压力测控装置中,经验证,数据通信可靠。

关键字:DSP  SC16C750B  RS232接口 引用地址:DSP芯片基于SC16C750B的RS232接口设计

上一篇:基于I2C总线的CMOS图像传感器接口电路设计
下一篇:基于C8051F040的CAN总线智能节点的设计

推荐阅读最新更新时间:2024-05-02 22:00

基于DSP和专用接口芯片的USB实现方案
   引言   各种 测量仪器 检测到的数据常常需要传送到PC机进行数据处理与存档,以充分利用PC机丰富的硬件和软件资源,获得更为完善和强大的数据处理、分析和存储能力。传统PC平台的数据采集卡受PC机插槽数目、地址、中断等硬件和软件资源的限制,可扩展性较差,安装拆卸困难,成本高。   自1994年11月提出通用串行总线(USB)以来,USB以其传输速率高、支持热插拔、易于扩展的突出优势,发展速度惊人,迅速席卷电子产品世界。在市场需求的强力驱动下,从1998年开始,USB接口进入测量仪器领域,并逐步被许多著名仪器公司接纳。在测量仪器中扩展USB接口已经成为一种发展趋势。针对不同的测量仪器,寻求一种普遍适用的USB接口解决方案,
[嵌入式]
基于<font color='red'>DSP</font>和专用<font color='red'>接口</font>芯片的USB实现方案
RS232接口的电缆
由于RS-232实现中的各种不同和矛盾,要决定使用哪个合适的电缆来连接两个通信 设备 不是一件非常容易的事。用同一种类型的连接器来连接DCE和DTE 设备 需要直接的电缆还要有合适的终点。凹凸转换器被用于电缆和连接器间解决性别失配问题。用不同连接器来连接设备需要根据上表,用不同的电缆来连接相应的管脚。电缆一端9管脚,另一端25管脚是很普通的,生产以RJ-45型为连接器的设备厂家通常都会提供DB-25 或者DB-9型接头的电缆(有时候则是接头可交换的电缆,可供多种设备工作)。 连接两个DTE设备需要一个虚拟调制解调器来充当DCE交换相应的信号(TD-RD, DTR-DSR, and RTS-CTS)。这个可以由单独的设备加上两根电缆或
[嵌入式]
DSP56800开发软件包SDK使用经验点滴
Motorola的SDK(Soft wareDevelopment Kit)是从DSP56800的Metrowerks CodeWarrior开发工具中发展而来的,SDK是一个API(Application Prograrmming Inter—face)、库、服务、规则的集合体。它为DSP56800系列芯片的开发应用提供了一个很好的平台,使得开发者可以脱离硬件的束缚,在软件仿真的环境下进行开发,缩短产品进入市场的周期。SDK使得开发者对设备的操作就象对文件的操作一样,非常方便。 下面是笔者在开发应用DSP56F807芯片过程中使用SDK对其开发操作的一点经验。 1 对SDK中API函数的总体认识 使用API函数对片上集
[嵌入式]
DSP56F807在交流随动系统中的应用
1 随动系统的组成及功能简介 交流随动系统由交流电机、交流伺服驱动器、随动控制器、编码器(旋转变压器)、减速器等部分组成。如图1所示。 随动控制器是由DSP芯片为核心扩展而成的。它可以接收上位机传送的给定位置信息与编码器采集的实际位置信息,通过前馈PID控制算法,输出模拟电压量送入驱动器中,实现对负载运动状态的控制。控制器可以采集随动转塔的锁定信号和限位信号,并控制随动系统的工作状态。 驱动器是专为交流电机设计的,内部嵌有交流电机控制算法、与交流电机编码器构成速度环和电流环,可以利用其RS-232串口对其内部参数进行设置,比如最大加速度的设置以保证系统的响应特性;还可以接收驱动器使能信号,当使能信号为高时,控制电机锁紧,当使
[嵌入式]
<font color='red'>DSP</font>56F807在交流随动系统中的应用
一种基于高速DSP的图像处理应用平台的设计
1引言 完成某一特定任务的图像处理系统,其硬件方案大体上有三种:使用通用计算机 、使用ASIC(Application Specific Integrated Circuit) 和使用DSP(Digital Signal Processor) 。使用通用计算机的方案可以应用现有的硬件设备,选择合适的操作系统,只需要进行应用程序的开发。其优点在于开发周期短,费用较低,而且产品易于维护和升级;缺点是运算速度受到限制,对于算法的运算量和复杂度很高的应用场合,难以达到实时性要求。该方案有二种应用场合:算法开发初中期阶段及一些实时性要求不高的领域。使用ASIC的方案中,所有的运算都由硬件实现,因此实时性会非常好,但硬件的设计是一
[嵌入式]
一种基于高速<font color='red'>DSP</font>的图像处理应用平台的设计
基于DSP和PCI总线的通信数据采集系统
    摘要: 介绍一种基于DSP和PCI总线的移动通信数据采集系统。提出了一种双映射方式,成功地解决了DSP的主机通信接口(host port interface,简称HPI口)和PCI9052之间的通信连接。     关键词: 数字信号处理器 数据采集 PCI总线 随着移动通信突飞猛进的发展,移动通信的数据业务量急剧上升,监控大容量的移动数据业务成了电信运营商刻不容缓的需求。而移动通信数据的传输一般都是基于E1链路。因此从E1链路上采集通信数据成了移动数据业务监控最基础的一部分。 数字信号处理器能够高速地处理数据并具有强大的数字吞吐能力,在数据采集领域获得了广播的应用。而PCI总线也因为极高
[工业控制]
RS232串口到RS485转换接口电路
下图是使用MAX485芯片设计了一个RS232到RS485的转换接口电路图。
[嵌入式]
基于DSP的汽车内噪声主动控制系统的设计
噪声主动控制基本思想是由德国物理学家Paul Lueg于1936年发明“电子消声器”时首次提出的。噪声主动控制技术相对传统的被动控制,具有对中、低频段噪声控制效果明显、系统轻巧、实时性强等优点,具有潜在的工程应用价值。 噪声控制为实时控制,需要较大的计算量,普通的单片机难以实现。20世纪80年代,数字信号处理(DSP)芯片的问世为信号的实时控制开辟了广阔的发展空间。随着芯片技术的不断成熟和发展,DSP已成为现代智能控制器的核心部件。 本文采用DSP芯片TMS320F2812设计了既可以脱机独立自主运行又可以通过USB接口在线仿真的智能控制器,并以该控制器为核心设计了汽车内部噪声主动智能控制系统。 智能控制系统的电路设计
[嵌入式]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

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

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