Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Serial port Arduino AltSoftSerial按enter读取/打印altSerial?_Serial Port_Arduino - Fatal编程技术网

Serial port Arduino AltSoftSerial按enter读取/打印altSerial?

Serial port Arduino AltSoftSerial按enter读取/打印altSerial?,serial-port,arduino,Serial Port,Arduino,我不知道StackOverflow附近有没有Arduino巫师,但我要试着找一个!我在理解一些代码时遇到问题,以及为什么我不能自动执行过程而不是按Enter键 我正在使用RFID阅读器读取一些标签,并使用altSoftSerial库。但是,为了将tagID打印到我的序列号,我需要按Enter键。看在上帝的份上,我不明白为什么会这样。是否可以检查altSerial.read以获取特定ID,并在其出现时打印?因为当我自动打印序列时,我会收到很多“fffffffffffffffffffffffffff

我不知道StackOverflow附近有没有Arduino巫师,但我要试着找一个!我在理解一些代码时遇到问题,以及为什么我不能自动执行过程而不是按Enter键

我正在使用RFID阅读器读取一些标签,并使用altSoftSerial库。但是,为了将tagID打印到我的序列号,我需要按Enter键。看在上帝的份上,我不明白为什么会这样。是否可以检查altSerial.read以获取特定ID,并在其出现时打印?因为当我自动打印序列时,我会收到很多“ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff

#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);
}
#包括
AltSoftSerial altSerial;
char txrxbuffer[255];
char get_readID[]={0xAA,0x00,0x03,0x25,0x26,0x00,0x00,0xBB};
无效设置()
{
Serial.begin(9600);
Serial.println(“点击回车读取RFID编号”);
altSerial.begin(9600);
}
void loop()//反复运行
{ 
int计数器=0;
if(Serial.available()){
Serial.read();
Serial.println(“”);
用于(计数器=0;计数器<8;计数器++){
char tagID=get_readID[counter];
altSerial.write(tagID);
}
}
if(altSerial.available())
Serial.print(altSerial.read(),十六进制);
}

似乎在读取标签之前,您必须向rfod阅读器发送特定的代码,即您在第一个if中发送的代码;如果串行(从pc)接收到至少一个字符,它将读取该字符(但不存储该字符,它这样做是为了清除输入缓冲区,因此每个字符都是读取的,任何字符都是正确的),然后发送此代码。第二个if查找答案,如果有,则将其发送回pc。因此,只需从setup()发送代码,然后在每次读取后发送,或者查找另一个保持启用状态的commad