微波EDA网,见证研发工程师的成长!
首页 > 微波射频 > 射频工程师文库 > 基于AVR单片机射频卡多协议读写器的设计

基于AVR单片机射频卡多协议读写器的设计

时间:09-20 来源:RFID世界网 点击:

式,这样可大大降低读卡器芯片的功耗。在设计手提式读卡器时,EM4094的这一性能特别有用,它可提高电池的使用寿命。

  数据输入与输出

  在SPI模式下,DIN引脚用于输入数据,DOUT引脚用于输出数据,DCLK用作SPI的时钟信号。一个SPI接口可用来设置读卡器芯片的内部位寄存器及设定不同模块的参数。在正常模式下,通过施加在DIN引脚上的逻辑电平来打开或关闭天线驱动器,DIN发出的应答信息可直接在DOUT脚上读取。

  安全功能

  当前的许多RFID应用都采用加密算法对数据进行加密或对身份进行证明。有些加密算法是公开的,有些则不对外公开。有些供应商在源代码或目标代码、或其它独立的安全元件(如SIM卡)中提供他们独特的加密算法。当然,多种可选方案使得设计可十分灵活。你可以在一个传统的微控制器或一个安全的控制器中实现一个或多个算法,另外一个选择是用一个负责安全操作的独立元件来构建一个接口。将这两种方案混合运用当然也是可以的。EM通过SIM卡提供其专有加密算法。

  固件程序设计

  程序层次划分

  固件结构分为几层,每一层都有特定的功能:

  Level1 –执行解码任务;

  Level2 –执行底层数据发送和变换任务;

  Level3 –执行上层数据传输任务--- main loop 、 bootloader 以及 simcard;

  Level4 -执行UART 通讯任务。

  主程序设计

  Main loop (level3) 定期查询UART的接收缓冲区 (level4),并根据有效命令执行相应的任务。所有执行的任务都会返回信息,包括任务错误。

  UART 数据接收是异步执行的。只有对之前命令的响应完全送出后,才会执行下一条命令。

  通常和卡片通讯的命令由硬件定时器进行控制 (T0、 T1、 T2、T3用于接收 ,T1用于发送)。

定时器计数值由AVR时钟信号完成。

  有些程序需要中断触发,这就要求具有很高的捕获能力。

  正如其他一些重要的任务,发送 (level2)和捕获 (level1)的任务可以并行进行,而不会互相干扰。

  数据处理

  应用软件为Uplink (send)任务准备好命令子节。所有任务将要发送的数据位流放入 data_buffer 数组。为了让前台捕获程序与后台处理分开,捕获任务将信息存入一对数组. [data bit, validity bit]。通过 level1/store_bit funcTIon ,把捕获任务得到得一对信息存入到由capture_cnt 和 capture_bit_count 变量索引的capture数组。capture 缓冲区在执行捕获前要初始化;data bit为 0,valid bit为1。所有位有效。接收到的数据可以在后台进行查找。这种逻辑可以给出一个有序的确定的信息,而不需要异步处理或优先可重入中断处理。

  结束语

  无线射频识别具有信息量大、高效便捷、安全的特点,是自动识别的主流技术。低成本、高可靠的电子标签识读终端的研究开发有很大的实际意义。本文在研究分析系统作用原理的基础上,给出了AVR微处理器芯片以及 RFID读写基站共同构成了一个完整的射频卡读写系统的硬件实现方案。系统结构和成本合理,可靠性已得到试验验证, 有较好的应用价值。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top