|
发表于 2017-7-18 01:16:11
|
显示全部楼层
本帖最后由 Ansifa 于 2017-7-18 01:25 编辑
按你的写了一下,还没硬件验证,可能会出错,大概思路,适用于WG26读卡器。一般10位数的RFID卡都能用
- volatile int readerCount = 0;
- unsigned long data = 0;
- void reader0(void)
- {
- readerCount++; //计数加一
- data = (data << 1);
- }
- void reader1(void)
- {
- readerCount++;
- data = (data << 1) | 1;
- }
- void setup()
- {
- Serial.begin(9600);
- attachInterrupt(0, reader0, FALLING); //当有电平从高电平变为低电平时触发中断
- attachInterrupt(1, reader1, FALLING);
- }
- void loop()
- {
- if (readerCount >= 26)
- {
- Serial.println(data, DEC); // 打印卡号
- readerCount = 0;
- data = 0;
- }
- }
复制代码 |
|