XX 学 网 络 教 育 学 院
专科毕业文
题目:IC卡读写系统单片机实现
完成期限:20XX年1月8日 20XX年4月20日
学中心:选择项
专业名称:电气动化技术
学生姓名:
学生学号:
指导教师:
IC卡读写系统单片机实现
第1章 绪
章介绍IC卡发展历史应情况说明现代IC卡技术基础知识分析目前常见IC卡读写器终端提出课题中IC卡读写器设计目标
11 IC卡发展应情况
卡片作身份识手段引进作交易证卡片早19世纪80年代萌芽英国1950年美国商设计第张现代塑料信卡1951年美国富兰克林银行作金融机构率先发行信卡60年代中期塑料金融交易卡背面贴磁条发展成够动读取信息进行线处理磁卡磁卡结构简单价格低廉迅速推广 IC卡年欧洲开始出现IC卡具突出3S特点Standard(国际标准化)Smart(灵巧智化)Security(安全性)发展迅速金融通讯交通等众领域中居磁卡已普应范围取代IC卡仅改变现种卡方法功作断开创出新应领域IC卡设备组成系统提供非常丰富服务功功生产流通领域机结合起出现令意想奇迹创造出巨济社会效益着信息技术发展IC卡作种先进信息存储介质应渗透国济社会生活军事等方面更着广阔发展空间
12 IC卡应技术
IC卡磁卡存储容量性安全性高应覆盖磁卡全部应范围外提供许磁卡具备应特性正特性IC卡脱机业务处理联网数致性等方面表现出前未优势IC 卡然强功仅IC卡加入应系统中构成发行商应系统持卡间数传输媒介时效发挥优势IC卡应系统应具备良应特性性价格安全特性
13 课题中IC卡设计目标
读写器IC卡应系统终端设备通读写设备IC卡建立联系读写IC卡中数读写器般求信息网络中位机进行通讯IC卡中数融入层数库设计选择读写器建立IC卡应系统关键
文设计IC卡读写器展开课题设计目标种通接触式IC卡读写终端求读写器够单独工作
预期目标:
l 实现户信息存储
l 通键盘显示电路实现机交互
l 实现卡插入退出识
l 实现伪卡识
第2章 IC卡芯片介绍
21 SLE4442IC卡
IC卡集成电路卡(IntegratedC ircuit Card)简称国家区称微芯片卡(Microchip card)微电路卡(Microcircuit Card)IC卡磁卡相集成电路镶塑料卡片芯片般易挥发性存储器(ROM EPROM EPROM)保护逻辑电路甚CPU节介绍IC卡基知识读者IC卡概解设计采IC卡接触型逻辑加密卡(SLE4442)节容重点介绍卡
SLE4442德国西门子公司设计逻辑加密存储卡具2K位存储容量完全独立编程加密代码存储器部电压提升电路保证芯片够单5V电压供电较存储器容量够满足应领域种求目前国应较种IC卡芯片
211 芯片特点
l 面字节寻址
l 采存储器结构:存储器保护型存储器加密存储器
l 线连接协议触点串行接口满足ISO7816步传送协议
l 芯片采NMOS工艺技术字节擦写入编程时间25ms
l 复位响应(ATR)符合ISOIEC78163协议
l 存储器采少10 000次擦写入周期数保持时间少10年
l 额外特性:数仅正确输入24位编程安全码(安全存储器)改变
212 芯片引脚配置
芯片引脚国际标准兼容表31引脚定义功说明:
表21 SLE4442引脚功
引脚
卡触点
符号
功
1
2
3
4
5
6
7
8
C1
C2
C3
C4
C5
C6
C7
C8
VCC
RST
CLK
NC
GND
NC
IO
NC
操作电压5V
复位
时钟
未
未
双数线(漏极开路)
未
213 芯片功
SLE4442IC卡芯片包括三存储器:256×8位EEPROM型存储器32×1位PROM型保护存储器4×8位EEPROM型加密存储器
1)存储器存储器重复擦EEPROM型存储器字节寻址擦写入擦时数字节8位全部置1写入时EEPROM单元中信息根输入数字位方式变换成逻辑0(EEPROM中新写入数原存数进行逻辑)通常改变数需先进行擦进行写入两项操作果寻址字节中8位没字位需0变1进行擦处理反然寻址字节中果没字节需1变0做写入处理写入擦操作次少耗费25ms时间
存储器址00HFFH存储器分两数区保护数区应数区保护数区存储器前32字节数区址0(00H)31(1FH)部分数读出受限制擦写入操作均受保护存储器部数状态限制保护存储器中第N位0时应存储器中第N字节允许进行擦写入操作保护数区般均作IC卡标识数区存放固定变标识参数应数区存储器224字节址32(20H)255(FFH)部分数读出受限制擦写入受控加密存储器数校验较结果影响需修改应数区容时必须首先输入3字节长校验字新输入校验字原存加密存储器中参字进行较两者完全致时芯片加密控制逻辑开芯片存储器允许面擦写入操作芯片允许限次数重试较操作果连续三次较失败芯片错误计数器计数0锁死存储器禁止较操作写入擦操作时整存储器变成读存储器芯片中存储器容改变
2)保护存储器32×1位次性编程读存储器(PROM)字位方式寻址写入保护存储器0~32位应着存储器址031字节理解字节单元控制熔丝出厂初始化前保护存储器状态全1控制方面说保护存储器容1写成00擦成1保护存储器写0单元应控制存储器字节单元接收擦写入命令该字节单元数改变方面讲果需防止固定标识参数改动类参数先写入存储器保护存储区然应单元保护存储器字位写位0部分单元中参数容永远更改保护存储器身读出操作受限制写入操作然受加密存储器较校验操作结果控制输入校验字芯片参字致执行续写入操作果较成功控制逻辑闭锁保护存储器
3)加密存储器加密存储器4×8位EEPROM型存储器存储器中第0字节密码输入错误计数器(EC)密码输入错误计数器效位低3位芯片初始化时计数器设置成111字节读次较密码时先判断计数器中否1果1中1写成0然进行较校验字操作果较结果致密码错误计数器允许进行擦操作(芯片动进行擦操作)时开存储器保护存储器加密存储器允许进行擦写入操作果较结果致密码错误计数器中1数减少位计数器容全0芯片较校验字操作允许进行密码计数器减数零芯片存储单元全部锁死加密存储器第123字节参字存储区3字节容作整体披称编程加密代码(PSC)值注意3字节容PSC较成功前读进行较操作写入擦操作受身较操作结果控制较成功加密存储器字节容进行读出写入擦
214 芯片传送协议
传送协议接口设备IFDIC卡集成电路间两线连接协议SLE4442芯片协议类型S10(步卡协议)IO线数变化CLK信号降效
传送协议包括4种模式
l 复位复位响应
l 命令模式
l 输出数模式
l 处理模式
1)复位复位响应
复位响应根ISO 78163标准进行操作期间时候复位复位IC卡进行操作开始时址计数器时钟脉设置成0RST线H状态置L状态时第数位容送IO线连续输入32时钟脉存储器中前4字节址单元中容读出第33时钟脉降IO线置成H状态关闭图31芯片复位复位响应时序关系
复位响应期间启动停止(见面)状态忽略
图21芯片复位复位响应时序关系
2)命令模式复位响应芯片等着命令条命令启动状态开始整命令包括三字节(命令含义面解释)紧着附加脉停止状态结束操作图32命令模式时序关系
启动状态CLKH状态期间IO线降启动状态
停止状态CLKH状态期间IO线升停止状态
接受命令两种模式输出数模式(读数模式)处理数模式
图22命令模式时序关系
3) 输出数模式:种模式IC卡芯片中数传送外部接口设备种操作图33输出数模式时序关系
第CLK脉降IO线第位数变效增加时钟脉芯片部位数送IO线输出序字节低位开始需数送出需附加时钟脉
IO线置成H状态便准备接受新命令输出数期间启动状态停止状态均屏蔽掉
图23输出数模式时序关系
4) 处理数模式种模式IC卡芯片做部处理图34处理数模式时序关系芯片第时钟脉降IOH状态拉L状态开始处理芯片部连续计时计数直第N时钟脉附加时钟脉降IO线次置高完成芯片处理程整处理程中IO线锁定成低状态
图24处理数模式时序关系
第3章 硬件电路设计
设计读写器8051单片机核心配IC卡接口电路串行通信电路存储电路掉电检测电路键盘显示电路等部分通读写器插槽IC卡芯片通信51单片机控制数传输程实现读卡写卡操作图41系统总体框图
51
单
片
机
IC卡芯片
串行通信电路
掉电检测
键盘
液晶显示
存储模块
图31 总体框图
IC卡接口设备种类功应需差卡 (接触式卡例)操作功说应具备基功
l IC卡插入退出识控制(接触式卡)IC卡进出RF区识控制(非接触式卡)
l IC卡提供需稳定电源时钟信号
l 实现卡数交换提供相应控制信号
l 加密数系统应提供相应加密解密处理密钥理机制
l 提供相应外部控制信息设备信息交换
读写设备卡基操作外设计重功
l 必控制界面显示界面
l 提供数通讯接口位机进行数通讯
l 网络控制功实现远程适时控
31 单片机系统电路
AT89C51单片机该系统核心器件控制着外围电路时响应外部请求整系统电路设计:
(1)键S17电容C8电阻R13构成单片机工复位装置两30pF电容12M晶振构成单片机振荡电路
(2)矩阵式键盘P1口控制P10P11P12P13接行线P14P15P16P17接列线单片机键盘进行行列扫描读取键值
(3)数码显示电路P2口控制单片机数码进行动态扫描P20P21口通串入出74LS164LEDabcdefgsp引线相连P2口接LED控制端单片机通P3口控制LED否点亮
(4)P0口设计IC卡卡座接口AT89C51单片机通IC卡座完成单片机IC卡连接
图31 AT89C51系统
32 接触式IC卡接口电路
IC卡接口电路连接IC卡读写设备通路实现IC卡供电满足带电插拔求
IC卡接口设备中IC卡供电电路应相独立回路提供完善流保护措施稳压电路IC卡接口设备独立IC卡设备卡插入时接口设备便开始IC卡提供需电力果插入张电源击穿坏卡金属片类物质会造成供电回路短路现象IC卡接口设备中流保护回路会干扰整设备正常工作
提高IC卡操作性必须电控制电路卡插入检测电路卡短路检测电路图42示IC卡接口电路
图32 IC卡接口电
R2VD1VT1组成卡电电路8051P160时VT1导通IC卡VCC电8051P161时VT1截止IC卡VCC失电果插入张电源击穿坏卡金属片类物质会造成回路短路现象IC卡VCC时VD2送CPUP15检测卡电源短路现象防破环
IC卡控制读写IC卡接口设备中核心操作部分种IC卡实际操作较(ISO7816标准定义操作符合标准卡保证操作致性)里先选择中较具性部分介绍面会针SLE4442芯片具体操作做详细说明
1)IC卡插入退出识电电控制技术
IC卡插入退出识通IC卡接口电路识果卡插入正确位置卡合法卡置P110VT2导通图46中LED点亮卡非法卡卡电源短路低电送P15P100VT3导通图47中报警电路报警确保IC卡已准确插位置插入识程必须加入消颤处理IC卡插入识程序示
RE_ DETECT
SETB IC_SW
MOV CIC_SW 输出高电检测端
JNC RE_ DETECT 卡插入等
LCALL DELAY_5MS 延时5ms
MOV CIC_SW
JNC RE_DETECT 次判断卡输入等
RET
…… 卡插入进行处理
IC卡供电控制直接涉否安全操作IC卡程必须严格遵循ISO78163规定操作序否IC卡带永久损坏ISO78163标准规定操作序
IC卡激活(电程)
—— RST处L状态
—— VCC供电
—— 接口设备处接收方式
—— Vpp升空闲状态
—— CLK相应稳定时钟提供
IC卡激活程(电程)
——RST状态L
——CLK状态L
——Vpp起作
——IO状态A
——VCC关闭
IC卡技术进步现IC卡事实卡带升压电路Vpp控制已逐渐失具体含义面电程序控制程
POWERON 电控制
LCALL RE_DETECT 识否卡插入
CLR RST RSTL
CLR CLK CLK二L
LCALL DELAY_500us 延迟05ms端口逻辑信号稳定
CLR POWER 卡供电
SETB D_OUT IO端口高电准备接受数
RET
POWER_OFF 电控制
CLR RST RSTL
CLR CLK CLKL
CLR D_OUT IOL
LCALL DELAY_500us 延时05ms端口逻辑信号稳定
SETB POWER 卡电
RET
2)IC卡读写技术
类型IC卡读写方式数协议方式ISO7816标准异步型IC卡读写协议做较充分定义步型IC卡定义复位
响应程协议标准厂家设计步型IC卡读写方式相步型IC卡接口协议面操作进行操作协议方式相许厂家生产IC卡ISO7816步复位响应协议作IC卡数读协议数符合ISO7816标准步型IC卡址计数器时钟紧密相关卡复位时址计数器置0卡发节拍时钟IC卡址计数器加1时钟频率限50kHz280kHz复位头32时钟周期卡复位响应程该程中厂家产品编码位编码方式逐数线送出字段根厂家户定义含义相某字段定义读时钟运行该字段然逐时钟读出数读出程分三基程复位数字段定位数读出
32 串行通信电路
PC机串口电压±12V单片机工作电压5V需MAX232接口芯片实现TTLRS232电转换采简单3线制通信方式图43串行通信电路
图33 串行通信电路
33 键盘电路
需16键采行接口键盘电路少需4+48条IO线串行接口键盘电路需3条IO口线条作键盘行线条串行移位输出列扫描信号条作移位寄存器74LS164移位时钟脉信号线
16键构成读写系统键盘电路部分图48键盘单片机接口电路
图34 8051键盘接口电路
图中P22行线接拉电阻 R5V1 mA5kΩ
选51KΩ电阻拉电阻保证没键输入时IO口线确定高电输入P23端输出列扫描信号通移位寄存器74LS164输出端QA~QH接键盘作键盘列线扫描信号通74LS164移位实现逐列置低电达扫描键目
34 显示电路
应系统中常显示器发光二极显示器简称LED液晶显示器简称LCD荧光显示器文采LCDLCD进行介绍
LCD种极低功耗显示器目前高分辨率LCD点阵式显示器显示灵活显示图型字符美观等优点系统中应非常广泛
显示设计现液晶显示功模块SMG12232B2该模块提供122*22分辨率带中文字库更重行串行两种输入方式接口方便样单片机异步通讯口驱动显示模块软硬件实现非常简单外围电路非常简洁
图49单片机显示器接口电路
图35 显示器单片机接口电路
第4章 软件系统设计
章介绍接触式IC卡读写器程序设计设计程序C51语言编写程序子程序组成中子程序包括较校验数子程序插卡子程序显示中断子程序
41 程序
程序完成初始化检测系统状态果刚电状态恢复掉电瞬间保存数程序流程图图51示
程序
#include< at8051h> 头文件
#define uint unsigned int
#define uchar unsigned char
#define addrl 0x40
uint data consl 全局变量定义
uchar data cons2[2]{00}
main ( )
{ uchar data *p 指针定义
if(consl0) 判断否刚电状态
{ pcons2
Read24c02(paddrl2) 24c02中读出掉电时保存数
conslOxOOOF 修改标志位
}
ITO1 外部中断0降触发
EXO1 外部中断0开中断
EA1 CPU开中断
IDL1 设置节电工作方式
do{ }while(1)
}
开始
初始化
机
否卡插入
N
Y
密码效验
键
N
Y
执行相应功
显示
图41程序流程图
42 键盘扫描子程序
16键键盘电路分:数字键0~9数点设定户信
息余额外5功键分:
(1) 修改确认键控制信息改写确认
(2) 账号显示键控制户账号信息显示
(3) 余额总数显示键控制余额总数显示
(4) 计数开始停止键控制计数系统计数
(5) 备键
(6) 备键
读写系统中键盘采编程扫描方式谓编程扫描CPU键盘扫描采取程序控制方式旦进入键盘扫描状态反复扫描键盘等户键盘输入命令数执行键入命令处理键入数程中CPU响应键入求直CPU返回重新扫描键盘止键盘扫描子程序流程图图53示图中见键盘扫描子程序完成功:
1) 判断键盘键方法P23口连续16次全输出0电时读P22口行线电状态行电全1电键盘键1电键
2) 取出键抖动重键影响键盘电路中键闭合产生负矩形脉动键时总抖动负脉开始末尾部位总出现毛齿波毛齿波长短开关机械特性关般5~10ms抖动外重键键紧接着键者两键时需采取定措施加消系统采软件延时方法解决通延时等信号稳定信号稳定查询键码程查询键延时段时间般10ms查询次否键次查询说明前次查询结果干扰抖动次查询键说明信号已稳定然判断闭合键键码闭合键键码确定查询键否释放键释放进行处理样消释放抖动干扰重键次查询结果
3) 扫描键盘键键值方法P23口连续16次输出1电然输出次0电时进行计数00HP22口1电继续连续输出1电进行移位时计数直P22口输入电0电表明时键键应计数值键值然调应键处理子程序键值键号应关系表51示
4) 表41 键值键号应表
键值
00H
01H
02H
03H
04H
05H
键号
0
1
2
3
4
5
键值
06H
07H
08H
09H
0AH
键号
6
7
8
9
键值
0BH
0CH
0DH
键号
修改确认
账号显示
余额总数
键值
0EH
0FH
10H
键号
开始停止
备
备
开始
调键盘程序
判断否键
数字
功
返回
图42 键盘扫描流程图
43 显示子程序
读卡器运行程中户信息进行断改变写入EEPROM中户需查询IC卡运行状态时需动显示钮显示户帐号信息帐号余额计数值等信息流程图图54示
开始
LCD初始化
清屏
缓区中显示户信息
显示户信息
返回
图43 显示子程序流程图
总结
解研究8051单片机结构特点相关设计实例次设计充分利相关功开发设计IC卡读写器外软件设计程中程序代码C编写加快开发进程期维护性提升设计完成工作:
1深入解8051单片机性特点开发工具应领域
2 PROTEL软件绘制完成系统完整电路图实现基51单片机IC卡读写器设计
3C语言完成相应软件设计达预期效果
4终完成基51单片机IC卡读写器设计:51单片机核心结合AT24C02作外部存储器存放关键信息液晶SMG12232B2作显示系统实现IC卡单片机通信51单片机控制数传输程实现读卡写卡操作
参考文献
[1]宏军赵东艳智卡技术全书北京电子工业出版社1996
[2]王爱英智卡技术北京清华学出版社2000
[3]彭黄科雷道仲单片机典型系统设计实例精讲 北京电子工业出版社20065
[4]段丽斌智卡技术应北京电子工业出版社1995
[5]陆永宁IC卡应系统南京东南学出版社2000
[6]沈红卫单片机应系统设计实例分析北京北京航空航天学出版社20031
[7]王卓邓晋钧刘宗祥IC卡技术应北京电子工业出版社1999
[8]立民单片机高级教程北京北京航空航天学出版社20008
[9]李华MCS51系列单片机实接口技术北京北京航空航天学出版社19938
[10]吴金戌沈庆阳郭庭吉8051单片机实践应北京:清华学出版社20029
[11]李光飞楼然苗胡佳文谢象佐单片机课程设计实例指导 北京北京航空航天学出版社2004
[11]姜志海刘连鑫单片微型计算机原理应北京:机械工业出版社20071
[12]张洪润刘秀英张亚单片机应设计200例 北京北京航空航天学出版社20067
总程序图
文档香网(httpswwwxiangdangnet)户传
《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
该内容是文档的文本内容,更好的格式请下载文档