I2C总线接口和简易IC卡读写器_第1页
I2C总线接口和简易IC卡读写器_第2页
I2C总线接口和简易IC卡读写器_第3页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

1、$regfile = "M16def.dat"$crystal = 11059200$baud = 9600Dim I As Byte , Temp As ByteDim Data1(8) As Byte , Data2(8) As ByteDim Card_ok As BitConfig Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7 , E = Portd.5 , Rs = Portd.3''定义LCD显示屏接口''定义PPortc.

2、0为I2C总线的Scl''定义 PPortc.1为I2C总线的Dda''定义IC卡的写地址指令字'定义IC卡的读地址指令字'定义3个I/O 口为输入开关接口''清LCD显示Config Lcd = 16 * 4Config Scl = Portc.0Config Sda = Portc.1Con st Adresw = &HA0Const Adresr = &HA1Config Pin c.0 = In put , Pinc.1 = In put , Pinc.2 = In putPortc.0 = 1 : Por

3、tc.1 = 1 : Portc.2 = 1Cursor Off Nobli nkDoCls'显示提示字符''检测有无IC卡插入'无IC卡插入''有IC卡插入''检测系统设置为写卡方式?'写卡方式,要求输入密码字Locate 1 , 1 : Lcd "Demo for IC_Card"If Pi nc.2 = 1 The nLocate 2,1 : Lcd "No IC_Card "Wait 1ElseIf Pi nc.0 = 0 The nClsLocate 1 , 1 : Lcd

4、 "Enter Password:"I = 1Locate 2,1Do由RS-232 口接收PC输入Temp = In key()If Temp <> 0 The nData1(i) = Temp : I = I + 1 Led Chr(temp)Print Chr(temp);End IfLoop Un til I > 8PrintFor I = 1 To 8I2cstartI2cwbyte AdreswI2cwbyte II2cwbyte Data1(i)I2cstopWaitms 10NextIf Pi nc.1 = 0 The nFor I = 1

5、 To 8Writeeeprom Data1(i) , I NextEnd IfFor I = 1 To 8I2cstartI2cwbyte AdreswI2cwbyte II2cstartI2cwbyte AdresrI2crbyte Data2(i) , Nack I2cstopNext''的密码字符,'长度为8个''同时在LCD上显示密码'将8个密码字写入IC卡中'写入地址为1-8如果系统设置为修改系统密码时'将密码写入 AVR的EEPROM中''写入地址为1-8'读IC卡刚写入的密码Card_ok

6、= 0For I = 1 To 8If Data1(i) <> Data2(i) ThenCard_ok = 1Exit ForEnd IfNextLocate 2 , 1If Card_ok = 0 The nLcd "Write Card ok!"ElseLed "No or Bad Card!?"End IfDoLoop Un til Pi nc.2 = 1ElseCls : Locate 1 , 1For I = 1 To 8I2cstartI2cwbyte AdreswI2cwbyte II2cstartI2cwbyte Adres

7、rI2crbyte Data1(i) , NackI2cstopLcd Chr(data1(i)NextFor I = 1 To 8Readeeprom Data2(i) , I''判别写入密码同用户输入的密码'是否相同'相同,写卡完成'不同,写卡操作有误或坏的IC卡'等待用户抽出IC卡''系统为读卡方式'读IC卡上的密码字8个'显示在LCD上'读系统密码字8个NextCard_ok = 0For I = 1 To 8If Data1(i) <> Data2(i) ThenCard_ok = 1Exit ForEnd IfNextLocate 2,1If Card_ok = 1 The nLcd "Password not ok!"ElseLed "Password Ok!"End IfDoLoop U

温馨提示

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

评论

0/150

提交评论