课程设计报告Word文档下载推荐.docx
《课程设计报告Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《课程设计报告Word文档下载推荐.docx(24页珍藏版)》请在冰豆网上搜索。
C8051F340单片机
C8051F系列单片机特点
1.片内资源
(1)8~12位多通道ADC
(2)1~2路12位DAC
(3)1~2路电压比较器
(4)内部或外部电压基准
(5)内置温度传感器±
3
(6)16位可编程定时/计数器阵列PCA可用于PWM等
(7)3~5个通用16位定时器
(8)8~64个通用I/O口
(9)带有I2C/SMBusSPI1~2个UART多类型串行总线
(10)8~64KFlash存贮器
(11)256~4K数据存贮器RAM
(12)片内时钟源内置电源监测看门狗定时器
2.主要特点
(1)高速的20MIPS~25MIPS与8051全兼容的CIP51内核
(2)内部Flash存贮器可实现在系统编程即可作程序存贮器也可作非易失性数据存贮
(3)工作电压为2.7V~3.6V典型值为3VI/ORSTJTAG引脚均允许5V电压输入
(4)全系列均为工业级芯片-45℃~+85℃
(5)片内JTAG仿真电路提供全速的电路内仿真,不占用片内用户资源,支持断点单步观察点运行和停止等调试命令支持存贮器和寄存器校验和修改
射频卡读写接口电路
RC500以并行方式工作,通过单片机P0口的总线方式连起来,单片机利用其本身的总线控制功能,与RC500进行通信。
RC500使用了13.56MHz晶振。
MFRC500是应用于13.56MHz非接触式通信中高集成读卡器IC系列中的一员。
该读卡IC利用先进的调制和解调概念,完全集成了13.56MHz下所有类型的被动非接触式通信方式和协议。
MFRC500能够支持ISO14443A所有的层。
其内部的发送器部分不需要增加有源电路就能够直接驱动近操作距离的天线(可达100mm);
MFRC500的接收器部分提供有一个坚固而有效的解调和解码电路,可用于ISO14443兼容的应答器信号;
数字部分则用于处理ISO14443A帧和错误检测(奇偶&
CRC)。
此外,它还支持快速CRYPTO1加密算法,以用于验证MIFARE系列产品。
其方便的并行接口可直接连接到任何8位微处理器上,这样就给读卡器/终端的设计提供了极大的灵活性。
MFRC500的主要特点如下:
(1)带有高集成度模拟电路以用于卡应答的解调和解码;
(2)缓冲输出驱动器可使用最少数目的外部元件以连接到天线;
(3)近距离操作(可达100mm);
(4)有用于连接13.56MHz石英晶体的快速内部振荡器
(5)带低功耗的硬件复位功能;
(6)并行微处理器接口带有内部地址锁存和IRQ线;
(7)有易用的发送和接收FIFO缓冲区;
(8)支持MIFAREClasic;
(9)支持MIRFARE有源天线;
(10)适合高安全性的终端。
系统时钟电路
使用22.1184MHz晶振作为系统时钟,以满足信息处理速度快的要求
液晶接口
ET-G12864采用串行方式连接,三个数据口分别接在P1、P2。
液晶显示器是用来显示刷卡后卡的状态,支持中文显示。
带中文字库的128X64是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;
其显示分辨率为128×
64,内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。
可以显示8×
4行16×
16点阵的汉字.也可完成图形显示.低电压低功耗是其又一显著特点。
由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块
基本特性:
(1.低电源电压(VDD:
+3.0--+5.5V)
(2)显示分辨率:
128×
64点
(3)内置汉字字库,提供8192个16×
16点阵汉字(简繁体可选)
(4)内置128个16×
8点阵字符
(5)2MHZ时钟频率
(6)显示方式:
STN、半透、正显
(7)驱动方式:
1/32DUTY,1/5BIAS
(8)视角方向:
6点
(9)背光方式:
侧部高亮白色LED,功耗仅为普通LED的1/5—1/10
(10)通讯方式:
串行、并口可选
(11)内置DC-DC转换电路,无需外加负压
(12)无需片选信号,简化软件设计(13)、工作温度:
0℃-+55℃,存储温度:
-20℃-+60℃
电源
蜂鸣器
蜂鸣器的作用是提示用户刷卡操作成功
MIFAIRE1卡分析
概述
PHILIPS的Mifare1非接触式IC卡又称射频卡,是世界上最近几年发展起来的一项新技术,它成功地将射频识别技术和IC卡技术结合起来,解决了无源(卡中无电源)和免接触这一难题,是电子器件领域的一大突破。
1、可靠性高
非接触式IC卡与读写器之间无机械接触,避免了由于接触读写而产生的各种故障。
此外,非接触式卡表面无裸露的芯片,无须担心芯片脱落、静电击穿、弯曲损坏等问题,既便于卡片的印刷,又提高了卡片的使用可靠性。
2、操作方便,快捷
由于非接触通讯,读写器在15cm范围内就可以对卡片操作,所以不必插拔卡,非常方便用户使用。
非接触式卡使用时没有方向性,卡片可以任意方向掠读写器表面,即可完成操作,这大大提高了每次使用的速度。
3、防冲突
快速防冲突机制,能防止卡片之间出现数据干扰,因此,读写器可以“同时”处理多张非接触式IC卡。
这提高了应用的并行性,无形中提高了系统4、工作速度。
4、可以适合于多种应用
非接触式卡的存储结构特点使它一卡多用,能应用于不同的系统,用户可根据不同的应用设定不同的密码和访问条件。
5、加密性能好
非接触式卡的序列号是唯一的,制造厂家在产品出厂前已将此序列号固化,不可再更改。
非接触式卡与读写器之间采用双向验证机制,即读写器验证IC卡的合法性,同时IC卡也验证读写器的合法性。
非接触式卡在处理前要与读写器进行三次相互认证,而且在通讯过程中所有的数据都加密。
此外,卡中各个扇区都有自已的操作密码的访问条件。
M1卡的电气特性
容量为8K位EEPROM:
1.分为16个扇区,每个扇区为4块,每块16个字节,以块为存取单位;
2.每个扇区有独立的一组密码及访问控制;
3.每张卡有唯一序列号,为32位;
4.具有防冲突机制,支持多卡操作;
5.无电源,自带天线,内含加密控制逻辑和通讯逻辑电路;
6.工作温度:
-20℃~50℃;
7.工作频率:
13.56MHZ;
8.通信速率:
106KBPS;
9.读写距离:
可达10mm(与读写器以及卡天线尺寸有关);
10.数据保存期为10年,可改写10万次,读不限次。
工作原理
卡片由一个卷绕天线和特定用途集成电路模块组成。
其中,模块由一个高速(106KB波特率)的RF接口。
一个控制单元和一个8K位E2PROM组成。
读写器向MF1卡发出一组固定频率(13.56MHZ)的电磁波,卡片内有一个LC串联谐振电路,其频率与读写器发射的频率相同,在电磁波的激励下,LC谐振电路产生共振,从而使谐振电容内有了电荷,在这个电容的另一端,接有一个单向导通的电子泵,将电容内的电荷送到模块存储电容内储存,当所积累的电荷达到2V以上时,此电容可作为电源向模块电路提供工作电压,将卡内数据发射出去或接收读写器的数据。
存储结构:
MF1卡分为16个扇区,每区有4块(块0~块3),共64块,按块号编址为0~63。
第0扇区的块0(即绝对地址块0)用于存放芯片商,卡商相关代码,已经固化不可更改。
其他各扇区的块0,块1,块2为数据块,用于存贮用户数据;
块3为各扇区控制块,用于存放密码A,存取控制条件设置,密码B。
各区控制块结构相同,如下所示:
各区控制块3结构
字节号
012345
6789
101112131415
控制值
FFFFFFFFFFFFFF
078069
FFFFFFFFFFFF
说明
密码A(0~5字节)
存取控制(6~9字节)
密码B(10~15字节)
控制属性:
每个扇区的用户密码和存取控制条件都是独立设置的,可以根据实际需要设定各自的密码及存取控制。
在存取控制中,每个块都有三个控制位相对应,用以决定某数据块或控制块的读写条件,定义为:
"
CXxy"
,见表1所示。
其中CX代表每块控制位号(C1~C3),x代表某块所属扇区号(0~15),y代表该扇区内某块号。
例如C1x2即为x扇区内块2的第1控制位,余此类推。
注:
控制位的设置存放在存取控制字节中,见表2所示。
表1:
控制位定义"
块0
C1x0
C2x0
C3x0
用户数据块,(0区0块除外)
块1
C1x1
C2x1
C3x1
用户数据块
块2
C1x2
C2x2
C3x2
块3
C1x3
C2x3
C3x3
密匙存取控制块
表2:
三个控制位在存取控制字节中的位置(注:
_b"
表示取反)
位号
字节号
bit7
6
5
4
3
2
1
字节6
C2x3_b
C2x2_b
C2x1_b
C2x0_b
C1x3_b
C1x2_b
C1x1_b
C1x0_b
字节7
C3x3_b
C3x2_b
C3x1_b
C3x0_b
字节8
字节9
BX7
BX6
BX5
BX4
BX3
BX2
BX1
BX0
所属块
块3控制位
块2控制位
块1控制位
块0控制位
各扇区数据块0~块2的三个控制位以正反两种形式存在于块3的存取控制字节中,它决定了该块的访问权限(例如进行减值及初始化值操作必须验证KEYA,进行加值操作必须验证KEYB,等等)。
三个控制位在存取控制字节(6~9字节)中的权限如下(阴影区的存取控制为厂商初始值;
字节9为备用字节,默认值为69):
注释:
表3中,KeyA|B表示密码A或密码B,Never表示没有条件实现。
表3:
数据块的存取控制权限(x=0~15扇区;
y=块0,块1,块2)
C1xyC2xyC3xy
读
写
加值
减值,初始化
000
KeyA|B
KeyA|B
010
Never
100
KeyB
001
011
101
111
MIFARE1卡的存储结构图
系统软件设计
总流程:
REQUEST发送请求-ANTICOLLISION防冲突-选卡-AUTHENTICATION密码验证-读卡-处理数据-写卡-显示
执行REQUESTSTD或REQUESTALL指令操作,读取MIFARE1非接触式IC射频卡的TAGTYPE字节,建立与卡片的第一步必不可少的通信联系。
TYPEA的初始化和防冲突采用位帖防冲突方案。
SELECT:
选卡片指令的指令码与AntiCollision同为93H,但AntiCollision指令中指令码后的NVB码为20H,表示该指令长度为2B,即将执行AntiCollision功能,而Selectr指令中的NVB70H,表示该指令长度为7B,即“1B指令码+1BNVB码+5BSN及校验码‘,此时将执行Select功能。
MCM发送AntiCollisionLOOP所选定的SN给天线范围内的卡片,卡片接收到该指令后将接收到的SN与自己的SN相比较,若匹配,则被激活,否则仍将保持在等待状态。
密码校验:
通过选择秘密地存储在MCM的RAM中的密码集中统一KEYSET)中的一组密码来进行认证而实现。
如果这一组密码与MIFARE1卡睥密码匹配,则这一次的操作被允许进行。
卡的应答则以STATUS位给出。
当STATUS为1时,表示密码出错,未能通过认证,当STATUS为0时,表示通过认证,可进
行下一步操作。
读卡:
指令操作只能一个块一个块地读,即只能一次性地读取16B。
如果只要某块中的几个字节的数据,则也只能一个整块16B一起读取,由程序员选取指定的字节。
从卡上读到的数据必须由MCU进行校验,以确保数据的有效
性,校验可采用两次读取并一一比较,检查是否一致的方式来完成。
写卡:
指令允许用户写数据MIFARE卡上,与READ相同,WRITE指令操作也只能一个块一个块地写,即只能一次性地写入完整的16B的数据块。
只有在先通过ANTHENTICATION认证后,才允许进行对要求的数据扇区或数据进行WRITE军事情报指令操作。
主函数
系统调试
总结与体会
非接触式IC卡自动收费系统中的应用,使得目前公交行业中的收费工作大为简化,有的可完全实现收费自动化管理,如公交系统、出租车、停车场和公路收费系统等,非接触式IC卡的收费过程所需时间短,大大提高了工作效率,减少了工作人员的负担,另外,非接触式IC卡的使用寿命较长,无须频繁换卡,这种以非接触式IC卡为媒介的收费系统具有广泛的应用前景。
通过这次实训,我们在不断的失败和尝试里,总结出来一个程序的成功与否必须经过多次的调试和检查,才能在密密麻麻的代码里找到错误,细心是很重要的!
同时,在准备这个课程设计的时候,我们更加了解了非接触式IC卡,最后谢谢夏老师对我们一个学期来的指导!