DSP芯片基于SC16C750B的RS232接口设计
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兼容。其他一些特点不再赘述。
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语言写成。
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之间的操作方式采用中断操作方式,中断方式相
RS232接口 相关文章:
- 一分钟看懂RS232接口与RS485的不同之处(09-20)
- LT3751如何使高压电容器充电变得简单(08-12)
- 三路输出LED驱动器可驱动共阳极LED串(08-17)
- 浪涌抑制器IC简化了危险环境中电子设备的本质安全势垒设计(08-19)
- 严酷的汽车环境要求高性能电源转换(08-17)
- 适用于工业能源采集的技术 (08-10)
- 妤傛ḿ楠囩亸鍕暥瀹搞儳鈻肩敮鍫濆悋閹存劕鐓跨拋顓熸殌缁嬪顨滅憗锟�
閸忋劍鏌熸担宥咁劅娑旂姴鐨犳0鎴滅瑩娑撴氨鐓$拠鍡礉閹绘劕宕岄惍鏂垮絺瀹搞儰缍旈懗钘夊閿涘苯濮幃銊ユ彥闁喐鍨氶梹澶歌礋娴兼ḿ顫呴惃鍕殸妫版垵浼愮粙瀣瑎...
- 娑擃厾楠囩亸鍕暥瀹搞儳鈻肩敮鍫濆悋閹存劕鐓跨拋顓熸殌缁嬪顨滅憗锟�
缁箖鈧拷30婢舵岸妫亸鍕暥閸╃顔勭拠鍓р柤閿涘奔绗撶€硅埖宸跨拠鎾呯礉閸斺晛顒熼崨妯烘彥闁喕鎻崚棰佺娑擃亜鎮庨弽鐓庣殸妫版垵浼愮粙瀣瑎閻ㄥ嫯顩﹀Ч锟�...
- Agilent ADS 閺佹瑥顒熼崺纭咁唲鐠囧墽鈻兼總妤勵棅
娑撴挸顔嶉幒鍫n嚦閿涘苯鍙忛棃銏n唹鐟欘枃DS閸氬嫮顫掗崝鐔诲厴閸滃苯浼愮粙瀣安閻㈩煉绱遍崝鈺傚亶閻€劍娓堕惌顓犳畱閺冨爼妫跨€涳缚绱癆DS...
- HFSS鐎涳缚绡勯崺纭咁唲鐠囧墽鈻兼總妤勵棅
鐠у嫭绻佹稉鎾愁啀閹哄牐顕抽敍灞藉弿闂堛垼顔夐幒鍦欶SS閻ㄥ嫬濮涢懗钘夋嫲鎼存梻鏁ら敍灞藉簻閸斺晜鍋嶉崗銊╂桨缁崵绮洪崷鏉款劅娑旂姵甯夐幓顡嶧SS...
- CST瀵邦喗灏濆銉ょ稊鐎广倕鐓跨拋顓熸殌缁嬪顨滅憗锟�
閺夊孩妲戝ú瀣╁瘜鐠佽绱濋崗銊╂桨鐠佸弶宸緾ST閸氬嫰銆嶉崝鐔诲厴閸滃苯浼愮粙瀣安閻㈩煉绱濋崝鈺傚亶韫囶偊鈧喕鍤滅€涳附甯夐幓顡塖T鐠佹崘顓告惔鏃傛暏...
- 鐏忓嫰顣堕崺铏诡攨閸╃顔勭拠鍓р柤
娑撳洣绗€妤傛ɑ銈奸獮鍐叉勾鐠у嚖绱濇潻娆庣昂鐠囧墽鈻兼稉杞扮稑閸︺劌鐨犳0鎴炲Η閺堫垶顣崺鐔枫亣鐏炴洘瀚甸懘姘剧礉閹垫挷绗呴崸姘杽閻ㄥ嫪绗撴稉姘唨绾偓...
- 瀵邦喗灏濈亸鍕暥濞村鍣洪幙宥勭稊閸╃顔勭拠鍓р柤閸氬牓娉�
鐠愵厺鎷遍崥鍫ユ肠閺囨潙鐤勯幆鐙呯礉缂冩垵鍨庨妴渚€顣剁拫鍙樺崕閵嗕胶銇氬▔銏犳珤閵嗕椒淇婇崣閿嬬爱閿涘本鍨滅憰浣圭壉閺嶉绨块柅锟�...