Étape 2: L’émetteur (serveur) :
J’ai utilisé un clone atmega328p Arduino lien vers un NRF24L01 + PA + LNA afin d’avoir une longue distance pour communiquer (1000 m maximum dans les zones claires et larges) et 2 manettes de jeu. Dispositifs ainsi, très bon marchés.
Dans le programme, j’ai utilisé :
-la bibliothèque Firm pour envoyer et recevoir des données
-la méthode rapide de ADC pour augmenter la vitesse de conversion AD pour les deux joystick
-un moyen d’avoir une pseudo conversion analogique/numérique concurent avec ADMUX registres
-une méthode pour envoyer des messages dans un cadre : message de tableau string -> char array message -> concat avec entier pour rendre l’image -> envoi octets de la trame CONCATENER.
-un débogueur externe (voir les photos) car lorsque vous utilisez un USBasp (SPI convertisseur USB) le débogueur ne fonctionne pas (il écoute uniquement le port COM). Alors j’ai utilisé un convertisseur Usb vers série comme le circuit de µMB5, un convertisseur de niveau (RS232 3.3V-> 5 v TTL) liés aux RX (D0) et broches TX (D1) (voir sur le shematic). Ensuite vous pouvez lancer le débogueur après avoir sélectionné le bon port COM à l’écoute. Maintenant, vous pouvez contrôler et voir ce que vous envoyez.
La trame envoyée est comme ceci: "STOP_, 0524, 1023"
- les 5 premiers caractères : la direction : STOP_, FW___, RV___, FWLFT, FWRGT, RVLFT, RVRGT
- la deuxième partie : un entier libre d’utiliser
- la troisième partie : un entier de 0 à 1023 pour la vitesse la valeur point de RV FW.
La trame est envoyée chaque 80 ms et avec les compétences décrites ci-dessus, il donne un dispositif de télécommande très rapide et réactif.