新版非接触IC卡读写器使用说明_第1页
新版非接触IC卡读写器使用说明_第2页
新版非接触IC卡读写器使用说明_第3页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

1、新版非接触IC卡开发板使用说明新版非接触IC开发板功能强大,可以作为一个读写卡器,通过 1602或 12864液晶屏显示相关信息,也可以作为一个独立的产品,实现相关功 能,如门禁系统需要另购程序、电子钱包功能需要自编或与我们 联系。第一局部 上位机为DELPHI,1602 显示读写卡、下载下位机1602程序1.把串口线如果是笔记本电脑,须采用 USB转串口线将开发板与PC机连接好。2. 把1602液晶显示器插在开发板上3. 翻开STC下载软件,选择STC89C516RD+单片机,内部扩展选择禁止内部AUX-RAM ,如下图:SIC-liP- CEGBittps /t»-t. CU-J

2、icMGry co: 1 dPMUbl JOVcr= J»孔口冋叼£Wpl/齿購】 晁<UU Irpa逸昇单斤<1型号<J' Wn-nrvXC0 - PTFFHCV Tyjt3rzsgc5iflE<iM-主軸沖区|»_ |帝口尉期手 二巻丈陣FlL« BufferST氓 Orel. TLle i打JF空40怦常田內耒用区熾肩世IdIP打齐丈知il港口竦沖wi】JFUEZhnf打一可刖用直|嚟“II51切时歩尊3 Sdz* RH F*rl.Tzd/诜弄串仃口,皐囱f庄粉罕坛高iS特率诒宜麻商肘雜蠻禾怦奇瞬草=毘低我特率:CO

3、M: C0M1115200t12002乩讪呼棄臥m £P«d迪y倍連,龄寸力善連JI亶 104.11«、片显 / SI2f " CTF敷K 湮 跑血龙料理IE1比扛需惬匸燧側肛4下版盜屯益M世-/Z丹m忆1ZV单直豆(* Full C.HL L1下炊冷目閱鬥.円一 1 F与F旣尢恙厂寻丹.册矿F監民圜0动 丹卸扩兼MJK-EAH:心 睡1唳,许访可血夬推和Tltf華习尸血书鼬罚曲昼Fd血-4跚-115* M.nnniazm rxnrsOOODOOooJL0000 co00innnntcnnnoonnil connDODZCiooaDan cc00(JUU

4、UiuuDu加0D 00uuOOODIOooDJ00OD CC00OOOD5ZIooOjoano rc noUUUU 乩UDQJ 00uo 00uu00007.<00oc00皿0Q皿00ODKooM000D CC 00000097)oo0100Oft re oonnnnft.7ngm nona nnnnOOODBO00DOaooa co00OOODC:'OOrc0000 CC00nnnnK'noDOno OTnnOODEZi0QOD ccoaOOTDPjuuIDuuOj uLU0OOOLDOooDJ00OD CC00ooniironJ00no rr nonH7nIIfrr

5、o n Q u o n u o D o n u o n a u o n o n o u Q o u Q o 0 n o o n o u o -I DOQOflogDOooIrlooooDOrriDaDOootEIxDOoo onouoouooonoonouoo o n u o n u Q o o n o o n u o n OTWMMOTOTmaMOTmOTMOTOTmaM olQJQOOODnnoonoJOO DnDuon-U.UDOn.uDnDuon- oouoou.woranjoflooo o n o u Q o u Q o o n o o n _u u Q o Oofluo0uoort

6、noooou-O0 on-uuoou-uoonoonouoo c c c u- Q o o c c r _L c o o c u Q G Ono uoo noon-noOno u o n- gnnDOooegmeraocirnmooDOBDa進現'冃话舅下葢I曲规下童梅罰CUJt顼I自讷編I ISP MCjltg疽歼®厂鼠M下载師丙Id上电昱处睜启动wr汕車壬下鲨吟沁下軽削壷蔚册.已打応蛛;临駄止井,力便闲试砌 厂些目卷吒足览尘超KE豐影肿比电井左即沁T输赋'Co*nl*id/Tft吊5询1口以下瑚也针对nc购氏1冊切站庠.rt倔贞斗礪疋敦 用口狀件日聞k部亡1一羽定

7、匚百停T青门捐忖臭应主看门頤二片或匕广E-泊抉绢普:査是e 一.乩严M ? I/O ?:. l.'T.j ;巧一 JC :L 匚静护i至賈帝 空益 連口灵可农下良病磴冃户应第藩门如E V? _J1- I 陋昙潇j姑霍霞鶴津 桂取 4腳 Jw J旦口宅酹 向秤孰忖尹逝!十卞总J*功転芒硯玄* *is in重宾下艇鬥氏时间电'ili-三启計d,广写宇才寸UI下戢锂学v氏功计趙2?!«话-兀辽*肝HCJ-er»try =即冋鮎,那么J升颈4点击翻开按钮,找到1602下位机源程序中的hex文件。再点击下载按 钮,提示给开发板上电,此时,用USB线给开发板供电,将程序

8、下载到 开发板的单片机中。、用DELPHI上位机软件读写卡1.双击启动测试软件,进入功能选项“参数设置里面,可以设置串口 通讯参数:串口号、波特率、校验 位、数据位、停止位等等,设置玩了 以后点击“修改串口,如果出现“串口参数设置成功,说明串口设置成功,如果出现异常,请按照提示做出改动。2设置完毕以后可以点击“测试读卡器,如果出现“读卡器连接成功 并且听到读卡器的风鸣器响声,证明串口设置正确,如果出现“读卡器 连接失败,说明串口设置有问题,请重新设置。读写器默认参数:Com1、9600bps、N、8、1.4. 进入功能选项“低级操作里面点击“寻卡,如果出现“寻卡成功! 说明寻卡正常,如果出现“

9、执行失败!说明出现异常,请检查卡片是否 在寻卡范围内,如果确认卡片没有问题,那么程序下载不正确,或读写 器异常。5. 点击“防冲突,如果出现“执行成功说明防冲突正常,如果出现 “执行失败说明读写器出现异常或者卡片没有在天线区域范围内。-inlxi低级撰作寻卡信息显不IC卡读写撫作程序命令;寻卡 拮果:寻卡成功 徴卡片 jJh/lihre one:防榨:陶怀咸功;16BAD9e选挥终止I参數诒畳 低级撫作 国码下载|数据僮写|块值操件|修改密码|堆接收6点击“选择,如果出现“执行成功说明选择正常,如果出现“执 行失败说明读写器出现异常或者卡片没有在天线区域范围内。信-息显不Shi;卡棵作弗令;寻

10、卡 皓果:寻卡成功 徴卡片 Jkihre one:防榨:陶怀咸功命令:选择 结果选择成功;16BAD9?终止I悲數诸置 低飯撫作 国码下载 數翳喚写埃佰操件 修改窖码堆接収7. 进入功能选项“密码下载里面下载卡片密码,比方需要测试卡片扇 区1数据的读写,那么就在扇区1后面填上密码A/B 注:卡片的初始密码A/B均为全 F',然后选择“ A组密码或者“ B组密码, 最后点击“下载,如果出现“密码下载成功说明密码下载成功,如果出现异常请按照错误提示更改后再下载一次,直至“下载成功为止 如果密码下载不成功,下步操作无法进行,即无法读写卡。8. 进入功能选项“数据读写里面,“请选择扇区号下面的

11、可拉选项里 面选择第5步下载密码的扇区号比方扇区1,然后点击“读出,如 果提示“第*扇区数据读出成功说明读数据正确。如果出现“第 *扇区 数据读出失败说明密码校验出错或者出现其他异常, 请返回第5步重 新下载密码。第1扇区连取成功块3 |QOODOOOOOOOOFFM却関FTFFFFFFFFFF巻數诒置偃级撫住|巒码下载 数翳读写 阪佰操住|修改密码堆接収9. 如果读数据正确,在块0、块1、块2后面修改数据,比方改成:“块0: “块1: “块2: 然后点击“写入,如果出现“第*扇区数据写入成功说明写入数据 正确。如果出现“第*扇区写入失败说明密码校验出错或者出现其他 异常,请返回第5步重新下载

12、密码。10. 再次点击“读出键,然后点击“读出,如果提示“第 *扇区数据 读出成功说明读数据正确,再比照块 0、块1、块2是否和第7步写 入的数据一样,如果数据一样,证明写入成功了。如果出现“第 *扇区 数据读出失败说明密码校验出错或者出现其他异常, 请返回第5步重三、Mifare One 卡片块值测试1. 进入功能选项“块值操作里面,在“扇区号下面的可拉选项里面 选择下载密码的扇区号比方扇区1,在“块号下面的可拉选项里 面选择你想测试的块号比方第1块2. 在“操作值后面填上你所希望的初始值比方“ 11111111 , 然后点击“初始化,如果出现“数据初始化成功说明操作成功。如 果出现“数据初

13、始化失败说明操作失败,请检查密码是否正确,返回 第前面重新操作一次。3. 点击“读出,如果在“当前值后面出现是你原来写进去的初始值, 证明操作正确,如果“数据读出失败说明块值操作有异常,请重新初 始化。4. 在“操作值:后面填上你所希望的操作值比方“ 22222222 , 然后点击“加值,如果出现“数值加操作成功,说明操作成功。如 果出现其他提示说明操作失败。5. 点击“读出,如果在“当前值:后面出现是你初始值加上加值(11111111 + 22222222 = 33333333 )说明操作正确,如果是其他 的值说明失败。初始化|二庚吃加值减值|蓉數谡置|偃级舉住|密码下载|数据悽写 块值操企

14、丄修改密码|绘送播收6. 在“操作值:后面填上你所希望的操作值(比方“ 11111111 ), 然后点击“减值,如果出现“数值减操作成功,说明操作成功。女口 果出现其他提示说明操作失败。7. 点击“读出,如果在“当前值:后面出现是你当前值减去操作值(33333333 11111111 = 22222222 ),说明操作正确,如果是其 他值说明失败。四、修改密码和控制位1. 进入功能选项“修改密码里面,在“扇区号下面的可拉选项里面 选择前面下载密码的扇区号比方扇区1 。2. 在“密码A和“密码B后面分别写入你想修改的密码 A和密码B3. 卡片控制位修改之前请详细阅读卡片资料,因为控制位修改不正确

15、, 就会导致卡片不能再使用,请务必小心使用。4. 在控制位后面填上该扇区的控制位。5. 点击“修改密码,如果出现“修改密码成功,表示操作正确,如 果出现出错提示,请按照出错提示做相应的处理。注:密码修改后请 务必记住,密码遗忘卡片就不能再次是使用了。五、调试信息进入功能选项“调试信息里面,在“串口信息发送与接受处可以看 到PC机和读卡器之间通讯的详细过程,对调试非常有帮助。Shi;卡摆作-I IN六、注意几点1. STC单片机下载程序时,一定要选AUX-RAM禁止访问。2在密码下载选项卡中,要先输入相应扇区的密码后比方扇区1输入: FFFFFFFFFFFF,才能读出和写入扇区1的数值,否那么,

16、无法读取和 写入扇区1,其它扇区依次类推。3当修改密码时,一定要记住,初始密码为FFFFFF,如果要修改为111111,请在修改密码的选项卡进行修改,修改后,密码即为111111,如果要改回到FFFFFF,请先将111111密码先下载,然后才能回到修改 密码选项卡,对密码进行修改。修改完成后再下载,就可以读取数据了, 否那么,假设密码不正确,那么无法读取数据。4液晶显示只显示局部信息,使用者可根据情况,通过修改程序,显示 相应信息。第二局部上位机为DELPHI,12864 并口显示读写卡将带汉字库的12864液晶显示屏插到开发板上,下载好程序,其它使用方法与第一局部完全相同。注意,12864显

17、示的信息为局部内容,如果要显示其它信息,请自 行修改下位机源程序。第三局部上位机为VB,不采用液晶屏读写卡、下载下位机程序1. 把串口线如果是笔记本电脑,须采用 USB转串口线将开发板与 PC机连接好。2. 把1602液晶显示器插在开发板上。3. 翻开STC下载软件,选择STC89C516RD+单片机,内部扩展选择允 许内部AUX-RAM ,如下图:4点击翻开按钮,找到下位机源程序中的hex文件。再点击下载按钮, 提示给开发板上电,此时,用USB线给开发板供电,将程序下载到开发 板的单片机中。、用VB上位机软件读写卡1. 安装VB6软件,并将MSCOMM32.C文件 拷贝到windowssys

18、tem32里 面去。如果之前已经拷贝,就不用再拷贝了。2.双击启动可执行软件RFID Tools,选择串口,这里使用的是USB转 串口线,虚拟串口号为COM3,点击翻开串口,如下图:2.翻开串口后,将卡放到开发板天线附近,此时,会显示卡号,如图所示:3. 在密码A、密码B编辑框中输入射频卡的相应密码,并选择使用A密 码或B密码。一般射频卡的初试密码是12个F。之后点击“装载密码, 密码将被送往单片机用于读写卡操作时的密码认证。4. 之后将射频卡靠近RFID DEMO天线,将会自动进行读卡操作,读 出卡的卡号并显示在 RFID Tool中。如果密码正确,电脑将发出短促清脆的“嘀声,RFID_To

19、ol下半局部的数据显示区将默认显示第1扇区第4块的16个字节的数据。如果密码错误,电脑将发出“嗤嗤的声音,卡号显示为 30303030,显 示数据也不会更新。5. 要读出其他扇区其他块的数据,只需输入相应的扇区号和块号,点 击“读卡操作。之后将射频卡靠近天线即可,数据显示区将会自动显示读出的数据。6. 要往某扇区某块中写入数据,首先按照前面的操作,读出该块的数 据,之后在数据显示区直接修改,输入要写入的新数据,然后点击“写 入数据,再将射频卡靠近天线即可。要验证写卡是否成功,可以按照前面的步骤,先读另外某个扇区某个 块的数据,再重新读出刚刚写入过的块,看看数据显示区域的数据是否 正确更新显示7

20、. 加减值对于块数据有格式要求,所以我们先将块数据初始化为要求 的格式,上位机以初始化为数值0x00000055为例。选择某扇区某块, 之后点击“初始化数值块value: 55,然后将射频卡靠近天线即可,可以看到数据被初始化为如下值:之后点击“增加一数据块,然后将射频卡靠近天线,可以看到数 据更新,相应的增加了 1点击“减少一数据块,然后将射频卡 靠近天线,可以看到数据更新,相应的减少了 1。三、软件说明1.软件目录结构说明源程序文件夹中有这样几个目录文件:SourceFile 目录:全套源代码.c和.h 放在该目录下。后文将介绍源代码结构。Keil目录:单片机程序使用Keil编译,相关文件在

21、该目录下。编译时,翻开Keil,点击菜单Project->Open Project ,选择KeilP1200.Uv2翻开编译工程,之后点击工具栏的即可编译。编译生成的目标代码是 Keil P1200.hex ,后面用单片机下载程序下载 的目标代码也就是这个文件。需要 Keil 的用户请自行下载或者与我们联系,由于该程序体积较大不 包含在资料包中。其他 Desig nEasy_RFID.* 文件:我们通常使用 Source Insight V3.5查看代码,这是一款功能强大的代码编辑、阅读工具,用不同的颜色区分不同的语句,而且查找搜索十分 方便。这些假设干 DesignEasy_RFID.

22、* 文件即是 Source Insight 的工程文 件。已经安装了 Source Insight V3.5 程序的用户可以直接双击 DesignEasy_RFID.PR 即可用 Source Insight 查看代码。需要Source In sight 的用户请自行下载,由于该程序体积较大不包含 在资料包中。当然,用户可以使用任意自己熟悉的代码查看软件或者编辑器,不是一 定非要用 Source Insight ,不用 Source Insight 的用户可以忽略或者 删除根目录下的那些DesignEasy_RFID.*文件。2. 源代码系统图解 8bit 并行接口以下描述适用于 8bit 并

23、行接口,也就是适用于 RC500、RC531、RC632、FM1702NL这些读卡器芯片。RFID从上图可以看出,单片机程序局部,有 3条主线(粉红色标注局部):外部中断1中断处理函数RC500ISR()uart 中断处理函数 UartlnterruptService()main()中检测卡、读写卡的操作cmd_inqury()以下分别介绍。3. uart 中断处理函数 UartInterruptService()MCU的uart功能,每从串口接收到1个字节的数据,就会产生一次uart 中断。因此在uart中断处理函数中,我们需要将屡次接收到的数据按照规定的数据格式进行解析, 获取上位机程序向

24、单片机发送的命令。此外,MCU通过读卡芯片,获得卡的ID信息,以及卡上的数据,也要 通过串口发回上位机程序。接收和发送的串口数据格式定义如下:A起始符命令 类型命令数携符1 Bte 1 Eyte < 1 dOBles1 BsFe块号怨加2Bytes密码资按 12BTes读写救掘 32BUesID 数掘 8Btes w起始符:1个字节,一定为0x02;命令,包括命令类型1个字节和命令数据小于100个字节,其中命令数据为1种或者多种具体的数据内容组成。根据命令类型不同,命令数据的格式也不同,具体如下:上位机发向单片机:a. 命令类型为0x30:装载某个块的A密码,命令数据为2字节的块号数据

25、加上12字节的密码数据。b. 命令类型为0x31:装载某个块的B密码命令数据为2字节的块号数据 加上12字节的密码数据。c. 命令类型为0x32 :读取某个块的数据命令数据为2字节的块号数据。d. 命令类型为0x33:向某个块写数据命令数据为2字节的块号数据 加上32字节的读写数据。e. 命令类型为0x34:将某块初始化为加减值要求的格式命令数据为2字节的块号数据f. 命令类型为0x35 :加值操作无命令数据g. 命令类型为0x36:减值操作无命令数据单片机发向上位机:h. 命令类型为0x39:上传卡ID命令数据为8字节ID数据。i. 命令类型为0x32 :读到某个块的数据命令数据为2字节的块

26、号数据 加上32字节的读写数据。结束符:1个字节,一定为0x03;各种类型的命令数据都用ASCII码传输,具体格式定义如下:块号数据:2字节第一字节表示扇区号的ASCII码,第二字节表示扇区内块号的ASCII 码。比方,第4个扇区内的第2个块块号为:13 = 3x4+1,因为标号都从 0开始将表示为:0x33 0x31,也就是字符: 3'1'密码数据:12字节相邻2个字节组合成1个字节的密码,分别为高4bit的ASCII码和低 4bit 的 ASCII。比方,密码假设为:0x1234567890AB 6字节将表示为:0x30 0x31 0x32 0x33 0x34 0x35 0

27、x36 0x37 0x38 0x39 0x30 0x41 0x42,也就是字符: 0'1' 2' 3' 4' 5'6' T 8'9' A B'读写数据:32字节 相邻2个字节组合成1个字节的数据,分别为高4bit的ASCII码和低4bit 的 ASCII。比方,如要往卡内写入数据的某字节是 0x12,将表示为:0x30 0x31, 也就是字符: 1' 2'ID数据:8字节相邻2个字节组合成1个字节的数据,分别为高4bit的ASCII码和低4bit 的 ASCII。比方,如果 ID 是0X1234AB

28、CD将表示为 0x31 0x32 0x33 0x34 0x41 0x42 0x43 0x44,也就是 1' 2' 3' 4'A B' uart中断处理函数UartInterruptService 中,将根据以上数据格式定义,对接收到的数据进行解析,将解析的结果存放在 OperateState 、BlockNo、MKeys blockdata 等 全局变量中。4. main()中检测卡、读写卡的操作cmd_inqury() cmd_inqury()中的主要操作流程是:检测是否有卡靠近;如果有,选择某张卡(如果有多张的话),获得卡ID ;进行密码认证;如果密

29、码认证通过,那么根据 OperateState的值进行相应操作; 通过串口将读到的数据传给电脑;等待卡离开其中,通过串口将ID或者读到的数据传给电脑,数据的传输格式如前 所述。其中,对卡的操作函数,诸如 Request、AnticollSelect 、Authentication 等,是NXP提供的函数接口,里面的操作主要是根据芯片工作流程、向读卡芯片内读、写数据,有兴 趣请查看代码中的注释和定义。四、加减值说明值加减的意义:Mifare1卡大量应用于小额消费领域,所以有冲值和消费两种。 对于消费来说,只需要关心扣款即可,不需要知道卡里面有多少钱。 而一般常规的扣款操作从卡中读出金额,与扣款金额相减,相减后把值 返回卡中,这样很容易导致一个问题:1:知道卡中金额2:通过扣款权限可以对卡进行冲值,导致作弊所以一般Mifare1卡的A密钥为扣款密码,B密钥为冲值密钥,而对金 额的管理权限也只能是加值或者减值,不能同时拥有两者。 以上就是值加减的来由。一般的说,金融行业,把B密钥作为冲值,有相应的密钥管理卡,一般 叫冲值SAM卡,把A密钥

温馨提示

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

评论

0/150

提交评论