Hola mundo, esta ocasion quisiera que alguien me resolviera una duda que tengo. He comprado dos modulos Xbee serie 1, junto con dos arduinos uno. La comunicacion inalambrica entre los arduinos mediante los xbee\'s funciona perfectamente, tambien alambricamente, es decir, conecto desde el arduino uno 1 un cable de su TX hasta la patilla RX del otro arduino uno 2, comunicacion serial alambrica. y para que vean que no soy codo, aqui anexare los codigos:
EMISOR:
int button1 = 2;
int button2 = 4;
int button3 = 7;
int button4 = 8;
void setup()
{
Serial.begin(9600);
pinMode(button1, INPUT);
pinMode(button2, INPUT);
pinMode(button3, INPUT);
pinMode(button4, INPUT);
}
void loop(){
if(digitalRead(button1)==HIGH){
Serial.print('a');
delay(10);
}
if(digitalRead(button2)==HIGH){
Serial.print('b');
delay(10);
}
if(digitalRead(button3)==HIGH){
Serial.print('c');
delay(10);
}
if(digitalRead(button4)==HIGH){
Serial.print('d');
delay(10);
}
}
Ahora el RECEPTOR:
//RECEPTOR
int incomingByte;
int led1 = 2;
int led2 = 4;
int led3 = 7;
int led4 = 8;
void setup()
{
Serial.begin(9600);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
}
void loop(){
if (Serial.available()>0){
incomingByte = Serial.read();
if (incomingByte == 'a'){
digitalWrite(led1, HIGH);
delay(10);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
digitalWrite(led4, LOW);
}
if (incomingByte == 'b'){
digitalWrite(led1, LOW);
digitalWrite(led2, HIGH);
delay(10);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
digitalWrite(led4, LOW);
}
if (incomingByte == 'c'){
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, HIGH);
delay(10);
digitalWrite(led3, LOW);
digitalWrite(led4, LOW);
}
if (incomingByte == 'd'){
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
digitalWrite(led4, HIGH);
delay(10);
digitalWrite(led4, LOW);
}
}
}
El problema que se me presenta, es el siguiente. A la hora de presionar dos botones, enciendo dos leds a distancia. PERO, resulta que estos mismos parpadean. Cuando enciendo un led a distancia, no parpadea. Pero al momento de encender dos hasta los 4 leds a distancia al mismo tiempo, estos mismos parpadean rapidamente como si tuvieran un delay rapido. ¿Pero porque pasa eso? Se supone que no deberian hacer eso los leds, ¿Alguien podria echarme una mano? Porque la verdad tengo serios problemas para conectarlo a un puente H. Les agradeceria mucho su ayuda. Espero sus prontas respuestas, y hasta la proxima. ...
EMISOR:
int button1 = 2;
int button2 = 4;
int button3 = 7;
int button4 = 8;
void setup()
{
Serial.begin(9600);
pinMode(button1, INPUT);
pinMode(button2, INPUT);
pinMode(button3, INPUT);
pinMode(button4, INPUT);
}
void loop(){
if(digitalRead(button1)==HIGH){
Serial.print('a');
delay(10);
}
if(digitalRead(button2)==HIGH){
Serial.print('b');
delay(10);
}
if(digitalRead(button3)==HIGH){
Serial.print('c');
delay(10);
}
if(digitalRead(button4)==HIGH){
Serial.print('d');
delay(10);
}
}
Ahora el RECEPTOR:
//RECEPTOR
int incomingByte;
int led1 = 2;
int led2 = 4;
int led3 = 7;
int led4 = 8;
void setup()
{
Serial.begin(9600);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
}
void loop(){
if (Serial.available()>0){
incomingByte = Serial.read();
if (incomingByte == 'a'){
digitalWrite(led1, HIGH);
delay(10);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
digitalWrite(led4, LOW);
}
if (incomingByte == 'b'){
digitalWrite(led1, LOW);
digitalWrite(led2, HIGH);
delay(10);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
digitalWrite(led4, LOW);
}
if (incomingByte == 'c'){
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, HIGH);
delay(10);
digitalWrite(led3, LOW);
digitalWrite(led4, LOW);
}
if (incomingByte == 'd'){
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
digitalWrite(led4, HIGH);
delay(10);
digitalWrite(led4, LOW);
}
}
}
El problema que se me presenta, es el siguiente. A la hora de presionar dos botones, enciendo dos leds a distancia. PERO, resulta que estos mismos parpadean. Cuando enciendo un led a distancia, no parpadea. Pero al momento de encender dos hasta los 4 leds a distancia al mismo tiempo, estos mismos parpadean rapidamente como si tuvieran un delay rapido. ¿Pero porque pasa eso? Se supone que no deberian hacer eso los leds, ¿Alguien podria echarme una mano? Porque la verdad tengo serios problemas para conectarlo a un puente H. Les agradeceria mucho su ayuda. Espero sus prontas respuestas, y hasta la proxima. ...
Última edición: