实验项目1 RFID 标签实验
- 学习要求:
了解RFID的基本原理,理解并掌握实验过程中用到的基本概念;熟悉RFID标签的基本特征及协议规范。
- 实验过程
1.连线搭建
RFID(Radio Frequency Identification)技术通过无线电信号识别目标并读写数据,系统一般包括:
读写器(Reader): 发送射频信号,接收标签响应;
标签(Tag): 存储识别信息,响应读写器信号;
通信协议: 如ISO14443、ISO15693等,用于规范数据传输格式。
本实验使用Arduino UNO模拟读写器,通过虚拟串口与RFID标签(虚拟设备)通信,实现标签识别与验证。
新建Proteus工程,不启用PCB布板;
从库中拖入Arduino UNO R3开发板;
添加两个Virtual Terminal,分别作为输入和输出显示;
连接引脚:
UNO的TX(引脚1)→ Terminal 1的RX
UNO的RX(引脚0)→ Terminal 2的TX
2.ard代码
String tagID = "";
int count = 0;
char c;
void setup() {
Serial.begin(9600);
Serial.println("扫描你的RFID标签");
}
void loop() {
if (Serial.available() > 0) {
c = Serial.read();
tagID += c;
count++;
if (count >= 12) {
Serial.print("标签ID: ");
Serial.println(tagID);
if (tagID.equals("19491001XXXX")) {
Serial.println("合法标签,连接成功");
} else {
Serial.println("非法标签,连接失败");
}
tagID = "";
count = 0;
delay(500);
}
}
}
3.代码刻录
仿真测试
启动仿真(Ctrl+F12或点击仿真按钮);
打开两个Virtual Terminal窗口;
在输入终端右键勾选"Echo Typed Characters"以显示输入;
输入12位标签ID(正确ID为预设值,如"19491001XXXX");
观察输出终端是否显示"合法标签"或"非法标签"。
代码编写与烧录
在Arduino IDE中编写RFID识别逻辑(参考代码见附录);
代码功能:
初始化串口波特率9600;
循环读取输入数据,累计12位标签ID;
与预设标签ID比对,输出验证结果;
编译代码,生成.hex文件;
在Proteus中双击UNO开发板,导入该.hex文件。
硬件仿真平台: Proteus 8 Professional
开发板: Arduino UNO R3
编程环境: Arduino IDE 2.x
虚拟设备: Virtual Terminal(模拟RFID输入输出)
辅助工具: 虚拟机环境(已预装相关软件)
4.仿真测试
实验结果
成功完成Proteus电路搭建与代码导入;
仿真过程中可通过Virtual Terminal输入标签ID;
代码能正确识别预设标签并输出验证结果;
若输入错误ID,系统应提示"非法标签"。
注意: 实验中可能出现输入无响应的情况,需检查代码逻辑或串口配置,确保数据格式与位数匹配。