ImageVerifierCode 换一换
格式:PPT , 页数:35 ,大小:221.50KB ,
资源ID:3255468      下载积分:12 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/3255468.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(MIFARE-1卡读写控制演示幻灯片.ppt)为本站上传会员【人****来】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

MIFARE-1卡读写控制演示幻灯片.ppt

1、SmartCardSmartCard IC IC卡公交收费机设计(三)卡公交收费机设计(三)MIFARE 1MIFARE 1卡读写软件设计卡读写软件设计电子与信息工程学院电子与信息工程学院SmartCardSmartCard课 程 目 标q 非接触式非接触式ICIC卡读写控制卡读写控制 q MIFARE 1 MIFARE 1卡读写控制功能的实现卡读写控制功能的实现SmartCardSmartCard项目开发IC卡公交收费系统q系统需求分析:1.具备小额电子钱包功能,定额方式收费2.操作方便快捷3.工作距离50cm4.具备显示余额、异常报警(非法卡或余额不足)5.可将当班收款额上传总站数据库6.

2、公交公司可调整定额额度7.卡遗失可挂失8.抗干扰能力强SmartCardSmartCard项目设计之三软件实现q读写器与读写器与M1M1卡交换数据的过程:卡交换数据的过程:1)由读写器MCU(微控制器)发送指令给MCM,2)MCM执行指令并将其转换为射频信号发送给卡;3)卡接收到来自MCM的指令后,按指令完成其内部的各种处理,并回送应答信号/数据给MCM;4)MCM接收卡回送的射频信号并将其转换为数字信号输出给MCU,读写器MCU读取MCM接收到的应答/数据,即可完成与M1卡的数据交换。SmartCardSmartCardMCM基本通信指令集SmartCardSmartCardMCM内核特殊寄

3、存器SmartCardSmartCardMIFARE卡的读写操作步骤 q激活MCMqMCM软复位q向MCM下载密码(LOAD KEY),校验传输密码正确后可向MCM的KEY-RAM写入用户自己设定的密码,以上操作与卡无关。q请求应答(ANSWER TO REQUEST):寻卡 q防冲突(ANTICOLLISION):选择唯一一张卡 q选择标记(SELECT):激活所选择的卡 q认证(AUTHENTICATION):安全性q读写操作(读、写、加值、减值):交换数据(READ/WRITE/INCREAMENT/DECREMENT)q停止(HALT):置卡为停止模式,防止重复操作。SmartCard

4、SmartCardSOR/LOAD KEYREQUESTANTICOLLISIONREAD/WRITE/INC/DECHALTMIFARE MIFARE 卡操作步骤卡操作步骤卡操作步骤卡操作步骤AUTHENTICATIONSELECT卡应答:TAGTYPE(2B)卡应答:SN(4B)+校验码(1B)卡应答:SIZE(1B)卡应答:AE位SmartCardSmartCard指令时序 每个指令由7个基本步骤组成,必须按此时序编程才能完成该指令:(1)初始化,设置各寄存器,特别是BCNTS和BCNTR。(2)送指令码到DATA,由MCM发送指令。(3)设置TOC,MCM准备接收来自卡的应答或数据。(

5、4)检查DV标志,查询数据接收是否完成。DV标志为”1”表明MCM与MIFARE卡片之间的传输已经完成,并且主处理机可能已经从MCM中收到数据,可以进行下一步操作。而DV=0表示数据接收尚未完成或未能接收到数据,则程序循环检测DV标志直至DV=1。有一种情况例外,既当定时器溢出时,无论接收是否完成DV都将被设置为1,同样将进行下一步操作。(5)清零TOC。(6)检查出错标志,若有标志被设置,则进行相应的出错处理,例如设置出错标志等,并返回主程序;若没有标志被设置,表示接收正确,将进行下一步操作(7)MCU从DATA读出MCM接收到的应答或数据。SmartCardSmartCardAnswer

6、to Request(请求应答)指令 qRequest 指令将通知MCM在天线有效的工作范围(距离)内寻找MIFARE 1卡。q命令码:26H或52H。q卡收到该指令将回送卡类型号作为卡应答:TAGTYPE(2个字节)SmartCardSmartCardqWith a“request std”(26H)instruction only cards which are not set into a“HALT-mode”will respond to this request,or it may be expanded to all cards in the field with a“reques

7、t all”(52H)option.The first option is needed to prevent the MCM from selecting one card several times.Difference between “request std”&“request all”SmartCardSmartCardRequest:NOP NOP MOV A,#0CH ;设置STACON MOV R0,#01H MOVX R0,A MOV A,#0EH ;设置BAUDRATE MOV R0,#05H MOVX R0,A MOV A,#0C0H ;设置ENABLE MOV R0,#

8、02H MOVX R0,A MOV A,#0C6H ;设置MODE MOV R0,#07H MOVX R0,A MOV A,#0CH ;再次设置STACON MOV R0,#01H MOVX R0,A MOV A,#02H ;设置RCODE MOV R0,#0EH MOVX R0,ASmartCardSmartCard MOV A,#07H ;设置BCNTS=7bits MOV R0,#03H MOVX R0,A MOV A,#10H ;设置BCNTR=2Bytes MOV R0,#04H MOVX R0,AJUDGE_COMMAND:;选择REQ STD还是REQ ALL MOV A,R2

9、XRL A,#01H JNZ RQT_STDRQT_ALL:MOV A,#52H SJMP RQT_NEXTRQT_STD:MOV A,#26HRQT_NEXT:MOV R0,#00H;发送命令码 MOVX R0,A NOPSmartCardSmartCard MOV A,#0AH ;设置TOC=1ms MOV R0,#06H MOVX R0,ARQT_STACON:MOV R0,#01H;读 STACON MOVX A,R0 JNB ACC.7,RQT_STACON;判断 DV=1?MOV R7,A ;暂存STACON MOV A,#00H;清零TOC MOV R0,#06H MOVX R0

10、A MOV A,R7;判断是否出错 JB ACC.6,RQT_TE_ERR JB ACC.3,RQT_BE_ERR MOV R0,#00H ;读TAGTYPE MOVX A,R0 MOV 20H,A MOV R0,#00H MOVX A,R0 MOV 21H,A MOV B,#00H;设置 OK 标志 SJMP RQT_EXITSmartCardSmartCardRQT_BE_ERR:;错误处理 MOV B,#01H SJMP RQT_EXITRQT_TE_ERR:MOV B,#02H SJMP RQT_EXITRQT_EXIT:RET SmartCardSmartCardAuthentic

11、ation 认证操作 qMCM中设有专用的密码存储器(KEY-RAM),用于存储3个密码集KEYSET0,KEYSET1,KEYSET2,每一个KEYSET又包含了各个扇区的KEY A 及KEY B。qAuthentication操作就是将KEY-RAM中的密码与卡中对应的密码进行三次相互认证。qAuthentication操作的卡应答以AE位给出;AE=1,密码出错,未能通过认证;AE=0,密码正确,通过认证SmartCardSmartCardqAuthetication操作包括3个步骤 1)设置KEYSTACON寄存器,指定Authetication操作及KEYSET(0、1或2)2)设置

12、KEYADDR寄存器,指定Authetication操作、KEYA或KEYB、待认证的扇区号 3)写“命令”(60H或61H)和写“地址”(扇区号015)到DATA寄存器,启动Authetication操作。SmartCardSmartCardREAD/WRITE操作qREAD/WRITE均需整块操作。qREAD:发送命令码30H+块地址(063)接收指定块的数据(16B)通常用2次读并比较是否一致来校验是否正确读qWRITE:发送命令码A0H+块地址(063)接收ACK/NAK应答来校验是否正确接收命令 发送块数据(16B)接收ACK/NAK应答来校验是否正确写入EEPROMSmartCar

13、dSmartCardValue Operate 值操作qMIFARE卡专门为公交/地铁等行业的定额收费系统设有值操作命令,包括INCREAMENT/DECREAMENT/TRANSFER/RESTOREq对某块进行值操作的前提是该块已被初始化为“值块”(Value Block)并且Access Bits允许值操作。SmartCardSmartCardIncrement/Decrement/TransferqIncrement:adds the specified value to the memory valueqDecrement:subtracts the specified value

14、from the memoty valueqTransfer:Each Increment or Decrement instruction manipulating a standard value block has to be followed by a Transfer intruction which actually stores the calculated result in the card memory.Until then,the result is kept in an internal value buffer resgister.SmartCardSmartCard

15、DECREMENT:入口:块地址addr,值value存放于D_BUF出口:ACK/NAK NOP NOP MOV A,#10H;SEND BCNTS(16bits:命令码+块地址)MOV R0,#03H MOVX R0,A MOV A,#04H;SEND BCNTR(4bits:ACK/NAK)MOV R0,#04H MOVX R0,A MOV A,#0C0H;SEND CODE MOV R0,#00H MOVX R0,A MOV A,#addr;SEND BLOCK ADDR MOV R0,#00H MOVX R0,ASmartCardSmartCardMOV A,#0AH;SET TOC

16、1ms MOV R0,#06H MOVX R0,AD_wait_value:;读STACON,判断DV=1?MOV R0,#01H MOVX A,R0 JNB ACC.7,D_wait_value MOV R6,A MOV A,#00H;清零TOC MOV R0,#06H MOVX R0,A MOV A,R6;出错判断 JB ACC.6,DEC_TE_ERR JB ACC.3,DEC_BE_ERR AJMP DEC_CONTIDEC_TE_ERR:;NOTAGERR MOV B,#01H AJMP DEC_EXITDEC_BE_ERR:MOV B,#02H AJMP DEC_EXITSmar

17、tCardSmartCardDEC_CONTI:MOV R0,#00H;读入读入ACK/NAK,MOVX A,R0 ANL A,#0BH;仅检查0,1,3位 CJNE A,#00H,D_N1 MOV B,#07H ;NOTAUTHERR(应答为00000000)SJMP DEC_NEXTD_N1:CJNE A,#0AH,D_N2;收到ACK应答(00000101),表示可以DEC SJMP DEC_NEXTD_N2:MOV B,#03H ;其他错误应答(00000011),CODEER AJMP WRITE_EXIT SmartCardSmartCardWRITE_NEXT:;开始写数据 MO

18、V A,#32;SEND BCNTS=32bits(4B VALUE)MOV R0,#03H MOVX R0,A MOV A,#04H;SEND BCNTR=4 bits(ACK/NAK)MOV R0,#04H MOVX R0,A MOV R5,#4 ;送4B 值 MOV R0,#00H MOV R1,#D_BUFDEC_VALUE:MOV A,R1 MOVX R0,A INC R1 DJNZ R5,DEC_VALUE SmartCardSmartCard MOV A,#0AH;SET TOC=1ms MOV R0,#06H MOVX R0,ADEC_end:;DV=1?MOV R0,#01H

19、 MOVX A,R0 JNB ACC.7,DEC_end MOV A,#00H;清零TOC MOV R0,#06H MOVX R0,AJudge_answer:MOV R0,#01H;出错判断 MOVX A,R0 JNB ACC.6,DEC_error_TEMOV B,#00HDEC_ANSWER:;读入ACK/NAK MOV R0,#00H MOVX A,R0 ANL A,#0FH CJNE A,#04H,D_ERR1;(00000100为VALUE OVERFLOW)MOV B,#0FEH SJMP DEC_EXITD_ERR1:MOV B,#0FFH;其他错误 DEC_EXIT:RET

20、SmartCardSmartCardTRANSFER入口:块地址T_addr出口:ACK/NAKTRANS:NOP NOP MOV A,#10H;SEND BCNTS(16bits:命令码+块地址)MOV R0,#03H MOVX R0,A MOV A,#04H;SEND BCNTR(4bits:ACK/NAK)MOV R0,#04H MOVX R0,A MOV A,#0B0H;SEND CODE MOV R0,#00H MOVX R0,A MOV A,#T_addr;SEND BLOCK ADDR MOV R0,#00H MOVX R0,ASmartCardSmartCardMOV A,#1

21、0H;SET TOC=1.5ms MOV R0,#06H MOVX R0,AT_end:;DV=1?MOV R0,#01H MOVX A,R0 JNB ACC.7,T_end MOV A,#00H;清零TOC MOV R0,#06H MOVX R0,AJudge_answer:;出错判断 MOV R0,#01H MOVX A,R0 JB ACC.3,T_error_BE JB ACC.6,T_error_PE MOV B,#00H AJMP NEXT_TRANST_error_BE:;出错处理 MOV B,#03H SJMP NEXT_TRANST_error_PE:MOV B,#05H SJ

22、MP NEXT_TRANSSmartCardSmartCardNEXT_TRANS:MOV A,#95D;SET TOC=9ms MOV R0,#06H MOVX R0,AT_Toc_end:;DV=1?(EEPROM写入结束否?)MOV R0,#01H MOVX A,R0 JNB ACC.7,T_Toc_end MOV R6,A MOV A,#00H;CLEAR TOC MOV R0,#06H MOVX R0,A MOV A,R6;出错判断 JB ACC.6,T_TAG_ERR JB ACC.3,T_BIT_ERR MOV B,00H SJMP NEXT_ANSWERT_TAG_ERR:;出

23、错处理 MOV B,#09H AJMP T_EXITT_BIT_ERR:MOV B,#0BH AJMP T_EXITSmartCardSmartCardNEXT_ANSWER:;读入ACK/NAK MOV R0,#00H MOVX A,R0 ANL A,#0FH CJNE A,#0AH,T_ERR1;(00000101为ACK,TRANSFER OK)MOV B,#00H SJMP T_EXITT_ERR1:CJNE A,#04H,T_ERR2;(00000100为NAK)MOV B,#02H SJMP T_EXITT_ERR2:CJNE A,#05H,WRITE_EXIT;其他错误 MOV

24、B,#04HT_EXIT:RETSmartCardSmartCard实训6 非接触式IC卡的读写控制 实训程序将读写器MCU片内RAM中的16个数据写入卡的一个数据块,然后将该数据块中的数据读出并存入读写器MCU的片内RAM中。MCU采用查询方式与MCM通信。实训程序说明:mode 选择密码集KEYSET0、1、2及密码A、B sector_nr 认证扇区号(015)R_H_BUF 读入数据缓冲区首地址 R_E_BUF 读入数据暂存区首地址 W_H_BUF 写入数据区首地址 R_addr 被读取的块地址(063)W_addr 被写入的块地址(063)SmartCardSmartCard实训步骤

25、q用非接触式IC卡读写软件MWRF向MCM中下载密码,读出并记录MIFARE1卡的TAGTYPE、SN、SIZE,读出并记录卡中某数据块(如扇区1块0)的数据。q用镊子取出非接触式IC卡开发板上的MCU芯片,将仿真头插入MCU的IC座。q编译实训程序,设置断点。q打开片内RAM及寄存器窗口,在写数据区(首地址为10H的16个单元)设置要写入卡中的数据。q天线范围内无卡时运行程序,记录程序停在断点处的相关数据。说明是否能正确读/写卡,如不能,根据现象定位故障点。q将卡置入天线范围内,运行程序,记录程序停在断点处的相关数据。说明是否能正确读/写卡,如不能,根据现象定位故障点。SmartCardSm

26、artCard 实训程序:mode EQU 00H;设置KEYSET=KEYSET0,使用密码A sector_nr EQU 01H;设置认证扇区为扇区1 R_H_BUF EQU 40H;读入数据缓冲区 R_E_BUF EQU 50H;读入数据暂存区 W_H_BUF EQU 10H;写入数据区 R_addr EQU 04H;被读取的块地址(扇区1的块0)W_addr EQu 05H;被写入的块地址(扇区1的块1)SmartCardSmartCardORG 0000H AJMP MAIN ORG 0050HMAIN:MOV SP,#60H;重新设置堆栈 CLR EA;关闭所有中断 CLR P3.

27、4 SETB P3.3;关闭MCM200 NOP NOP CLR P3.3;激活MCM200 NOP LCALL D500MSSTART:NOP NOP MOV A,#80H;SOR软件复位 MOV R0,#01H MOVX R0,A NOP NOP LCALL D500MS CLR P3.3;再次激活MCM200 CLR P3.3SmartCardSmartCard MOV R2,#01H;选择REQUEST ALL 指令 LCALL REQUEST;请求响应REQUEST SETB p3.4 ;断点断点,查看查看TAGTYPE(20H)()(21H)LCALL ANTICOLLISION

28、防冲突ANTICOLLISION SETB P3.4 ;断点断点,查看查看SN(30H)(34H)LCALL SELECT;选择卡片SELECT SETB P3.4 ;断点断点,查看查看SIZE(22H)LCALL LOAD_KEY;下载密码 SETB P3.4 LCALL AUTH;密码认证AUTHENTICATION SETB P3.4 LCALL WRITE;写数据WRITE SETB P3.4 LCALL READ;读数据READ SETB P3.4;断点断点,查看数据查看数据 NOP ;(40H)(4FH),(),(50H)(5FH)NOP LCALL HALT;停止 LJMP START SJMP$SmartCardSmartCard

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服