La transmisión de Arduino 433MHz falla si el flanco descendente es inferior a 122 ms

1

Estoy tratando de controlar un LED usando un par de receptores transmisores de alta potencia de 433MHz, con el transmisor conectado a mi Arduino Nano.

Aquí está el transmisor (XLPCF20): enlace

Aquí está el receptor (CDR 5 B): enlace

Puedo enviar HIGH a un canal de datos en el transmisor (tiene 4 canales) y recibir la entrada HIGH en el mismo canal en el receptor, encendiendo con éxito un LED. Este es mi bosquejo de prueba actual:

void setup(){
  pinMode(8, OUTPUT);
}

void loop(){
  digitalWrite(8, HIGH);
  delay(122); //this is the important line
  digitalWrite(8, LOW);
  delay(100);
}

Esto funciona bien, sin embargo, si cambio el retardo de 122 ms en el flanco descendente a 121 ms (o algo por debajo de eso) no tengo salida en el receptor. El LED no se enciende en absoluto. Es igual para todos los canales, hay un cambio brusco en ese límite entre 121 ms y 122 ms (se encontró el valor exacto por prueba y error). En el transmisor / Arduino, la señal de salida es clara, por lo que es un error con el transmisor o el receptor. He usado otros pares de transmisores / receptores de 433MHz mucho más simples / más baratos en el pasado sin ningún problema. En el flanco ascendente (segunda llamada de retardo, la de 100 ms), hay otro problema cuando caigo por debajo de 13 ms. Exactamente a 12 ms, el LED es inestable, a veces parpadea como se espera, pero a veces simplemente se enciende. Cualquier cosa por debajo de 12 ms, el LED está constantemente alto, ni un solo parpadeo.

ACTUALIZACIÓN: si uso _delay_ms en lugar de delay , obtengo aproximadamente 1ms más espacio para ambos bordes, pero debajo de eso, sigue siendo el mismo.

ACTUALIZACIÓN 2: He intentado cambiar a diferentes pines de salida en mi Nano, tanto PWM como no PWM. Nada cambia.

¿Cuál sería el problema?

    
pregunta Can Poyrazoğlu

1 respuesta

2

Necesita un par de transmisor y receptor con un solo canal. La foto es un receptor super regenerativo. Puede utilizar el tipo superhetrodino para una mejor anti interferencia. En general, estos trabajos funcionan hasta unos pocos kHz de conmutación, poner Hi in tx y Hi salir en Rx.

ElquetienestieneuncodificadoradicionalMCU.Leyó4líneasclave,espera120msparaelreboteclave,porloqueseignoranlasentradasmáscortas.Luego,envíaunmensajecodificadoalreceptor,dondeotraMCUdecodificaelmensajeyloenvíaaalta/bajaen4canales.

Sumóduloseusageneralmentedentrodeestos4controlesremotosclave(abrepuertadecoche,etc.)Notemáspin,comoout1aout4.Lodesnudoessoloparasalir.

    
respondido por el EEd

Lea otras preguntas en las etiquetas