不知道StackOverflow上是否有任何Arduino向导,但我只是想找一个!我在理解某些代码时遇到问题,为什么我无法自动化该过程而不是按 Enter 。
我正在使用RFID阅读器阅读一些标签,并使用altSoftSerial库。但是,为了将tagID打印到我的序列号,我需要按 Enter 。而对于上帝的爱,我无法弄清楚为什么会这样。是否有可能检查altSerial.read是否有特定ID,并在出现时打印出来?因为当我自动打印序列时我只是得到了很多'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF'的噪音......
#include <AltSoftSerial.h>
AltSoftSerial altSerial;
char txrxbuffer[255];
char get_readID[] = { 0xAA , 0x00, 0x03, 0x25, 0x26, 0x00, 0x00, 0xBB };
void setup()
{
Serial.begin(9600);
Serial.println("Hit Enter to read the RFID number");
altSerial.begin(9600);
}
void loop() // run over and over
{
int counter = 0;
if (Serial.available()){
Serial.read();
Serial.println("");
for (counter =0 ; counter < 8 ; counter++){
char tagID = get_readID[counter];
altSerial.write(tagID);
}
}
if (altSerial.available())
Serial.print(altSerial.read(),HEX);
}
答案 0 :(得分:0)
似乎在阅读标签之前,你必须向你的rfod阅读器发送一个特定的代码,你在第一个发送的代码if;如果在Serial(从pc)上收到至少一个char,它会读取char(但不存储它,它会这样清理输入缓冲区,所以每个char都是读取,任何char都是好的),然后发送这段代码。第二个如果寻找答案,如果存在将其发送回电脑。因此,只需从setup()发送该代码,然后在每次读取后发送,或者查找保持启用的备用commad