AVR单片机驱动的125kHz RFID阅读器设计:EM4100解码与应用

5星 · 超过95%的资源 需积分: 11 20 下载量 137 浏览量 更新于2024-09-23 收藏 277KB PDF 举报
本文档主要探讨了一种基于AVR单片机的125kHz简易RFID阅读器的设计。在当今社会,射频识别(RFID)技术已经在各个生产和生活领域广泛应用,如门禁、公交系统等,显著提升了便利性。设计的核心是选用AVR单片机作为控制单元,这种选择的优势在于AVR的低功耗、高效能和易于编程的特点。 该阅读器的设计采用分立元件构建,电路结构简单,省去了昂贵的读卡基站芯片,大大降低了制造成本。它特别针对EM4100 RFID卡片进行了优化,这种卡片的工作频率为125kHz,适用于较短距离的数据交换,如8至15厘米的读取范围。EM4100卡片内部有独特的编码机制,通过AVR单片机的处理能力,能够解析并理解其发送的信息。 文中详细介绍了EM4100射频ID卡的构造和工作原理,强调了如何利用AVR单片机进行信号捕获、解码和处理的过程。作者提出了一种针对EM4100卡的软件设计策略,包括数据采集、数据处理算法以及错误检测和纠正机制,确保了信息的准确传输。 实验部分展示了该设计的有效性和系统的稳定性。通过实际测试,结果显示该阅读器能够在预期范围内稳定工作,证明了设计方案的可行性。这使得基于AVR单片机的125kHz简易RFID阅读器成为了一种经济且实用的解决方案,适用于对成本敏感且对读取性能有一定要求的应用场景。 这篇论文不仅提供了RFID阅读器的基本硬件设计,还深入探讨了软件实现细节,对于理解和应用AVR单片机在RFID技术中的作用具有很高的参考价值。对于希望在RFID领域进行低成本开发的工程师和技术人员来说,这是一个值得学习和借鉴的研究成果。
2021-04-22 上传
RFID读卡模块原理图是ORCAD的,有PDF预览,PCB是PADS的,还有BOM烧写说明,标注图等。其中UART输出是量产过的 韦根输出的只是看示波器波形是对的,没有实际应用;里面有源代码,编写前提是是CODE小于1K RAM小于64字节。 原理图原理就是CD4060产生125KHZ的方波,经过推挽电路进行功率放大,高频电流进入LC串联谐振电路,345uH和4.7NF的谐振频率正好是125KHZ,这时电容两端电压会到十几伏,如果用CBB电容,会到二十多伏,这时读卡距离会到10CM以上。当有卡接近线圈时,线圈两端会有曼彻斯特编码的调幅波。通过二极管以及电容的检波和滤波,产生的小信号送入LM358进行放大和整形,变成单片机可以读取的曼彻斯特编码信号。 关于硬件电路设计上,CD4060在3.3V时 4M以下的晶振都可以起振,但2M的晶振体积很大,所以用了4M。实验发现ATTINY13的频率随着工作电压的变化会有很大的变化,所以不能用RC校准了,正好CD4060会输出4M,所以用来当系统时钟,保证时序的精确性。这样模块在3.3V 5V都能工作。 ATTINY13接不了无缘晶振 只能接有源的~ 它只有一个CLKIN脚~有源晶振价格就贵了。 另外ATTINY13只有5个IO口 1个用于中断 1个用于UART输出 1个用于CLKIN 1个用于上电波特率配置 1个用于曼彻斯特编码输入 正好用完了 RFID读卡模块 模块正反面 串口收到5个字节 前4个字节就是卡号 程序中,根据曼彻斯特原理,找到长电平和短电平,根据跳变沿分析出0数据还是1数据。然后寻找消息头,后面的数据进行 行 列奇偶校验,从而分析出卡号。 程序上电时,通过ADC引脚读取外部电阻的分压配置,从而初始化出4中波特率。然后进行读卡操作。实际应用中,要保证读卡的稳定,当卡靠近线圈时,要只发一次数据。要很好的去抖。代码不能超过1K。现在代码正好1024个字节。关于奇偶校验算法,异或和要比对2取余简洁,但我测试时发现异或和代码长度大于对2取余,所以用了对2取余。 RFID读卡模块原理图+PCB+代码+调试至附件下载