低频ID卡读取设计Word格式文档下载.docx

上传人:b****6 文档编号:21036141 上传时间:2023-01-27 格式:DOCX 页数:11 大小:443.28KB
下载 相关 举报
低频ID卡读取设计Word格式文档下载.docx_第1页
第1页 / 共11页
低频ID卡读取设计Word格式文档下载.docx_第2页
第2页 / 共11页
低频ID卡读取设计Word格式文档下载.docx_第3页
第3页 / 共11页
低频ID卡读取设计Word格式文档下载.docx_第4页
第4页 / 共11页
低频ID卡读取设计Word格式文档下载.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

低频ID卡读取设计Word格式文档下载.docx

《低频ID卡读取设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《低频ID卡读取设计Word格式文档下载.docx(11页珍藏版)》请在冰豆网上搜索。

低频ID卡读取设计Word格式文档下载.docx

课程设计所需软件、硬件等

12864液晶显示屏

AVR仿真器

电源适配器

IARforAVR软件

课程设计进度计划

起至日期

工作内容

备注

2014年12月

2014年12月中旬

2014年12月底

2015年1月

进行可行性研究,完成选题。

根据选题查阅资料、进行概要设计,确定设计方案。

详细设计,实施设计方案,编写程序、调试程序。

完成课程设计(任务书)的撰写。

参考文献、资料索引

序号

文献、资料名称

编著者

出版单位

[1]王志良.物联网:

现代与未来.北京:

机械工业出版社,2010

[2]刘云浩.物联网导论.北京:

科学出版社,2010

[3]周洪波.物联网:

技术、应用、标准和商业模式.北京.电子工业出版社2010.

[4]伍新华.物联网工程技术.北京.:

清华大学出版社,2011.

[5]罗海波. 

一卡通系统的安全性研究[J].科技广场,2010,(07):

74

1.实验设计原理

(1)标签

低频段射频标签简称低频标签,其工作频率范围30~300KHZ。

典型的工作频率为125kHZ和133kHZ。

低频标签一般为无源标签,其工作能量通过电感耦合方式从读写器耦合线圈的辐射场中获得。

低频标签与读写器之间传送数据时,位于读写器天线辐射的近场区内。

(2)读写器

读写器只要完成的工作包括:

载波频率的天线驱动。

对发送的数据进行AM调制后传送到天线上并发送。

解调天线上感应到的AM信号。

(3)天线

低频125kHZ频率天线耦合方式为电感耦合,所以在电路PCB上制作天线需要考虑具有足够的电感量。

线圈的绕制采用螺旋形方式,根据对电感量的要求和线圈的面积来确定电路板的层数,并在各层上以保证每层中电流的方向相同为前提来制作线圈。

2.实验步骤

2.1硬件的连接

(1)插上12864液晶显示屏

(2)设置跳线,将JP8的八个跳线全部短接

(3)若需要RS232或RS485通信,则连接RS232电缆或RS485电缆

(4)连接AVR仿真器

(5)插上电源适配器

2.2实验程序的下载

(1)运行IAREmbeddedWorkbench

(2)写入实验程序

(3)参数设置

(4)编译程序

(5)调试程序

(6)实验过程操作

3.实验内容

3.1主函数编写

主函数负责对IO口、液晶屏等进行相应初始化,以便各部件和模块能够正常工作。

本例中主函数源码清单如下所示:

voidmain(void)

{

delay_ms(50);

LCD_init();

gpio_init();

//初始化液晶屏显示

LED_CLR;

SHD_CLR;

loc(1,0);

LCD_display("

----请刷卡------"

);

loc(2,0);

"

while

(1)

{

//定时读取ID卡号

while(0==DY--)

{

delay(5);

//20000

read_rfid();

}

}

}

3.2卡号读取

低频RFID卡号的读取需要判断帧头和曼彻斯特码解码,并注意验证相应的校验码,以确保能够读到正确卡号,可封装成为函数Read_Card(),其源码清单如下所示:

ulongRead_Card()

uchari=0;

ucharerror;

ucharerror_flag;

ucharrow,col;

ucharrow_parity;

ucharcol_parity[5];

uchar_data;

ulongtemp;

uchartimeout=0;

if(timeout==100)

return0;

else

timeout++;

while(DEMOD_OUT==0);

Delay384us();

if(DEMOD_OUT)

for(i=0;

i<

8;

i++)

{

error=0;

while(DEMOD_OUT)

{

if(error==TIME_OF)

{

error_flag=1;

break;

}

elseerror++;

}

Delay384us();

if(!

(DEMOD_OUT&

&

error_flag==0))

break;

}

if(i==8)

{

error_flag=0;

{

error_flag=0;

col_parity[0]=col_parity[1]=col_parity[2]=col_parity[3]=col_parity[4]=0;

for(row=0;

row<

11;

row++)

for(col=0,row_parity=0;

col<

5;

col++)

Delay384us();

if(DEMOD_OUT)_data=1;

else_data=0;

if(col<

4&

10)

{

temp<

<

=1;

temp+=(ulong)_data;

}

else;

row_parity+=_data;

col_parity[col]+=_data;

error=0;

while(DEMOD_OUT==((_data&

0x01)<

PC1))

if(error==TIME_OF)

{

error_flag=1;

break;

}

elseerror++;

if(error_flag)break;

if(row<

10)

if((row_parity&

0x01)||error_flag)

temp=0;

error_flag=1;

break;

if(error_flag||((col_parity[0]&

0x01)&

(col_parity[1]&

(col_parity[2]&

(col_parity[3]&

0x01)))

error_flag=0;

temp=0;

continue;

elsereturntemp;

continue;

error_flag=0;

continue;

3.3卡号转换

MCU读取的ID卡号为二进制,并不能直接用于显示,还需要转换成为十进制,进一步还需要转换成为ASCII码才能送至液晶屏显示,此部分功能可封装成为函数,其源码清单如下所示:

voidread_rfid()

ulongSN;

SN=Read_Card();

if(SN)

BEEP_SET;

LED_SET;

loc(3,0);

LCD_display("

刷卡次数:

”);

if(SN==0x000E8714)

num1++;

if(num1>

100)

num1=0;

loc(3,5);

wr_data(ASCII[(uchar)(num1/100)]);

wr_data(ASCII[(uchar)(num1%100/10)]);

wr_data(ASCII[(uchar)(num1%10)]);

elseif(SN==0x00535181)//535181

num2++;

if(num2>

num2=0;

loc(3,5);

wr_data(ASCII[(uchar)(num2/100)]);

wr_data(ASCII[(uchar)(num2%100/10)]);

wr_data(ASCII[(uchar)(num2%10)]);

loc(1,0);

卡号:

loc(2,2);

wr_data(ASCII[(uchar)(SN/1000000000)]);

wr_data(ASCII[(uchar)(SN%1000000000/100000000)]);

wr_data(ASCII[(uchar)(SN%100000000/10000000)]);

wr_data(ASCII[(uchar)(SN%10000000/1000000)]);

wr_data(ASCII[(uchar)(SN%1000000/100000)]);

wr_data(ASCII[(uchar)(SN%100000/10000)]);

wr_data(ASCII[(uchar)(SN%10000/1000)]);

wr_data(ASCII[(uchar)(SN%1000/100)]);

wr_data(ASCII[(uchar)(SN%100/10)]);

wr_data(ASCII[(uchar)(SN%10)]);

delay_ms(20);

BEEP_CLR;

while(DY--)

delay(2000);

//20000

else

loc(2,0);

loc(4,0);

www.dong-"

LED_CLR;

4.实验运行结果

将程序下载至低频RFID阅读器开发板中,运行程序后,一张ID卡片靠近读卡天线,如图3-31所示。

图3-31低频RFID读卡实验

则液晶屏上将会显示其卡号,如图3-32所示。

图3-32低频RFID卡号显示

5.实验总结

通过这一周的无线传感课程设计,我复习了RFID的基本概念、语法、语义和数据类型的使用特点,加深了对课堂所学理论知识的理解,掌握了运用结构化程序设计的基本思想和方法,更重要的是培养了自己的自学能力。

在平时的无线传感课实验课中我们不少接触RFID,但在这次在编写程序以及调试的过程中中遇到了很多困难,因此我通过去图书馆查找资料,请教同学,再自己一点点改善程序,最终编写出一些比较完善的程序,这使我使我在这次课程设计过程中学到了很更多的知识,使我对无线传感技术处这门课有了更加的了解和掌握。

在这一周中的学习使我对无线传感处理这门课程有了进一步的理解。

经过查阅相关资料,逐步地掌握了RFID的设计过程,使我加强了对实际问题的动手和思考和解决能力。

但也暴露出了自身的许多不足,如自主解决问题的能力有所欠缺,这在以后学习过程中需要更好的加强。

在这一周中每天都是忙碌的,但我觉得很充实,自己学到很多东西,也加深我对无线传感处理学习兴趣。

RFID里边的公式虽多,但理解了它、掌握了它,就会发现其中也是有规律可循。

这一次的课程设计中培养了我如何去学习和掌握新知识能力,这对以后的学习上很大的帮助。

在设计过程中,我们组成员共同讨论,为对方查找错误,提示建议,在这个过程中我们收获甚多,也培养了自己的合作精神。

同时我们发现自己的程序还有很多地方可以完善。

程序的界面可以做得更加人性化,这样使用户使用方便。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 工学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1