Paso 2: El emisor (servidor):
He utilizado un clon atmega328p de enlace de Arduino a un NRF24L01 + PA + LNA para tener una larga distancia para comunicarse (1000 m máximo en zonas amplias y claras) y 2 joysticks. Dispositivos muy, muy baratos.
En el programa que utilicé:
-la biblioteca Mirf para enviar y recibir datos
-el método rápido de ADC para aumentar la velocidad de conversión AD para ambos joystick
-una manera de tener una conversión de analógico a Digital concurent pseudo con registros ADMUX
-un método para enviar mensajes en un marco: mensaje de matriz de cadena -> char mensaje matriz -> concat con entero para hacer el marco -> Enviar bytes de la estructura de concatenar.
-un depurador externo (mirar las fotos) porque cuando se utiliza un USBasp (convertidor de USB a SPI) el depurador no funciona (escucha sólo el puerto COM). Usé un convertidor Usb a serial como el circuito de µMB5, un convertidor de nivel (RS232 3.3V-> 5V TTL) vinculados a RX (D0) y pines de TX (D1) (véase la shematic). Entonces usted puede lanzar al depurador después de seleccionar el puerto COM buena para escuchar. Ahora puede controlar y ver lo que envías.
El marco enviado es como este: "STOP_, 0524, 1023"
- los primeros 5 caracteres: la dirección: STOP_, FW___, RV___, FWLFT, FWRGT, RVLFT, RVRGT
- la segunda parte: un entero libre de usar
- la tercera parte: un entero de 0 a 1023 de la velocidad de ajuste punto RV a FW.
El marco se envía cada 80 ms y con la habilidades describe arriba, da un dispositivo de control remoto muy rápido y reactivo.