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 电平,或反之;串口选择后,终端和对应设备就可通讯联络,进行工作。
[page]
2 串口选择命令
串口选择命令对用户公开,由表 1 所示。
终端可把串口选择命令和其它操作命令组合在一起发送,提高效率。例如柜员欲刷卡,磁卡读写机接在 B 口上,磁卡双道读命令字符串为“ESC B ]”。终端可连续发送“ESC % B ESCB ]”字符串命令,当 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 标准接口的连接。该系统在银行部门完全获得成功,并且得到较广泛的应用。
关键字:AT89C2051 串口扩展器 RS-232
引用地址:
基于AT89C2051的串口扩展器设计
推荐阅读最新更新时间:2024-03-16 13:28
基于AT89C2051单片机的超声波理疗仪的构成原理
0 引言 目前国内外的多数超声治疗仪(理疗型)普遍都是以连续正弦波(1~3 MHz)或脉冲正弦波(低频调制100 kHz左右)的方式进行工作,其输出声强≤3.0 W/cm2,所存在的问题是超声波主要作用于皮肤、肌肉和结缔组织,发射波形峰值高、穿透力差等,对较深病灶点的治疗效果不明显。因此,治疗和促进肌肉恢复和骨骼愈合需要很长的时间。本设计的理疗仪能产生波形峰值低、穿透力强的特定超声波能量,可以更加深层地作用于肌肉骨骼上,起到加速愈合的作用。本设计使用电路模块化的设计思路,并结合实际电路设计了一种简单适用的多参数超声波治疗仪。目前,该设计在国内外无类似的产品报道,产品设计原理涉及许多关于超声波对骨伤治疗的最前沿的研究成果和报道。 1
[单片机]
基于单片机的数字电容表设计
设计任务 设计并制作一个数字电容表,系统实现的功能及要求如下: (1)设计的电容表可测量容量小于2μF的电容。 (2)设计的电容表采用3位半数字显示,最大显示值为1 999。 (3)设计的电容表读数单位统一采用nF,量程分4档,实际电容值为读数乘以相应的倍率。 2 方案论证 2.1 电路方案 (1)方案一:基本电路搭建 用基本电路来实现数字显示的电容表,电路结构复杂,故障系数大,不易调试,误差也较大。 (2)方案二:单片机编程 用单片机设计电路,由于使用软硬件结合的方式,所以电路结构简单、调试也相对方便。与第一种方案比较优点是非常明显的。 2.2 显示方案
[单片机]
RS-232、RS-422与RS-485标准及应用
一、RS-232、RS-422与RS-485的由来 RS -232、RS-422与RS-485都是串行数据接口标准,最初都是由 电子 工业协会(EIA)制订并发布的,RS-232在1962年发布,命名为 EIA-232-E,作为工业标准,以保证不同厂家产品之间的兼容。RS-422由RS-232发展而来,它是为弥补RS-232之不足而提出的。为改进 RS-232通信距离短、速率低的缺点,RS-422定义了一种平衡通信接口,将传输速率提高到10Mb/s,传输距离延长到4000英尺(速率低于 100kb/s时),并允许在一条平衡总线上连接最多10个接收器。RS-422是一种单机发送、多机接收的单向、平衡传输规范,被命名为TIA/EIA
[嵌入式]
HIN2xxE系列RS-232收发器的原理及应用
1 概述 Intersil公司的HIN2xxE系列RS-232发送器/接收器包括HIN202E、HIN206E、HIN207E、HIN208E、HIN211E、HIN213E、HIN232E等,符合美国电子工业协会(EIA)的高速RS-232C与V.28规范,特别适合那些不能提供12V电源的应用场合。该系列产品采用+5V单电源供电,片内的电荷泵电压转换器可以利用外接5V电源产生+10V与-10V电压。收送器的输出与接收器的输入具有ESD(静电放电)保护功能,可以承受15kV的静电放电。发送器的输入与TTL/CMOS兼容,具有限速输出功能,接收器可接收30V的输入电压,输入阻抗为3kΩ~7kΩ,具有滞后特性,可以极大地提高噪声抑制功能
[嵌入式]
基于DS18B20和AT89C2051设计的分布式温度测量系统
温度监控是工业生产中的一个重要环节,尤其在环境 恶劣和复杂的工业现场,温度监控起着不可替代的作用。但是由于目前许多温度监控系统所采用的温度传感器的输出是一个变化的模拟电压量,不能与计算机采集系统直 接接口,需要进行采集、处理与变换,才能送入基于计算机 的监控系统。这就使得对于多点分布式的温度测量带来 了不便。随着计算机、通信、网络控制等技术的发展,工业测控系统已成为许多工业企业中非常重要的组成部分。加之现场总线技术的日趋成熟及数字温度传感器的出现,使得现场总线技术和数字温度传感器更多的用于工业监控系统中来,从而使得工业监控系统的功能更加强大,监控的范围更加的广泛。同时提高温度的测量的精度也是重要的目标之一。 因此本文设计的系统
[单片机]
基于AT89C2051单片机的数字电容表设计
设计任务 设计并制作一个数字电容表,系统实现的功能及要求如下: (1)设计的电容表可测量容量小于2μF的电容。 (2)设计的电容表采用3位半数字显示,最大显示值为1 999。 (3)设计的电容表读数单位统一采用nF,量程分4档,实际电容值为读数乘以相应的倍率。 2 方案论证 2.1 电路方案 (1)方案一:基本电路搭建 用基本电路来实现数字显示的电容表,电路结构复杂,故障系数大,不易调试,误差也较大。 (2)方案二:单片机编程 用单片机设计电路,由于使用软硬件结合的方式,所以电路结构简单、调试也相对方便。与第一种方案比较优点是非常明显的。 2.2 显示方案 (1)
[单片机]
实现RS-232/485的高速远程传输
要延长RS-232的距离可以将其转换为RS-485,RS-485可以在9600bps波特率时传输最远1200米,波仕的增强型RS-232/RS-485转换器可以在9600bps时最远到1800米。但是增加波特率后传输距离大大减小。波仕电子的通信测试结果表明:RS-485在大于9600bps时,最远传输距离大致与波特率成反比,而减小波特率也几乎无助于增加通信距离。而且在大于9600bps波特率的远程通信时,必须根据通信距离来增加导线直径以及终端电阻。如何在高于9600bps波特率时实现高速远程传输,比如要在38400bps时传输1200米。擅长于RS-232/RS-485通信的 波仕电子 总不乏惊世之作。 在RS-485远程方面,波仕
[嵌入式]
基于AT89C2051设计的无线防盗报警器技术
本章介绍 无线 防盗报警系统中主机的制作,采用了 AT89C2051 单片机作为中央处理芯片,使得该系统的功能扩展比较方便,对于整个系统如需改变某种设置,只要更改相应的软件即可。对学习单片机有很大的帮助。 一、硬件设计 电路原理图如下图所示,主要由无线接收、数据解码、数据处理、报警电路、输出显示、断电报警和电源电路组成。整机接收频率315M,数据解码采用市面上用得较多的PT2272专用解码芯片,可靠性及稳定性较好;数据处理的任务由单片机完成,用于区分报警信号,同时接受各种操作指令,完成相应的操作,当接收到报警信号后一方面驱动报警电路,发出响亮的警车报警声,另一方面输出具体的地址信息,确定是哪一路发送了报警信号;断电
[单片机]