基于AT89C2051的串口扩展器设计

分享到:

0 引言
银行交易操作中柜员使用的终端要分别和银行数据库、磁卡读写机、密码小键盘、打印机
等联络,数据通信往往使用串行口。终端要连接得设备很多,串行口往往不够用。有了串口扩
展器,就能很好解决这个问题,如图 1 所示,本文介绍以 ATMEL89C2051 为 MCU 的串行扩
展器的设计思路、硬件结构和部分程序模块。
 

 

1 串口扩展器结构框图
串口扩展器由 8 位单片机 ATMEL89C2051、双 4 通道多路转换器 4052、双路电平转换器
MAX232 和发光二极管等组成,结构框图如图 2 虚线框所示。
 

 

 

双 4 通道多路转换器 4052 有一对四电子开关,(XY,X0Y0~X3Y3)分别定义为 A 口、B
口、C 口和 K 口,公共口(XY)连终端串口;ATMEL89C2051 监视终端发出的信息,一旦收
到终端发出的串口选择命令,由 P10 和 P11 口连通对应串口并点亮发光二极管作指示;双路
电平转换器 MAX232 将 TTL 电平转换成 RS232 电平,或反之;串口选择后,终端和对应设备
就可通讯联络,进行工作。

 

 
2 串口选择命令
串口选择命令对用户公开,由表 1 所示。
 

终端可把串口选择命令和其它操作命令组合在一起发送,提高效率。例如柜员欲刷卡,磁
卡读写机接在 B 口上,磁卡双道读命令字符串为“ESC B ]”。终端可连续发送“ESC % B ESC
B ]”字符串命令,当 ATMEL89C2051 收到“ESC % B”信息时,(实际全部字符串都收到)
立即接通 B 口,断开其它口,因为该操作速度非常快,接在 B 口上的磁卡读写机能即时收到
“ESC B ]”命令字符串。如串行扩展器原先接 B 口,磁卡读写机收到“ESC % B”串口选择
命令字符串后会将它滤掉。
                                                                                        注:命令字符串中无空格的,这里为说明而用。
 

 

3 系统软件设计
出于程序运行效率和简化考虑,整个程序分为初始化、串行接收中断服务程序和串口选择三个模块,其实
现的编程软件可用 C51 或ASM 等语言编写,程序框图如图 3 所示。
3.1 初始化模块
初始化模块设定串行接收中断模设、波特率,定义命令队列缓冲区地址及指针,确定 B 口为默认选择口。

3.2 串行接收中断服务程序
串行接收中断服务程序仅接收终端发出的命令字符串,采用循环队列方式,收到一个字符,修改命令队列
缓冲区地址指针。
3.3 串口选择模块串口选择模块处理命令队列缓冲区中的信息,判断
是否有串口选择命令,如有作相应的处理;如无,则滤掉非串口选择命令等信息。

                                                  图3

4 结束语
串口扩展器采用侦听终端发出的信息,从中选出串口选择命令,进行相应操作。若遇到
某些设备波特率不一致, 如磁卡机波特率为 9600,密码小键盘为 2400)可将 ATMEL89C2051
作为中转站,CPU 以固定波特率(一般为 9600)与终端通信,遇到终端欲与密码小键盘通信,
CPU 将收到的命令字符串以密码小键盘的波特率转发给密码小键盘,再将密码小键盘发来的
数据以固定波特率返回给终端,这只需将硬件和软件稍作些修改即可。
本文作者创新点:研制开发串口扩展器的硬件和软件系统。硬件结构小巧灵拢、结构简单、
使用单电源,成本低。软件系统程序短、速度快。解决了不同波特率设备连接。各端口使用
DB25 或 DB9 的接插件实现 RS-232C 标准接口的连接。该系统在银行部门完全获得成功,并
且得到较广泛的应用。
 

继续阅读
轻松编程实现无线遥控

电路功能无线收发组件中,315MHz收发组件是常用的一种,若要自制则相对要困难些。本文所介绍的无线收发电路采用AT89C2051单片机作为编码和解码电路的核心器件,接收端采用1602字符液晶显示器显

基于AT89C2051的串口扩展器设计

0 引言银行交易操作中柜员使用的终端要分别和银行数据库、磁卡读写机、密码小键盘、打印机等联络,数据通信往往使用串行口。终端要连接得设备很多,串行口往往不够用。有了串口扩展器,就能很好解决这个问题,如图

基于AT89C2051的红外遥控LED电子钟设计

一.引言 自制LED电子钟在很多电子报刊杂志上都可以见到,但大多数在断电后都要重新设置时间等参数,给使用带来很多不便。也有用后备电池作为备用电源的,但往往体积较大。本文介绍的LED电子钟克服了以往的

基于AT89C2051的楼宇直按可视对讲门铃系统的设计

0 引言城市居民楼单元入口大多数是敞开着的,这方便了居民的进出,但同时也给居民的生活带来了诸多的不便。例如,由于任何人都可随意进入居民楼道内,因此在居民楼道内我们随处能看到贴于墙上或楼梯台阶上的各类纸

基于AT89C2051单片机的晶闸管触发电路的设计与实现

介绍了一种基于AT89C2051单片机为核心的晶闸管触发电路,并详细阐述了其软硬件结构,具有高集成度、智能化、体积小、安全、迅速、可靠稳定等优点,今后必将被广泛应用。

©2019 Microchip Corporation
facebook google plus twitter linkedin youku weibo rss