低成本串口扩展方案在银行柜台密码键盘设备中应用_第1页
低成本串口扩展方案在银行柜台密码键盘设备中应用_第2页
低成本串口扩展方案在银行柜台密码键盘设备中应用_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、低成本串口扩展方案在银行柜台密码键盘设备中应用        摘   要:       本文介绍了应用GM8123实现银行柜台密码键盘设备中的扩展多串口的方案。 引言在银行柜台取款用的密码键盘设备的开发中,为了和标准键盘、加密芯片和上位机这三部分模块的接口通讯,就需要MCU具备三个标准的UART串口来和上述三个模块的UART串口连接。而且通常各模块的UART的波特率各不相同,设计也需要灵活的适应需求。MCU在整个设备里面的扮演的主从方会

2、根据操作的阶段发生变化。当设备处于等待模式时,上位机是主方,而MCU是从方。MCU通过一个串口接收到主方的命令后再通过第二个串口启动标准键盘,并控制相应的声光提示,然后等待标准键盘返回的按键数据(用户密码的明文),同时做相应的超时处理。接收到按键数据后进行一些基本的合理性判断处理,然后通过另一个串口将密码明文发送给加解密模块,然后接收加密后的密码密文。最后再通过和上位机连接的串口将密码密文上传,然后恢复到等待状态。在对标准键盘和加解密模块进行操作的时候,MCU扮演了通讯的主方。在整个流程中,可以看作是个半双工的通讯方式,让操作和控制更简单和更可*。图1GM8123功能框图图2系统设计框图图3状

3、态机流程图 现有方案满足上述应用要求的方案有多种设计方式,各不相同,包括成本、可*性、指标都存在差异。根据目前的串口器件及设计原理归纳起来有以下几种设计方案。方案一是使用多串口的单片机。其中双串口的单片机的价格在4070元左右,三串口的单片机价格更加昂贵,直接增加了系统设计的成本。同时,由于各单片机的指令不同,以及由于串口功能的扩展带来的陌生寄存器的使用都增加了设计人员的工作量和难度。方案二是使用普通的单片机扩展16C55X这种通过并口扩展串口的IC器件来实现。这类器件的优点是串口速度高,响应迅速。但缺点也是器件本身成本高,使用复杂,占用单片机的IO资源多,导致某些设计需控制外部声光

4、功能时还需要外扩8255来扩展并口资源,无形中又增加了PCB板面积、成本和设计难度。方案三是软件模拟串口功能。其优点是成本低,但可*性和串口指标都无法控制。硬件串口工作中对每一个BIT的采样是12次,而软件模拟最多只能做到2次,大多只有1次,所以通讯的可*性很难保证。同时软件模拟的串口很难达到较高的波特率,所以限制了通讯的应用。而且软件编写的难度高,程序工作量大,对研发人员的要求高,也局限了这种方案的推广应用。其它方案还包括使用两到三个普通单片机来达到需要的串口数量,然后相互之间通过自定义的并口或模拟的同步串口通讯协议来实现通讯等方案。 低成本应用灵活的新方案通过以上方案可以看出,现

5、有的实现方案很难在成本和指标上两全齐美。成都国腾微电子有限公司推出的一种全新方式的串口扩展芯片GM812X系列产品为上述设计带来了一种新的、低成本和应用简单的串口扩展方案。GM812X系列串口扩展芯片可为用户提供最简单和高性能的串口扩展方案,将一个标准串口扩展成3或5个标准串口。该系列芯片子串口最高波特率达38.4Kbps。该芯片提供两种工作模式:单通道工作模式和多通道工作模式,即可以指定一个子串口和母串口以相同的波特率单一的工作,也可以让所有子串口在母串口波特率基础上分频同时工作。用户可根据需要灵活选择。该芯片母串口和子串口的工作波特率可由软件调节,而不需要修改外部电路和晶振频率。UART数

6、据格式10位或11位可选。GM8123可以将一个标准串口扩展成3个标准串口,GM8125可扩展5个标准串口。本文选择GM8123作为串口扩展的IC。图1为GM8123的功能框图。在本设计中,GM8123即可满足设计的需要。例如单片机采用最常用和便宜的AT89C52,将GM8123的母串口和单片机的串口相连接,再将标准键盘接口、加解密模块的串口和上位机的串口分别连接到GM8123的三个扩展串口上。图2为方案的系统设计框图。假设上位机和加解密模块的通讯波特率为9600bps,标准键盘的通讯波特率为1200bps。图3为简单的单片机程序设计中与通讯相关的状态机流程图。该芯片的操作和编程应用都很简单,

7、从图3可以看出对GM8123的操作主要是通讯母串口的更改和波特率的设定,而且操作方式和编程基本相同。由于GM8123工作在单通道模式下,可以看作对母串口和子串口之间进行透明传输处理,所以无须对GM8123进行波特率的设置。以下是在等待状态下转变到接收标准键盘按键数据的过程中指定子串口端口和从9600bps修改到1200bps的C51程序的部分示例代码:/GM8123地址控制线声明sbit SRADD0 = P34;     / GM8123地址线SRADD0控制sbit SRADD1 = P35;    / GM8123地址线SRAD

8、D1控制sbit STADD0 = P36;     / GM8123地址线STADD0控制sbit STADD1 = P37;    / GM8123地址线STADD1控制void main(void)./初始化设置SCON = 0xC0;       /根据需要设置TH1 = 0xFD;       /装入定时器1初值,设置MCU       工作波特率

9、为9600bpsTL1 = 0xFD;PCON = 0x00;TR1 = 1;       /启动定时器1.       /设置子串口三和上位机通讯STADD0 = 1;       /选择子串口3发送STADD1 = 1;SRADD0 = 1;       /选择子串口3接收SRADD1 = 1;.  /接收上位机数据的相关处理/切换到和串口一和

10、标准键盘通讯TR1 = 0;TH1 = 0xE8; /装入定时器1初值,设置MCU       工作波特率为1200bpsTL1 = 0xE8;PCON = 0x00; TR1 = 1;STADD0 = 1;       /选择子串口1发送STADD1 = 0;SRADD0 = 1;       /选择子串口3发送SRADD1 = 0;.  /键盘控制和按键 结语从上述内容可以看出,通过GM8123实现3个串口的应用非常简单和灵活,程序工作量少,控制容易。并且以上设计只应用到了GM8123的单通道模式,尚未发挥出该芯片的所有功能和灵活性。芯片的外部控制少,应

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论