Besoin d'aide : grand débutant

Tout sur les cartes et la programmation des modules ARDUINO

Re: Besoin d'aide : grand débutant

Messagede Beginoffly » Mer 20 Jan 2016 20:51

no problem, ca paut attendre plus longtemps, car j'ai cramé mon arduino micro ... (je sais mal souder) tristounet

Merci pour tes messages :)
A320-214 flight sim builder
Beginoffly
 
Messages: 149
Inscription: 10/03/15

Re: Besoin d'aide : grand débutant

Messagede JacquesZ » Ven 22 Jan 2016 22:14

Bon on va commencer par le début:
Les programmes de link2Fs sont faits pour les Arduino UNO et de préférence les modèles Arduino MEGA. N'ayant pas d' Arduino Micro, j'ai regardé sur le Net, le nombre de broches est différent. Comme tu as grillé ton Arduino Micro, je ne peux que te conseiller de commander une MEGA 2560 (révision 2) qui possède beaucoup plus d'entrées/sorties, on les trouve à 9.90€ sur des sites comme mini_in_the_box (j'ai pas d'actions)...

Sans regarder plus avant ton code, il semble que l'affichage de ADF et XPDR se fait sur la même ligne de ton afficheur LCD 1602, d'après ce que je vois. C'est un afficheur de 2 lignes de 15 caractères semble t'il.
A mon avis, deux causes:
- Ca peut venir d'une instruction du genre lcd.setCursor(0, 1); incorrecte dans le code, qui positionne le curseur de l'écran sur la ligne du bas (le 1 du (0,1)) à la colonne la plus à gauche (le 0 du (0,1)) au lieu de se positionner sur la ligne du haut avant d'afficher ADF ou Transpondeur. Il suffirait de remplacer le (0,0) dans ton cas par un (0,1) et ça règlerait le problème. Ceci dit, il faut trouver laquelle de ces instructions est fautive(si elle l'est), et là je vais regarder le code.
- Link2FS "échange" avec FSX par le biais de caractères ASCII. Si les codes reçus demandent simultanément un affichage de XPDR et ADF, il peut y avoir double affichage si le cas n'a pas été géré par le programme, et ça ça peut venir du brochage des entrées/sorties. Le programme attend une entrée sur telle broche, s'il en reçoit sur une autre ou de la part d'un encodeur, cela peut être interprété. Link2FS est très peu tolérant aux erreurs, car débugger prendrait trop de code et du temps et le micro-processeur de l'arduino est d'une part pas très puissant et possède peu de mémoire.

Ceci dit, je continue de regarder le code. Peux-tu me confirmer quel code as tu utilisé (le nom du fichier .ino et sa localisation, ainsi que la version du zip que tu as téléchargé) , car les codes exemple fournis par Jim sont nombreux. C'est pas Multi radio qu'on trouve ici http://www.jimspage.co.nz/Multi_Radio.htm?

Jacques
Ma chaîne YouTube Tutos sur l’A320 par un Pilote de Ligne: https://youtube.com/channel/UCljftuoKBcgeR-WBgYJpuoA
Avatar de l’utilisateur
JacquesZ
 
Messages: 2848
Inscription: 24/11/10

Re: Besoin d'aide : grand débutant

Messagede JacquesZ » Ven 22 Jan 2016 22:33

je m'auto-réponds:
Comme je doutais d'un problème avec le code et comme visiblement tu as testé ton câblage, ça pouvait venir d'autre chose
En lisant attentivement la page du site de link2FS, j'ai trouvé ça:
Serial data flow ,,,,

This project recieves a lot of data from FSX especially in the “refresh” cycle ,, and it can push the Arduino’s serial receiver buffer beyond it’s limit.

What happens is it will chop off any serial data that is in excess of the buffer limit. You can see the affects of this when you first connect and the radio might light up fine but has some of my identifiers (= or ? etc) in the text screen for some readouts (ADF or xponder) ,, or in the case of the Mega ,,, same thing or the gear indication wont indicate if the wheels are down when first connected. So read this ,,,
[url]
http://www.jimspage.co.nz/serial_buffer_mod.htm[/url]
I adjusted mine to 64 and 256

All was fine then.

After editing it ,, you need to recompile and load your INO into the Arduino again.
-------------------

Grosso modo, si on augmente pas la taille du buffer de réception des caractères de l'arduino dans l'environnement de programmation, le nombre de caractères envoyés à l'arduino est trop important et on a un double affichage.
Le souci, c'est que le "truc" donné par Jimmy Page n'est plus valide avec les nouvelles versions de l'IDE arduino (le fichier hardwareSerial.cpp a changé).
Mais je soupçonne fortement le problème de venir de là...;
Je suis quand même sur le coup, même si tu n'as plus d'Arduino sous la main pour l'instant!
Jacques
Ma chaîne YouTube Tutos sur l’A320 par un Pilote de Ligne: https://youtube.com/channel/UCljftuoKBcgeR-WBgYJpuoA
Avatar de l’utilisateur
JacquesZ
 
Messages: 2848
Inscription: 24/11/10

Re: Besoin d'aide : grand débutant

Messagede JacquesZ » Ven 22 Jan 2016 22:50

On va donc essayer ça (testé sous Windows 7, sur d'autres versions l'emplacement du fichier peut changer):

1- Sur ton PC, localiser le fichier HardwareSerial.h, situé dans C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino et en faire une copie de secours (du genre HardwareSerial.h.old)
2- Avec Wordpad (surtout pas Word!), ou mieux Notepad++, ouvrir le fichier HardwareSerial.h.
3- Remplacer dans le code cette partie là:
Code: Tout sélectionner
#if !defined(SERIAL_TX_BUFFER_SIZE)
#if (RAMEND < 1000)
#define SERIAL_TX_BUFFER_SIZE 16
#else
#define SERIAL_TX_BUFFER_SIZE 64
#endif
#endif
#if !defined(SERIAL_RX_BUFFER_SIZE)
#if (RAMEND < 1000)
#define SERIAL_RX_BUFFER_SIZE 16
#else
#define SERIAL_RX_BUFFER_SIZE 64
#endif
#endif


par celle-ci:

Code: Tout sélectionner
#if !defined(SERIAL_TX_BUFFER_SIZE)
#if (RAMEND < 1000)
#define SERIAL_TX_BUFFER_SIZE 32
#else
#define SERIAL_TX_BUFFER_SIZE 128
#endif
#endif
#if !defined(SERIAL_RX_BUFFER_SIZE)
#if (RAMEND < 1000)
#define SERIAL_RX_BUFFER_SIZE 32
#else
#define SERIAL_RX_BUFFER_SIZE 128
#endif
#endif


4-enregistrer le fichier modifié.
5-relancer l'IDE Arduino, puis recompiler et transférer de nouveau le fichier MultiradioHead.ino dans l'Arduino.

Si jamais le problème continue, refais la même manip en augmentant les 4 chiffres à la fin des lignes #define SERIAL_RX_BUFFER_SIZE et #define SERIAL_TX_BUFFER_SIZE respectivement de 32 à 64 et de 128 à 256.
Au pire fais toi aider par ton frère programmeur!

Bon courage.

Jacques
Dernière édition par JacquesZ le Ven 22 Jan 2016 22:59, édité 1 fois.
Ma chaîne YouTube Tutos sur l’A320 par un Pilote de Ligne: https://youtube.com/channel/UCljftuoKBcgeR-WBgYJpuoA
Avatar de l’utilisateur
JacquesZ
 
Messages: 2848
Inscription: 24/11/10

Re: Besoin d'aide : grand débutant

Messagede JacquesZ » Ven 22 Jan 2016 22:55

Et si ça marche pas, on reviendra à l'examen du code... lunettesnoires
Ma chaîne YouTube Tutos sur l’A320 par un Pilote de Ligne: https://youtube.com/channel/UCljftuoKBcgeR-WBgYJpuoA
Avatar de l’utilisateur
JacquesZ
 
Messages: 2848
Inscription: 24/11/10

Re: Besoin d'aide : grand débutant

Messagede JacquesZ » Ven 22 Jan 2016 22:56

Ah et je t'ai dit de commander une Arduino UNO ou une MEGA? tapebaton
Ma chaîne YouTube Tutos sur l’A320 par un Pilote de Ligne: https://youtube.com/channel/UCljftuoKBcgeR-WBgYJpuoA
Avatar de l’utilisateur
JacquesZ
 
Messages: 2848
Inscription: 24/11/10

Re: Besoin d'aide : grand débutant

Messagede JacquesZ » Ven 22 Jan 2016 23:18

Hmmmmm,
Amaury je viens de regarder ton post et surtout ta copie d'écran de link2FS sur PC
Tu n'aurais pas oublié un truc par hasard?

La page du site de Link2FS dit en effet pour les paramètres de link2FS de les régler de la manière suivante:
-------------------------------------------------------------
In “SimConnect Extractions(1)” tick ,,
=A Com1
=B Com1s/b
=C Com2
=D Com2s/b
=E Nav1
=F Nav1s/b
=G Nav2
=H Nav2s/b
=I ADF
=J Transponder
=K DME1
=L DME2

In “SimConnect Extractions(2)” tick ,, (If used ,, Mega only)

?Y (Gear position simple)


In “Annunciators” tick ,, ( If used ,, Mega only)
/B1 (Overspeed flaps @ 140) (Set the actual figure to suit the plane later)
/C1 (Overspeed Gear @ 160) (Set the actual figure to suit the plane later)
/D1 (Overspeed Frame @ 180) (Set the actual figure to suit the plane later)
/E1 (Airspeed Stall @ 80) (Set the actual figure to suit the plane later)
/H1 (Total Fuel under 5%)


In “Communications Settings” set ,,

Cycle time to 100

Refresh time to 10 (Once your all set you can actually turn this off if you like. (0)
----------------------------------------------

Sur ta copie d'écran, je vois que tu as laissé Cycle Time à 200 au lieu de 100.
Ca viendrait pas de là par hasard? Avec un rafraîchissement des données deux fois moindre que prévu, ça risque de faire des conflits....
Ceci dit, pas sûr que ça change quelquechose au final, mais pour débugger au moins se mettre dans le même conditions que celles prévues, en clair RTFM!
lolaffiche
Jacques
Ma chaîne YouTube Tutos sur l’A320 par un Pilote de Ligne: https://youtube.com/channel/UCljftuoKBcgeR-WBgYJpuoA
Avatar de l’utilisateur
JacquesZ
 
Messages: 2848
Inscription: 24/11/10

Re: Besoin d'aide : grand débutant

Messagede JacquesZ » Ven 22 Jan 2016 23:41

En plus mon encodeur ne fonctionne pas, je ne sais pas comment le commander rirebleu #grosnoob


Rebonjour Amaury
Est ce que tu as ajouté la librairie encoder quadrature.zip comme indiqué ici?
http://www.jimspage.co.nz/encoders2.htm

et n'oublies pas que le réglage (et l'utilisation ou pas) de la librairie dépend de ton type d'encodeur (quart de cycle, simple ou double cycle), mais il y a sur le Forum des gens plus compétents qui sont spécialistes des encodeurs, qui nous diront quel genre d'encodeur c'est si tu nous donnes le modèle.

Jacques
Ma chaîne YouTube Tutos sur l’A320 par un Pilote de Ligne: https://youtube.com/channel/UCljftuoKBcgeR-WBgYJpuoA
Avatar de l’utilisateur
JacquesZ
 
Messages: 2848
Inscription: 24/11/10

Re: Besoin d'aide : grand débutant

Messagede JacquesZ » Sam 23 Jan 2016 01:38

Beginoffly a écrit:Je pense que mon encodeur est mal brancher ( il est mis sur l'entrée 8 et 9 )

Es ce que ce code m'indique l'endroit ou est mon encodeur et où il devrait être ?

Merci d'avance

Amaury


Non,c'est cette ligne de code qui indique les broches de l'encodeur.
Quadrature quad1(8, 9);

Donc si tu as branché l'encodeur sur les broches 8 et 9 comme indiqué dans le schéma (attention ton encodeur il doit être aussi branché sur le GND de l'Arduino) ce doit être bon. Il faut vérifier quelle est la broche GND de l'encodeur, cela dépend ce n'est pas toujours celle du milieu d'après ce que j'ai compris.
Attention, toutes les masses (GND) de tous les composants doivent être raccordées ensemble sur l'entrée GND de l'Arduino
Jacques
Ma chaîne YouTube Tutos sur l’A320 par un Pilote de Ligne: https://youtube.com/channel/UCljftuoKBcgeR-WBgYJpuoA
Avatar de l’utilisateur
JacquesZ
 
Messages: 2848
Inscription: 24/11/10

Re: Besoin d'aide : grand débutant

Messagede LfQQ » Sam 23 Jan 2016 09:32

Ça fait beaucoup de message ecroulerire !
LFQQ.
I7 4790 3,6-4 GHz- MSI Z97 - GTX 960 EXOC 2go VRAM - 8go RAM DDR3 - DD 1To
ARDUINO MEGA 2560 R3 / UNO R3 & X-PLANE 10.41.
Only Chuck Norris can land on RNY 37
Brevet de Pilote Planeur en cours chouettedoights
LfQQ
 
Messages: 187
Inscription: 3/08/14

PrécédenteSuivante

Retourner vers Interface & logiciel ARDUINO





Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 3 invités