ladyAo 发表于 2014-12-1 21:23:17

[求助]想请问大家一下Arduino板子上的TX和RX灯什么时候才会亮?

如题、我写了一个利用RCSwitch库的简单代码,是无线电收发的代码,因为处于测试阶段,将发送和接收写在一个程序里,可以烧完程序后,只有TX指示灯在亮,RX灯一直灭着,可是打开串口监视器,又有数据接收到?请问RX灯为什么一直灭着?明明有数据接收呀?


#include <RCSwitch.h>

RCSwitch mySwitch1 = RCSwitch();
RCSwitch mySwitch2 = RCSwitch();
int led = 13;
int flag = 1;
int total= 1;
void setup()
{
Serial.begin(9600);

// Transmitter is connected to Arduino pin #9
mySwitch1.enableTransmit(9);

pinMode(led,OUTPUT);

// Receiver on interrupt 0 => that is pin #2
mySwitch2.enableReceive(0);
pinMode( 8 , OUTPUT );


}
void loop()
{
    delay( 1000 );
   if( flag == 1 ){
   mySwitch1.send(1234,24);
   //mySwitch1.send('A',24);
   digitalWrite(led,HIGH);
   Serial.println("111");
   }
   else{
    mySwitch1.send(4321,24);
    // mySwitch1.send("01000001");
   digitalWrite(led,LOW);
   Serial.println("222");
   }
   flag = (flag+1)%2;

int value = mySwitch2.getReceivedValue();
Serial.println( value );
if (mySwitch2.available()) {
   
    delay(1000);
    if( value == 0 ) Serial.println("Unknown encoding!");
    else
    {
      Serial.print( total );
      Serial.print( " :" );
      Serial.println( value );
    }
}
total++;
}

Super169 发表于 2014-12-2 10:38:49

試試用這個簡單的 echo 程式, 看看你的 RX/TX 燈是否正常.

void setup() {
        Serial.begin(57600);
}

void loop() {
        while(Serial.available()){
                Serial.write(Serial.read());
                delay(1);
        }
}

當你在電腦發出任何訊息, 都應該看到 RX/TX 同時亮的 (因為反應太快, 你不可能分出 RX 比 TX 先).
页: [1]
查看完整版本: [求助]想请问大家一下Arduino板子上的TX和RX灯什么时候才会亮?