智能卡COS底层无关性设计 - 中国一卡通网
用户名密码 [免费注册] [找回密码] 推广技巧 发布求购 建商铺  发产品  会员体制比较  
 

智能卡COS底层无关性设计

来源:网络  作者:李铁军,何永洪  发布时间:2012-07-10 08:53:42  字体:[ ]

关键字:智能卡  IC卡  单片机  

摘   要:介绍了以单片机AT89C51为核心的IC卡系统的设计。设计了单片机控制IC卡数据读写的软/硬件、LCD显示以及与PC机之间的串口通信。


  由图2的接口电路可以看出,AT24C08的时钟、上/下电及读写操作均由单片机控制,因此单片机编程时应符合AT24C08的传输协议和操作命令。本设计首先按照要求编写对AT24C08进行操作的子程序,再编写主程序组成完整的IC卡读写系统[3]。几个主要子程序和IC卡读卡器对AT24C08的操作流程图如图4所示。

  3 LCD显示

 

  字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用16×1、20×2、40×2行等模块。本文用1602字符型液晶显示器显示读卡器读出的信息。1602的引脚说明如表2所示、与单片机AT89C51的接口电路如图5所示。

  单片机读出IC卡的数据通过P0口送到液晶显示器显示,可分2行共显示32个字符,也就是16个字节的十六进制数据,通过上位机控制读数据起始地址可移动显示数据。1602可直接显示字符型数据,IC卡读出的十六进制数据需转换成字符型数据再送到液晶屏显示。

  4 单片机与计算机的串口通信

  4.1 单片机与计算机的硬件接口

  PC机串口通常采用RS-232电平,而单片机串口是TTL电平,二者不兼容。所以,接口必须做电平转换处理。在此,采用MAXIM公司的MAX232芯片进行电平转换。AT89C51单片机TXD端连接到MAX232的T1IN端,用于发送数据;PC机的RD端连接到MAX232的T1OUT端,用于接收数据;AT89C51单片机RXD端连接到MAX232的R1OUT端,用于接收数据;PC机的TD端连接到MAX232的R1IN端,用于发送数据。

  4.2 用MSComm控件实现串口通信

  MSComm控件是Microsoft公司为简化Windows下串行通信编程而提供的ActiveX控件[4]。它提供了一系列标准通信命令的使用接口,可建立起与串口的连接,并可通过串口连接到其他通信设备(如Modem),从而实现发出命令、交换数据以及监视和响应串行连接中发生的事件和错误等功能。MSComm控件也可用于创建电话拨号程序、串行口通信程序和功能完备的终端程序。MSComm控件提供了事件驱动法和查询法2种处理通信的方式。在使用事件驱动法设计程序时,每当有新字符到达、端口状态改变或发生错误时,MSComm控件都将触发事件,应用程序在捕获该事件后通过检查MSComm控件的CommEvent属性可获知所发生的事件或错误,从而采取相应的操作。这种方法的优点是程序响应及时,可靠性高。虽然查询方式实质上还是属于事件驱动,但在有些情况下这种方式显得更为便捷。它适合于较小的应用程序,每当应用程序执行完某一串行口操作后,将不断检查MSComm控件的CommEvent属性以检查执行结果或某一事件是否发生。

  本文设计的基于MSC-51单片机的IC卡系统硬件电路,用单片机模拟I2C的时序,使用了C语言编写源程序[5]。通过对单片机和LCD的进一步开发,可以使IC卡的使用能够脱离读卡器终端设备的限制,设计成为手持式的IC卡系统。

  参考文献

  [1]罗兴垅,黄隆胜.基于AT89C51控制的0.01℃数显温度计的设计[J].微计算机信息,2006(5-2):70-72.

  [2]余永权.ATMAEL89系列单片机应用技术[M].北京:北京航空航天大学出版社,2002.

  [3]李军.系列单片机高级实例开发指南[M].北京:北京航空航天大学出版社,2004.

  [4]李长林.VisualBasic串口通信技术与典型实例[M].北京:清华大学出版社,2006.

  [5]孙涵芳.MCS-51/96系列单片机原理及应用(修订版)[M].北京:北京航空航天大学出版社,1996.

更多

新闻投稿合作邮箱:yktchina-admin@163.com    字体[ ] [收藏] [进入论坛]

推荐文章

论坛热帖