单片机与PC通信的简化接口

2006-05-07 15:49:54来源: 国外电子元器件

通信的低成本接口的设计方法,并给出了其中的关键参数,通过在实践中检验证明:该接口在对成本和体积有严格要求的系统中有着广泛的应用。

单片机 PC 接口 通信

在单片机系统的设计中,经常遇到需要与PC进行通信的问题。一般单片机都提供有UART接口,而普通PC机也都有1~2个RS-232口,所以,实际使用时经常用RS-232进行单片机与计算机间的通信。在近距离通信中,以零调制三线经济型使用最为广泛。

RS-232标准是广泛使用的串行通信标准,但使用的电平与TTL和MOS电平完全不同,逻辑“0”至少为+3V,逻辑“1”至少为-3V,而单片机系统则使用TTL电平或MOS电平。因此,需要使用接口电路来实现TTL电平或MOS电平与RS-232电平之间的转换。目前已有现成的接口芯片可供选用,价格低一些的如MC地488(将TTL电平转换为RS-232C标准电平)和MC1489(将RS-232标准电平转换为TTL电平),但MC1488需要±12V的供电电压。另外,也有许多使用单一的+5V供电芯片可供选择,如MAX2003,但此类芯睡价格不菲,且需要若干外围元件。在对体积和成本有较严格的要求时,进一步简化接口电路很有必要。

1 一种简单的接口电路

实用中,单片机与PC的通信通常采用半双工通信,这时,可以采用一种较简单的接口电路(如图1所示)。在这种电路中,PC机的RXD上的逻辑高电平(小于-3V)是以“偷电”的方式从本身的TXD端获得。这种电路的工作原理如下:

PC机TXD端的逻辑电平经T1后变为TTL电平或MOS电平。在单片机TXD端为逻辑低电平时,光耦的发光二极管发光,使得晶体管导通。其集电极的VCC(一般为+5V)加在PC机的RXD端;而在单片机TXD端为逻辑高电平时,光耦的发光二极管不发光,晶体管截止。由于PC机的TXD端在空闲时处于逻辑高电平(小于-3V),因此,这个电平便通过电阻R4加到其RXD端。这样,便实现了TTL电平或MOS电平到RS-232电平的转换。但需要注意的是,由于PC机的RXD和RXD端通过电阻接到了一起,因此有时会出现PC机自发自收的情况,这一点需要在编程时加以处理。

2 电阻值的确定

图1电路中,R1、R2的取值范围较大,一般只要使得T1正常工作在开关状态下即可。R3的取值可按下式进行计算:

R3=(Vcc-VF-Vcs)/IF

其中Vcc是工作电源电压,Vcs是单片机TXD端的低电平电压(一般取0.2V),VF是光耦中的发光二极管导通时的正向压降(一般为1.1V左右),IF是其正常工作电流(一般为10mA)。

R4取值的合适与否是本电路的关键。取值过小,可能会在单片机发送逻辑低电平时,使PC机的RXD端电平受自身TXD端的影响太大而导致电压过低,从而达不到逻辑低电平的要求而不能正确接收;取值过大,则会在单片机发送逻辑高电平时,PC机RXD端受其输入电阻的影响而不能将自身TXD端的逻辑电平正确传送过来,这样也不能正确接收。实际上,R4的取值受多种因素的影响,其中包括:光耦中晶体管的特性、R2的值、二极管D的特性、PC机RXD端的输入电阻和输入电平、TXD端的输出电阻和输出电平等。而这些因素中,尤以后两乾的影响为甚。

在PC机系统中,异步通信适配器以INS8250通讯芯片为核心,再配以可进行电平转换的发送器和接收器电路而组成的。不同种类的PC机由于主板设计的不同,其RS-232的特性也有差异,特别是RXD端的输入电阻和TXD端的输出电阻相去甚远。因此,若要用计算的方法得到R4的取值,需要了解各种主板的电路设计,这样非常麻烦。但是对各种常见品牌计算机的RS-232口的特性进行测试却是相对简便的。笔者在各种常见品牌的近百台计算机上进行了测试,得到了可以在各种计算机上可正常使用的R4值,具体取值如表1所列。

表1 PC与单片机通信情况和R4值的关系

机   型 联想500 同创100 东海550 兼容机300 PHILIPS350
R4值  X1   X2  X3  X1   X2  X3  X1   X2  X3  X1   X2  X3  X1   X2  X3
5.6kΩ  1    1    0  1    1    0  1    1    0  1    1    0  1    1    0
10kΩ  1    1    0  1    1    0  1    1    0  1    1    0  1    1    0
11kΩ  1    1    0  1    1    0  1    1    0  1    1    0  1    1    0
12.2kΩ  1    1    1  1    1    1  1    1    1  1    1    1  1    1    1
15.6kΩ  1    1    1  1    1    1  1    1    1  1    1    1  1    1    1
20kΩ  1    1    1  1    1    1  1    1    1  1    1    1  1    1    1
21kΩ  0    1    1  0    1    1  0    1    1  0    1    1  0    1    1
22kΩ  0    1    1  0    1    1  0    1    1  0    1    1  0    1    1
30kΩ  0    1    1  0    1    1  0    1    1  0    1    1  0    1    1
56kΩ  0    1    1  0    1    1  0    1    1  0    1    1  0    1    1
77kΩ  0    1    1  0    1    1  0    1    1  0    1    1  0    1    1
100kΩ  0    1    1  0    1    1  0    1    1  0    1    1  0    1    1
131kΩ  0    1    1  0    1    1  0    1    1  0    1    1  0    1    1
150kΩ  0    1    1  0    1    1  0    1    1  0    1    1  0    1    1
200kΩ  0    1    1  0    1    1  0    1    1  0    1    1  0    1    1
240kΩ  0    1    1  0    1    1  0    1    1  0    1    1  0    1    1
280kΩ  0    1    1  0    1    1  0    1    0  1    1    1   1    1    1
300kΩ  0    1    1  0    1    1  0    1    0  1    1    0  1    1    1
开路  0    1    1  0    1    0  0    1    0  0    1    0  0    1    0

测试中,R2取10kΩ,D采用IN4148,光耦采用TIL117,其发光二极管的工作电流为10mA(推荐值)。改变R4的取值,检查PC能否和单片机系统进行通信,以及PC机在发送数据时是否被自己接到。实验发现,常用PC机的RS-232口根据外部特性可以分为几大类,现将每一类取一例示于表1中。表中的X1X2X3含义如下:

X1=0表示PC机发送数据时不能通过R4自收。

=1表示PC机发送数据进可以通过R4自收。

X2=0表示PC机发送的数据不能被单片机接收。

=1表示PC机发送的数据可以被单片机接收。

X3=0表示单片机发送的数据不能被PC机接收。

=1表示单片机发送的数据可以被PC机接收。

从表1中可以看出,尽管各种主板特性不同,但都有一段性相同的范围,即R4取12.2kΩ~20kΩ时,PC可以和单片机正常通信,且PC发送的数据也可以被它自己接收。这样,在设计电路时可以把R4取成15kΩ,从而使得该以与各种PC进行通信。但需要注意是,当PC由发送转变为接收时,需要清除自发自收的数据。如果PC的通信程序是用汇编或C语言编写的,只需假读一次以清空接收缓冲器,或者复位线路状态寄存器的D0位即可。如果PC的通信程序是用WB或VF编写,且使用了通信控件,那么刚才发送的全部内容都会进入接收缓冲区,这样就需要根据发送的字节数将接收缓冲区中前面相应的内容清除。

3 电路的进一步简化

如果想进一步简化电路,则可用三极管替代光电耦合器,该简化接口电路见图2所示。实验证明,在R4取10kΩ,T2采9015,R3取15kΩ时,该电路仍可正常工作。

4 结论

本文给出的简单接口电路具有成本低和占用印制版面积小的优点。通过实验测定的元件取值具有广泛的适用性。上述电路在笔者开发的手持式通用秒表器中得到应用。实际应用中与各种品牌近千台PC的通信皆正确,从而证明了本设计的可靠性。

关键字:单片机  通信  简化

编辑: 引用地址:http://www.eeworld.com.cn/gykz/GYTX/200605/372.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
单片机
通信
简化

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved