第一范文网 - 专业文章范例文档资料分享平台

125kHzRFID读卡器研究报告

来源:用户分享 时间:2025/6/8 14:13:37 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

//-------------------EM4095天线初始化---------------------// void Em4095_init() {

SHD=1; delay_ms(35); SHD=0; delay_ms(35); }

//--------------------脉宽计算子函数-------------------------// void Pluse_calculate() {

if(Input_Num%2==0) //Input_Num=0记录进入中断次数,偶数次记录上升沿时间

//奇数次记录下降沿,自动清零 {

Last_risingedge_time=Now_risingedge_time; //记录此次上升沿时间

Now_risingedge_time=TC7; //将检测到上升沿的时间赋值

33

} else {

Last_fallingedge_time=Now_fallingedge_time; //记录此次下降沿时间

Now_fallingedge_time=TC7; //将检测到下降沿的时间赋值

Pluse_width=Now_fallingedge_time-Now_risingedge_time;//此次高电平的脉宽

Last_L_width=Now_fallingedge_time-Last_fallingedge_time;//此次下降沿与上一次下降沿的宽度 } }

//------------------------数据头检测函数-------------------------------// void Head_check() {

if(Head_start)

Check_over=1; //当数据头检测完成后要等到下一个脉冲来到才能执行解码函数 else {

34

if(Pluse_width>=Min_halfbit&&Pluse_width<=Max_halfbit)//连续出现9个1/2bit的高脉冲

//则认为是数据头 { i++; if(i==9) {

Head_start=1; i=0; } }

else i=0; } }

//---------------------M码解码子函数-------------------------// void M_decode() {

if(Check_over) //数据头检测完成 并等到下一个脉冲到来 {

if(Decode_cnt

35

{

if(Pluse_width>=Min_halfbit&&Pluse_width<=Max_halfbit) //检测脉冲宽度是否为1/2bit

{

if(Last_L_width>=Min_1bit&&Last_L_width<=Max_1bit)//此次上升沿与上一次的下降沿

//是否为1/2bit {

if(Decode_cnt==0) {

Decode_data[0]=1;//如果是第一位数据,

直接解码为\

Decode_cnt++;

} else {

Decode_data[Decode_cnt]=Decode_data[Decode_cnt-1];//否则等于上一次的数据

36

搜索更多关于: 125kHzRFID读卡器研究报告 的文档
125kHzRFID读卡器研究报告.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c47o734hqrp1qw0b8dn6v_9.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top