




免费预览已结束,剩余40页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
山东理工大学 毕业设计(论文)题 目:加密IC卡税控加油机系统设计学 院: 电气与电子工程学院 专 业: 自动化 学生姓名: 指导教师: 毕业设计(论文)时间:二九年 二 月二十三 日 六月 十九日 共 十六 周摘 要摘 要 随着现代经济的进一步发展,现金交易带来了一系列问题,比如携带不方便,安全性,无法实现异地交易等,为解决此类问题,信用卡交易发展了起来。由此石油行业也产生了一系列变革,IC卡加油机便由此而产生。IC卡税控加油机系统是由IC卡、加油机、计算机、计算机网络、通信线路组成的机械电子网络加油系统,是在IC卡加油系统的基础上增加网络连接,实现某一地区加油联网的新一代加油系统。IC卡加油机是在普通加油机基础上发展起来的,是为了实现电子货币代替现金或支票交易的目的而产生。IC卡加油机与普通加油机的主要不同是增设了IC卡读写器,即与IC卡配合工作的接口设备IFD(InterFaceDevice)。为了扩大信用卡的使用空间,方便顾客加油,1982年IBM等公司将磁卡付费终端置于油站,实现了用信用卡、公司卡等非现金证件加油消费。1985年吉尔巴克公司将在油站内的加油机控制中心和磁卡付费终端集成于一体,实现了油站收银系统和银行系统的直接连网。1990年,吉尔巴克公司又设计出磁卡加油机,并使用网络技术将加油机和银行连接,完成用户信息确认到加油扣款的全过程。1997年,美国TI公司和吉尔巴克公司合作,生产出了采用无线射频信息卡代替磁卡的加油机,用户加油的过程简单到只有停车、提枪、挂枪三个动作。关键词:IC卡,AT89S52,HT1621,8255A,X25045,液晶数码管VABSTRACTABSTRACTWith the further development of the modern economy, cash transactions has brought about a lot of problems, such as to bring is not convenience, security, transactions can not be achieved in different places. In order to solve these problems, credit card transactions has developed rapidly. The oil industry has also changed greatly, IC card tanker has been developed.The system of IC taxing oilingmaching is a Mechanical and electronic network oilingmaching system composed by IC card, oilingmaching ,computer, computer network, LOC. It is a new oilingmaching system that added network connections to the IC oilingmaching system to let the oilingmaching in an area connected in the network.IC oilmaching is developed on the foundation of common oilingmaching,it can let the cash or check replaced by the electronic money. The main defference between the IC oilingmachine and the common oilingmachine is that it has IFD(Inter FaceDevice).In order to expand the space of credit card,give our customers convenience, IBM and other companies place card paid terminals at petrol stations, and achieved using credit card, corporate card and other non-cash documents to consume. In 1985,JEBK company integrated the oilingmaching control center and the card paid terminals in the petrol station,and connected the petrol station paid system and banking system in the network.In 1990,JEBK company developed magnetic card oilingmaching ,connected the oilingmaching and the bank in the network,it can confirm the information and subtract the consumed money. In 1997, the United States company TI and JEBA company cooperated to produce oilingmaching using frequency card instead of magnetic card. The process of oiling is so simple as you only to parking, put up the gun,oiling and put down the gun.KEYWORDS: ICcard,AT89S52,HT1621,8255A,X25045,liquid crystal numberal tub目录目录摘要IABSTRACTII目录III第一章 引言11.1 IC卡税控加油机的发展现状11.2 设计内容及要求1第二章 方案论证32.1 方案选择32.1.1 输入和控制部分32.1.2 键盘和显示部分32.1.3 存储器和加油卡部分42.1.4 通讯部分和电源部分42.2 系统总体方案图4第三章 系统硬件设计53.1 输入模块设计53.1.1液体流量传感器53.1.2传感器选型63.1.3 光耦选择63.1.4加油机流量测量设计73.2 控制模块设计73.2.1 AT89S52工作原理73.2.2 8255A工作原理93.2.3 控制部分电路图103.3 键盘模块设计113.4 显示模块设计123.4.1 HT1621工作原理123.4.2 数码管工作原理133.4.3 显示部分电路原理图143.5 存储器模块153.5.1 X25045工作原理153.5.2 存储器部分电路图163.6 IC卡模块设计163.6.1 SLE4442工作原理173.6.2 SLE4442卡与单片机的接口电路203.7 通讯模块设计203.7.1 RS485通讯协议资料203.7.2 MAX485资料223.7.3 通讯部分的原理图电路223.8 打印机模块设计233.9电源模块设计24第四章 系统软件设计254.1 资源分配254.2 加油机的使用说明254.3 系统主程序设计264.4 系统子程序设计274.4.1 IC卡识别子程序流程图274.4.2 输入密码子程序流程图284.4.3 密码校验流程图284.4.4 输入金额或体积子程序流程图294.4.5 加油子程序流程图304.4.6 主机通讯流程图314.4.7 从机通讯流程图314.5 初始化函数和主函数32第五章 关键技术和误差分析335.1 关键技术分析335.2 误差分析33结论34参考文献35致谢36附录37第一章 引言第一章 引言1.1 IC卡税控加油机的发展现状随着现代经济的进一步发展,现金交易带来了一系列问题,比如携带不方便,安全性,无法实现异地交易等,为解决此类问题,信用卡交易发展了起来。由此石油行业也产生了一系列变革,IC卡加油机便由此而产生。IC卡税控加油机系统是由IC卡、加油机、计算机、计算机网络、通信线路组成的机械电子网络加油系统,是在IC卡加油系统的基础上增加网络连接,实现某一地区加油联网的新一代加油系统。IC卡加油机是在普通加油机基础上发展起来的,是为了实现电子货币代替现金或支票交易而产生。IC卡加油机与普通加油机的主要不同是增设了IC卡读写器,即与IC卡配合工作的接口设备IFD(InterFaceDevice)。为了扩大信用卡的使用空间,方便顾客加油,1982年IBM等公司将磁卡付费终端置于油站,实现了用信用卡、公司卡等非现金证件加油消费。1985年吉尔巴克公司将在油站内的加油机控制中心和磁卡付费终端集成于一体,实现了油站收银系统和银行系统的直接连网。1990年,吉尔巴克公司又设计出磁卡加油机,并使用网络技术将加油机和银行连接,完成用户信息确认到加油扣款的全过程。加油机由简单的计量设备变成了具有金融功能的电子付费终端。1997年,美国TI公司和吉尔巴克公司合作,生产出了采用无线射频信息钮代替磁卡的加油机,用户加油的过程简单到只有停车、提枪、挂枪三个动作。1999年,中国石油开始启动了IC卡工程;2000年,中国石化也开始了IC卡工程。1.2 设计内容及要求设内计容1 系统的硬件设计模块(1)加油机流量计量电路和HD1621驱动LCD电路的设计;(2)89S52与8255键盘和打印机电路的设计;(3)89S52 CPU与串行存储器X25045的连接;(4)电源电路的设计,加密卡读写电路设计;(5)RS485串行通讯接口电路的设计; 2 系统的软件设计模块(1)系统初始化及主程序的模块设计;(2)流量计量程序的模块设计;(3)中断处理 、定时器处理程序的模块设计;(4)键盘显示程序、自诊断程序模块设计;3 主要设计技术指标与参数16位LCD显示 体积 金额计量精度 1 毫升加密卡 SLE4442系统电源 5Vdc,max120MA串行通讯 RS485波特率 2400115200实现加密IC卡税控加油机自动控制,显示,打印。4 功能简介(1)无人加油时显示油价(2)可输入密码并验证(3)可按金额输入,精确到元(4)可按体积输入,精确到升(5)自动更新油价(6)可与主机进行通信(7)具有防止掉电或其他故障的保护和自动复位功能(8)加油时不断刷新显示数据- 36 -第二章 方案论证第二章 方案论证2.1 方案选择2.1.1 输入和控制部分由于在加油机工作过程中产生的是液体流量信号,我们需要把它变成单片机需要的数字信号输入到单片机内部,为此我们可以选用能够产生流量脉冲信号的液体流量传感器。同时,我们需要考虑外部传感器的电磁和其他干扰问题,为此,我们需要在流量传感器和单片机中断输入之间加入一个光电隔离装置,从而抑制干扰。毋庸置疑,我们需要一种控制芯片来完成各种控制和运算,我们可选单片机。脉冲信号输入到单片机后,需要经过一系列的运算转换成金钱数额和体积数额,同时要知道一个脉冲代表了多少体积油,这样每变化一个脉冲,可换算出它具体代表了多少钱和多少体积,加油过程中这些数据要不停运算和刷新显示。考虑到需要键盘输入同时有需要接打印机接口,IC卡,看门狗电路,I/O口不够用,我们需要扩展I/O口。2.1.2 键盘和显示部分加油过程中,我们需要人为输入各种信息,如用户IC卡密码,金额或体积,还有各种控制信号,因此我们需要键盘输入电路。方案一 我们用8255A来设计一种矩阵式键盘,该键盘共具有6行,3列共18个键。方案二 设计键盘我们还可以选用8279键盘显示器接口芯片,该芯片可以方便的控制键盘扫描和LED数码管显示。但是由于我们使用的是液晶显示,必须用专门的驱动芯片来驱动,故此该方案不可行。加油过程中的各种数据,如油价,消费金额,加油体积等都需要显示出来,为此我们需要设计显示部分,由于显示的信息不是很多而且都是数字信息,故此我们可以选用数码管。我们选用LCD液晶数码管,用一片HT1621芯片驱动,该芯片可以很方便地驱动16位LCD数码管的显示。2.1.3 存储器和加油卡部分加油机需要一种存储芯片来存放与加油有关的数据。该部分我们用一片X25045芯片,该芯片具有看门狗电路功能,同时它还具有4K字节的RAM内存空间,可以很方便地存放即时数据。掉电瞬间,数据处理过程中的即时数据已存放于X25045中,在电力恢复的时候我们可以把数据取出进行处理。为方便用户使用,我们必须为用户选用一种通用的加油卡,以此来存放与用户相关的各种信息,如账号,余额等。IC卡的型号很多,在该处我们选用西门子公司生产的SLE4442卡,该卡具有256字节的RAM存储空间。2.1.4 通讯部分和电源部分要实现联网纳税,加油机只是从机,我们还需要设计一种网络连接方式来把所有的加油机和一台主机连在一起。主机可以向从机发送各种信息,但从机不能主动向主机发送信息,只能回复主机发来的命令数据包。主机可以通过互联网和税务部门通信。我们选用RS485通讯方式。单片机和其它集成芯片的电源均是+5V,我们要设计一个+5V的供电电源。2.2 系统总体方案图 图2-1 总体方案设计图第三章 系统硬件设计第三章 系统硬件设计3.1 输入模块设计在该系统中我们需要测量的输入量是油的流量信息,同时又必须转换为单片机能够识别的数字信息。能够测量流量的传感器有很多,我们要选择一种能够把液体流量信息转换为输出脉冲的液体流量传感器。为此,经过多方查证,我选择了济南亿科仪器仪表制造有限公司生产的YK-LWGY-N基本型液体涡轮流量传感器,该仪器可以将流量信号以脉冲的形式远传输出。3.1.1液体流量传感器 图 3-1 涡轮流量传感器YK-LWGY-N系列涡轮流量传感器是吸取了国内外流量仪表先进技术经过优化设计,具有结构简单、轻巧、精度高、复现性好、反应灵敏,安装维护使用方便等特点的新一代涡轮流量计,广泛用于测量封闭管道中与不锈1Cr18Ni9Ti、2Cr13及刚玉Al2O3、硬质合金不起腐蚀作用,且无纤维、颗粒等杂质,工作温度下运动粘度小于510-6m2/s的液体,对于运动粘度大于510-6m2/s的液体,可对流量计进行实液标定后使用。若与具有特殊功能的显示仪表配套,还可以进行定量控制、超量报警等,是流量计量和节能的理想仪表。 产品特点(1)高精确度,一般可达1%R、0.5%R,高精度型可达0.2%R;(2)重复性好,短期重复性可达0.05%0.2%,由于具有良好的重复性,如经常校准或在线校准可得到极高的精确度,在贸易结算中是优先选用的流量计;(3)输出脉冲频率信号,适于总量计量及与计算机连接,无零点漂移,抗干扰能力强;(4)可获得很高的频率信号(3-4kHz),信号分辨力强;(5)范围度宽,中大口径可达1:20,小口径为1:10;(6)结构紧凑轻巧,安装维护方便,流通能力大;(7)适用高压测量,仪表表体上不必开孔,易制成高压型仪表;(8)专用型传感器类型多,可根据用户特殊需要设计为各类专用型传感器,例如低温型、双向型、井下型、混砂专用型等;(9)可制成插入型,适用于大口径测量,压力损失小,价格低,可不断流取出。3.1.2传感器选型根据加油机的需要,我选择了YK-LWGY-15/N/0.5/S/S/N/N 型的液体涡轮流量传感器。设定流量为1.8m3/h,输出脉冲频率为500HZ,这样,每个脉冲代表1ml油。假如加油100升,大概需要3分钟,一般的汽车加油时间在一分钟左右。3.1.3 光耦选择 为了隔离外部干扰,我们采用光电隔离的方式来产生输入到单片机INT0的输入脉冲。经过调查,我选择了TLP521-1型光耦,资料如下:图 3-2 TLP521-1管脚图 1脚是发光二极管的正端,2脚是发光二极管的负端,3脚是发射极,4脚是集电极。典型应用:1脚接一个电阻,加5V;2脚接控制端;4脚接输出端,3脚接地。分析:当2脚为0V时候,1、2形成回路,发光二极管发出光线,3、4之间的基极遇到光线,产生0.7V压降,致使3、4形成回路,输出端就被接到地了。3.1.4加油机流量测量设计 在设计的系统中,接线图如下: 图 3-3 加油机流量测量设计图 液体流量传感器的输入脉冲由引脚2输入,当脉冲输入为低电平时,发光二级管导通,三级管也导通,引脚4相当于接地输出低电平,当脉冲输入为高电平时,发光二极管截止,同时,三极管也截止,输出引脚4为高电平。引脚4输出到单片机的中断INT0输入引脚。3.2 控制模块设计控制模块中,我用了一片AT89S52单片机同时又用了一片8255A来扩展I/O接口。3.2.1 AT89S52工作原理AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52具有以下标准功能:8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。引脚结构如下图所示图 3-4 AT89S52管脚图P0 口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在 flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1 口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,p1 输出缓冲器能驱动4 个TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),具体如下表所示。在flash编程和校验时,P1口接收低8位地址字节 表 3-1 P1口部分引脚第二功能列表 引脚号第二功能P1.0T2(定时器/计数器T2的外部计数输入),时钟输出P1.1T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)P1.5MOSI(在系统编程用)P1.6MISO(在系统编程用)P1.7SCK(在系统编程用) P2 口:P2 口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动4 个TTL 逻辑电平。对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX DPTR)时,P2 口送出高八位地址。在这种应用中,P2 口使用很强的内部上拉发送1。在使用8位地址(如MOVX RI)访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。P3 口:P3 口是一个具有内部上拉电阻的8 位双向I/O 口,p2 输出缓冲器能驱动4 个TTL 逻辑电平。对P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为AT89S52特殊功能(第二功能)使用,如下表所示。在flash编程和校验时,P3口也接收一些控制信号。 表 3-2 P3口部分引脚功能列表引脚号第二功能引脚号第二功能P3.0RXD(串行输入)P3.4T0(定时器0外部输入)P3.1TXD(串行输出)P3.5T1(定时器1外部输入)P3.2INT0(外部中断0)P3.6WR(外部数据存储器写选通)P3.3INT1(外部中断1)P3.7RD(外部数据存储器读选通)3.2.2 8255A工作原理 8255A是一种通用的可编程并行I/O接口芯片,它是为Intel系列微处理器设计的配套电路,也可以用于其他微处理器系统中。在微型计算机系统中,用8255A作接口时,通常不需要附加外部逻辑电路就可直接为CPU与外设之间提供数据通道。8255A在使用前要写入一个方式控制字,选择A、B、C三个端口各自的工作方式,共有三种;方式0 :基本的输入输出方式,即无须联络就可以直接进行的 I/O方式。其中A、B、C口的高四位或低四位可分别设置成输入或输出。方式1 :选通I/O,此时接口和外围设备需联络信号进行协调,只有A口和B口可以工作在方式1,此时C口的某些线被规定为A口或B口与外围设备的联络信号,余下的线只有基本的I/O功能,即只工作在方式0.方式2: 双向I/O方式,只有A口可以工作在这种方式,该I/O线即可输入又可输出,此时C口有5条线被规定为A口和外围设备的双向联络线,C口剩下的三条线可作为B口方式1的联络线,也可以和B口一起方式0的I/O线。3.2.3 控制部分电路图 图 3-5 复位部分设计图由8255A扩展I/O接口的电路如下图6所示,AT89S52的P0口既作为数据口,又作为地址总线的低8位,并由一片MC74HC373作为地址锁存器来选择是作为地址总线还是作为数据总线。图 3-6 控制部分设计图3.3 键盘模块设计在该设计中需要使用键盘来输入数字或命令,这其中包括0到9个阿拉伯数字,“输入密码”,“拔卡”,“删除”,“打印凭条”,“确定”,“输入金额”,“输入体积”,“开始加油”共18个键,因此我用8255A设计了一个6行,3列的矩阵式键盘。需要输入数字或命令时启动键盘扫描程序,输入数字或命令后转向需要的程序执行。设计电路图如下图9:在键盘扫描过程中,必须设法消除抖动和其它一些干扰。消除抖动可以用硬件方法,也可以用软件方法,在这里我们选用软件方法。在检测到有键盘按下信号后,用程序设法延时一段时间后再检测有无键盘按下,如果有键按下,则进入按键确定程序,判断到底是哪一个键按下。键盘扫描程序的工作机制是这样的:首先,让所有的行输出0,检测列信息,如果列信息全为1,则无键按下,如果有一列为零,则有键按下。判断有键按下后,进入消除抖动程序,再判断是否有键按下,如果此时仍有键按下,开始判断到底是那个键按下。逐行输出0,读列信息,如果列值全为1,扫描下一行,如果有一列为0,则行值和列值就确定了改键的具体位置。将每个键的行值和列值信息经过某种运算存到一个表中,在键盘扫描过程中,根据查询该表所得的信息即可判断该键的体功能。 图 3-7 键盘部分设计图3.4 显示模块设计显示部分我选用的是LCD数码管,根据需要共需要显示2行信息,每行8位,故一共需要16位LCD数码管。LCD数码管的显示需要一种驱动芯片来驱动,经过调查,我选用了HT1621芯片,该芯片可以方便地驱动16位LCD数码管。3.4.1 HT1621工作原理HT1621是128 点内存映象和多功能的LCD驱动器。HT1621 的软件配置特性使它适用于多种LCD应用场合包括LCD模块和显示子系统用于连接主控制器。HT1621的管脚只有4 或5 条。HT1621 还有一个节电命令用于降低系统功耗。HT1621结构:显示内存 (RAM)静态显示内存 RAM 以32 * 4位的格式储存所显示的数据。RAM的数据直接映象到 LCD 驱动器,可以用READ,WRITE和READ-MODIFY-WRITE 命令访问。 图 3-8 HT1621显示内存结构LCD 驱动器HT1621是一个128 *2 4 点的LCD 驱动器,它可由软件配置成1/2 或1/3 的LCD驱动器偏压和2,3或4个公共端口,这一特性使HT1621适用于多种LCD 应用场合。LCD驱动时钟由系统时钟分频产生,LCD 驱动时钟的频率值保持为256Hz 由频率为32.768KHz的晶振片内RC 振荡器或外部时钟产生。LCD 驱动器相关命令参见下表3:表 3-3 LCD驱动器相关命令 粗体100即“100”表示命令模式类型,如果执行连续的命令除了第一个命令其它命令的模式类型码将被忽略。LCD OFF命令使LCD偏压发生器失效从而关闭LCD 显示,LCD ON 命令使LCD 偏压发生器有效从而打开LCD 显示。BIAS&COM是LCD 模块相关命令,可以使HT1621 与大多数LCD 模块相兼容 。HT1621可以用软件设置两种模式的命令,可以配置HT1621和传送LCD所显示的数据。HT1621 的配置模式称为命令模式,命令模式类型码为100,命令模式包括一个系统配置命令,一个系统频率选择命令,一个LCD 配置命令,一个声音频率选择命令,一个定时器/WDT设置命令和一个操作命令。数据模式包括READ,WRITE和READ-MODIFY-WRITE操作。下表是数据和命令模式类型码表表 3-4 数据和命令模式类型码表模式命令应在数据或命令传送前运行,如果执行连续的命令,命令模式代码即100,将被忽略。当系统在不连续命令模式或不连续地址数据模式下,管脚/CS 应设为1,而且先前的操作模式将复位。当管脚/CS 返回0 时新的操作模式类型码应先运行。3.4.2 数码管工作原理我们使用的是七段码的液晶数码管,它共有六个引脚,采用二分法来确定段码,管脚图如下图。图 3-9 LCD管脚图在二分法中,我们将a,b,c,d四个引脚接在一起,将e,f,g三个引脚接在一起。 m0 m1 m2 m3 s0 a b c d s1 e f g如上面所示,我们通过s和m来选择性地接通各个管脚。如要接通a,我们可令s0=0,m0=0,此类推其他管脚。根据此原理段码编码如下表: 表 3-5 LCD数码管段码表0123456789F6H06HBCH9EH4EHDAHFAH86HFEHDEH3.4.3 显示部分电路原理图 图 3-10 显示部分设计图 如上图所,将要显示的16个LCD的段码通过DATA(P20)引脚送入HT1621后,打开HT1621即可将要显示的数据一次点亮。3.5 存储器模块3.5.1 X25045工作原理本器件将四种功能集于一体,上电复位控制,看门狗定时器,降压管理以及具有块保护功能的EEPROM。该器件内的EEPROM具有4K的存储空间,至少具有一百万次的擦写周期。上电复位:当器件通电并超过VTRIP时,X25045内的复位电路将会提供一个约为200MS的复位脉冲,让微处理器能够正常复位。降压检测:工作过程中X25045检测Vcc端的电压下降,并且在Vcc端的电压下降到VTRIP以下时会产生一个复位脉冲,这个复位脉冲一直有效,直到Vcc降到1V以下。如果Vcc在降落到VTRIP后上升,则在Vcc超过VTRIP后延时约200ms复位信号消失,使得微处理器可以继续工作。芯片的控制命令如下表所示: 表 3-6 X25045控制命令指令名称指令格式完成的操作WREN0000 0110写允许WRDI0000 0100写禁止RSDR0000 0101读状态存储器WRSR0000 0001写状态存储器 看门狗和块锁定READ0000 A8011从选定的开始地址单元中读数据WRITE0000 A8011向选定的开始地址单元写入数据 1-16字节X25045的状态寄存器由两个断电即消失的位WIP,WEL和四个断电不会消失的位BL0,BL1,WD0,WD1组成。当WIP为1时表示内部正在进行写操作,当WIP为0时,表示内部没有进行写操作。其它四位的功能见下表7和表8列出了功能寄存器的各位的分布情况和功能。 表 3-7 X25045功能寄存器各位的分布7654321000WD1WD0BL1BL0WELWIP 表 3-8 X25045功能寄存器特定位的功能状态寄存器位看门狗定时器溢出时间状态寄存器位保护的地址空间WD1WD0X5045/X5043BL1BL0X5045/X50430014秒00不保护01600毫秒01$180H-$1FFH10200毫秒10$100H-$1FFH11禁止11$000H-$1FFH读状态寄存器:先将CS置0,再写入RDSR命令,状态寄存器的内容就从SO输出,同时还要配合相应的SLK时钟信号。状态寄存器可在任何时候读出。写状态寄存器:先将CS置0,再写入WREN指令将WEL置1,再将CS置1后再置0,接着写入WRSR指令,再写入数据,写入结束后将CS置1。该过程还要配合相应的SLK时钟信号。读主存储器:先将CS置0,接着写入READ指令,在写如地址,之后SO会输出相应的数据,该过程也要配合相应的SLK时钟脉冲。读完一个字节后如果继续提供时钟脉冲,将会将该地址单元下一单元的内容输出,地址自动增加,到达最高地址后将会回到000H单元。读完后要将CS置1。写主存储器:CS置0,再写入WREN命令。再将CS置1,再将CS置0。接着写入WRITE命令,再写入地址,在写入数据。之后如果继续提供时钟脉冲,可连续写入数据。写入完毕后要将CS置1. 3.5.2 存储器部分电路图 该电路图见图6,在该设计中,X25045不仅具有存储功能,还具有掉电处理功能,在加油过程中,我们每隔一段时间将加油的及时数据存入到X25045中,如果系统掉电,在系统重新启动时我们还可以从X25045中找回一部分信息3.6 IC卡模块设计在该设计中我们使用的是SLE442卡,SLE4442是具有可编程安全代码(PSC)和写保护功能的智能型 256-Byte EEPROM。3.6.1 SLE4442工作原理存储器结构: SLE4442IC卡芯片主要包括三个存储器:256*8位EEPROM型主存储器、32 *1位EEPROM型保护存储器和4*8位EEPROM型加密存储器。传输协议:此协议为两线连接,与其他设备构成完整的IC电路,所有I/O口的数据变化都是在时钟的下降沿开始的。此协议包括四种模式: - 复位与复位应答- 命令模式- 输出数据模式- 内部处理模式注意:由于I/O脚是开漏型的所以需要外接上拉电阻以提供高电平复位与复位应答(ATR):应答复位的发生是依照ISO7816-3标准,可以在操作的任何时候产生复位。开始时给I/O脚低电平并在RST信号由高到低其间提供一个时钟脉冲,此时I/O脚输出了有效数据的第一位(LSB),此后连续的31个时钟脉冲读出了EEPROM中的4字节标头数据,第33个时钟脉冲使I/O脚变为高阻状态完成了ATR过程。命令模式 应答复位后,芯片等待指令的输入。每个指令开始于Start条件,包括一个3字节长的命令字和紧跟其后的时钟脉冲,然后结束于Stop条件。- Start条件:在CLK为高其间送I/O口一个下降沿- Stop 条件:在CLK为高其间送I/O口一个上升沿命令被接收后可能会出现两种模式: - 可读的数据输出模式- 可擦写的内部处理模式数据输出模式:在这种模式下IC送出数据,在时钟脉冲的第一个下降沿后I/O输出有效数据的第一位,在最后一位数据后的额外一个时钟脉冲使I/O变为高阻状态并等待接收新的指令,在此模式的其间任何一个Start和Stop示为无效。内部处理模式:此模式是IC的内部处理,在第一个时钟脉冲的下降沿后I/O由高阻状态转换为低电平。任何一个Start和Stop将示为无效。注意:前边所谈到的都是在RST保持低电平的情况下进行的,如果在时钟信号为低其间RST设为高电平,那么此次操作失败同时I/O变为高阻状态。指令格式:每一个指令包括三个字节,一个字节控制字,一个字节地址,一个字节数据,如下表所示表 3-9 SLE4442指令格式MSB控制字 LSBMSB地址字 LSBMSB数据字 LSBB7B6B5B4B3B2B1B0A7A6A5A4A3A2A1A0A7A6A5A4A3A2A1A0 命令的传送总是从控制字节开始。首先传送字节的最低位LSB(即Bo位)。控制字节传送完毕以后,依次传送地址字节和数据字节,传送顺序均从各字节最低位开始。在最后一位D7传送完成之后,需要增加一个附加脉冲把1/0线置成高状态。有关命令的说明:读主存储器:该命令是指读出主存储器的内容。该命令的控制字为(30H)。对于每个字 节来说总是从最低位开始读出。从给定的字节地址(N)开始,直到整个存储器的末 尾。在该命令输入以后,接口设备IFD必须提供足够的时钟脉冲。对于从地址(N)开始读数据所需要的时钟脉冲的数量M=(256-N)X 8 十1。对主存储器做读操作不受限制 。读保护存储器:该命令的控制字为(34H ).在连续输入32个时钟脉冲情况下,芯片将保护存储器内各位内容传送到IO线上。最后通过一个附加时钟将IO线置为H状态。 对保护存储器进行读取操作不受限制。读加密存储器:该命令类似于读保护存储器那样,可以读出4个字节的加密存储器的内容 。在输出数据模式下,所需时钟脉冲的数量为32。其后再附加一个时钟脉冲将IO 线置成高状态。如果可编程加密代码(PSC)的校验不成功(除第1字节可读除外 ).IO线总保持低状态。修改主存储器:该命令就是根据所传送地址字节数据,寻址主存储器的EEPROM字节 ,然后修改字节内容。该命令的控制字为(38H).在处理模式期间,可能有几种情况擦除和写入至少需要5ms只写入不擦除至少需要2.5ms只擦除不写入至少需要2.5ms程序实现时,可根据CLK时钟脉冲的频率来选择修改存储器时的延时脉冲个数,但最佳延时时间的确定要通过实验来调整,让数据可靠的写入存储器中,同时保证用较少的时间完成数据的修改。修改加密存储器:该命令是根据所传送的字节数和要修改的数据,将加密存储器中相应字节的内容进行修改。该命令的控制字为(39H),该命令只能在可编程加密代码(PS C) 比 较成功之后才能进行。该命令的执行时间和所需的时钟脉冲与修改主存储器的情况相同。写保护存储器:该命令的执行过程包括一个把被输入的数据与在EEPROM中对相应数据进行比较的过程。在确认一致的情况下,保护字位被写0。从而使得主存储器中的信息不可更改。如果数据比较结果不一致,则保护字位的写操作将被禁止。该命令所需时钟脉冲和执行时间与修改主存储器命令的情况相同。比较校验数据:该命令把输入的“校验数据”的各个字节与相对应的参照数据(存放在加密存储器中)进行比较。如果比较不成功(即两组数据不相同),则密码错误计数器的一个字位将只会被从“1写成“0 ,并且不能被擦除。表3-10 SLE4442卡的命令格式与功能字节1(控制)字节2(地址)字节3(数据)功能命令模式30H地址数无效读主存储器输出数据模式38H地址数输入数据修改主存储器处理模式34H无效无效读保护存储器输出数据模式3BH地址数输入数据写保护存储器处理模式31H无效无效读加密存储器输出数据模式39H地址数输入数据修改加密存储器处理模式33H地址数输入数据比较校验数据处理模式3.6.2 SLE4442卡与单片机的接口电路 图 3-11 SLE4442卡设计图 如上图所示,P14用作I/O串行数据口,P15用作时钟脉冲源输出口,P16用作复位输出口,P17用来检测有无IC卡插入,若有,P17管脚为0.3.7 通讯模块设计我们所设计的系统为主从是的半双工串行通讯系统,采用RS485通讯协议。3.7.1 RS485通讯协议资料数据传输协议此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。它描述了一控制器请求访问其它设备的过程,如何回应来自其它设备的请求,以及怎样侦测错误并记录。它制定了消息域格局和内容的公共格式。此协议决定了每个控制器须要知道它们的设备地址,识别按地址发来的消息,决定要产生何种行动。如果需要回应,控制器将生成反馈信息按本协议发出。数据在网络上转输控制器通信使用主从技术,即仅一设备(主设备)能初始化传输(查询)。其它设备(从设备)根据主设备查询提供的数据作出相应反应。主设备可单独和从设备通信,也能以广播方式和所有从设备通信。如果单独通信,从设备返回一消息作为回应,如果是以广播方式查询的,则从设备不作任何回应。协议建立了主设备查询的格式:设备(或广播)地址、功能代码、所有要发送的数据、一错误检测域。从设备回应消息也由协议构成,包括确认要行动的域、任何要返回的数据、和一错误检测域。如果在消息接收过程中发生一错误(无相应的功能码),或从设备不能执行其命令,从设备将建立一错误消息并把它作为回应发送出去。在对等类型网络上转输在对等网络上,控制器使用对等技术通信,故任何控制都能初始和其它控制器的通信。这样在单独的通信过程中,控制器既可作为主设备也可作为从设备。在消息位,本协议仍提供了主从原则,尽管网络通信方法是“对等”。如果一控制器发送一消息,它只是作为主设备,并期望从设备得到回应。同样,当控制器接收到一消息,它将建立一从设备回应格式并返回给发送的控制器。查询回应周期(1)查询查询消息中的功能代码告之被选中的从设备要执行何种功能。数据段包含了从设备要执行功能的任何附加信息。错误检测域为从设备提供了一种验证消息内容是否正确的方法。(2)回应如果从设备产生一正常的回应,在回应消息中的功能代码是在查询消息中的功能代码的回应。数据段包括了从设备收集的数据。如果有错误发生,功能代码将被修改以用于指出回应消息是错误的,同时数据段包含了描述此错误信息的代码。错误检测域允许主设备确认消息内容是否可用。(3) 传输方式控制器能设置传输模式为RS485串行传输,通信参数为9600,n,8,1。在配置每个控制器的时候,在一个网络上的所有设备都必须选择相同的串口参数。地址 功能代码 数据数量 数据1 . 数据n CRC字节每个字节的位 1个起始位 8个数据位,最小的有效位先发送 1个停止位 3.7.2 MAX485资料MAX485接口芯片是Maxim公司的一种RS485芯片。 采用单一电源+5 V工作,额定电流为300UA,采用半双工通讯方式。它完成将TTL电平转换为RS485电平的功能。MAX485芯片的结构和引脚都非常简单,内部含有一个驱动器和接收器。RO和DI端分别为接收器的输出和驱动器的输入端,与单片机连接时只需分别与单片机的RXD和TXD相连即可;/RE和DE端分别为接收和发送的使能端,当/RE为逻辑0时,器件处于接收状态;当DE为逻辑1时,器件处于发送状态,因为MAX485工作在半双工状态,所以只需用单片机的一个管脚控制这两个引脚即可;A端和B端分别为接收和发送的差分信号端,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年企事业单位班车租赁及保养服务合同
- 智慧在线教学与教育心理学的融合发展
- 二零二五年度厂区物业物业费结算与合同
- 医疗健康领域的教育技术培训与展望
- 胸痛中医健康宣教
- 临床护理带教讲课
- 幼儿礼仪教育实施路径
- 急性胸痛的观察与护理要点
- 亚健康肥胖综合解析与干预策略
- 百货企业文化培训
- 2025年省国有资本运营控股集团有限公司人员招聘笔试备考试题及答案详解(名校卷)
- 2025年辅警招聘考试试题库完整答案
- 技术水平评价报告【范本模板】
- 宿州萧县乡镇事业单位招聘考试真题2024
- 2025至2030全球及中国近炸引信传感器行业项目调研及市场前景预测评估报告
- 部编版三年级语文上册 写字表
- 工厂十周年活动策划方案
- 2025至2030临床决策支持系统行业项目调研及市场前景预测评估报告
- 黑启动操作培训课件
- 天津汇融商业管理有限公司招聘笔试题库2025
- 肿瘤的健康科普
评论
0/150
提交评论