Marche AV, marche AR

L’espace pour parler de tout ce qui concerne la propulsion de nos modèles
Avatar de l’utilisateur
oniff
Messages : 186
Inscription : 07 mars 2011 20:00
Localisation : Rennes

Re: Marche AV, marche AR

Message par oniff »

Daaacord, je crois comprendre,
Pour l'exemple ce schéma:

Image

La ce sont des LEDS de branchées, mais il y a 16 sorties exploitées sur le composant, pour le coup un " multiplexeur CD4067" sans que la carte "arduino" ne soit saturée.
Donc pour un programme en " void loop" c'est ok, si je veux du contrôle analogique en amont, il me faut se même composant avec les entrées.
Geeks a écrit :
Donc tu n'est aucunement limité. :Up:
Je m’inquiète aussi sur la taille en KB du programme (texte) je suis limité à 32KB en mémoire sur une uno. J’espère ne pas dépasser.
Avatar de l’utilisateur
Geeks
Messages : 3593
Inscription : 03 juil. 2010 21:04
Localisation : Brive la Gaillarde (Correze 19)

Re: Marche AV, marche AR

Message par Geeks »

Tu a beaucoup de marge avec 32Kb.

Il faut pensé en mode compilé. Ce que tu écrit est un source, dans un langage dit de haut niveau (C, C++, Basic). Le compilateur va traduire en langage machine (disparition des commentaires, transformation en un .hex). Un .hex ressemble à ceci:

Code : Tout sélectionner

01 00 0F FA A1 2B CF 05 F6 8D
2B 0F FF FF FA 5F 6C 02 33 2E
C'est ce dernier fichier qui ne dois pas dépassé 32Kb. On appelle cela la chaîne croisé de compilation.

Pour info, mon système de radio, au niveau de son émetteur fais plus de 800 lignes de codes avec les commentaires et ne représente qu'un bon quart de la capacité maximale.

Les opérations se font en suivant:
PC : source (C, C++, Basic) -> PC : compilation (Transformation en .hex) -> UC : USB (Transfert en bus série du .hex) -> Mémoire Arduino : (.hex reçu et interprété par la carte).

Lorsque tu aura créer des fonctions, essaie de les regroupé ensemble. Tu pourra ainsi simplifier ton code et surtout le nombre de lignes en créant des fonctions puis enfin des classes. La méthode de création des fonctions et des classes permet de facilement s'y retrouvé.
Cas 1/ Dans mon programme j'ai plusieurs choses qui s'écrivent pareil et qui sont reprise plus de 2 fois -> création d'une fonction.
Cas 2/ Dans mes montages, j'utilise toujours les mêmes fonctions -> création d'une classe.

Ainsi quand je veux géré un afficheur LCD et que j'ai plusieurs fois Bonjour dans mon code, je crée une fonction bonjour().
Comme je crée plusieurs montages, que chacun utilise un afficheur LCD, je crée une classe qui permet de gérer l'affichage et les caractères.
Ainsi, je ne code qu'une fois quelque-chose qui sera repris plusieurs fois. De la même façon ça simplifie ton code et tu gagne au final un peu en octet.

Dans l'immédiat, tu n'a pas de souci à te faire avec ta led, tes leds. Pense juste en fonction.

Code : Tout sélectionner

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

void loop() {
   led(true);
   delay(500);
   led(false);
   delay(500);
}

void led(boolean varLed) {
   if(varLed) {  
      digitalWrite(led, HIGH);
   }
   else {
      digitalWrite(led, LOW);
  }


Ce code ne te fais rien gagner car tu utilise déjà une fonction "digitalWrite(pin, mode)". Mais il te montre comment tu peux simplifier ton code loop.

Bon, si tu bloque sur un détail de mes explication, n'hésite pas.

Et puis tiens-nous au courant pour tes essais avec le CD4067, je suis currieux sur ce coup :Up:
A défaut d'avoir la science infuse, j'infuse la science. - Racleur de fond depuis Pons 2014.
Sous-marin en état de repos sur cale : Minimog 01
Avatar de l’utilisateur
oniff
Messages : 186
Inscription : 07 mars 2011 20:00
Localisation : Rennes

Re: Marche AV, marche AR

Message par oniff »

:Up: Pour le moment ça va.

Par contre, je regarde le composant: "CD4067BE".
Le truc, c'est qu'il y a plusieurs référence pour le même produit ex:
CD4067/HEF4067 16 Channel
CD4067/HEF4067BT SMD16 Channel Analog
En fait, la référence qui est notée sous le nom du composant.???
Image
C'est que je ne veux pas prendre n'importe quoi :?
Avatar de l’utilisateur
Geeks
Messages : 3593
Inscription : 03 juil. 2010 21:04
Localisation : Brive la Gaillarde (Correze 19)

Re: Marche AV, marche AR

Message par Geeks »

Dans un tel cas, je me réfèrerais au datasheet.

Dans un datasheet t'a la référence, le type de boitier et bien sûr tout ça répertorier avec le nom du constructeur. Un petit tour sur alldatasheet.com il me semble est une nécessité.
A défaut d'avoir la science infuse, j'infuse la science. - Racleur de fond depuis Pons 2014.
Sous-marin en état de repos sur cale : Minimog 01
Avatar de l’utilisateur
oniff
Messages : 186
Inscription : 07 mars 2011 20:00
Localisation : Rennes

Re: Marche AV, marche AR

Message par oniff »

Ok, merci pour le lien.
En fait, le composant CD4067 reste un CD4067 donc quoi que je prenne, je ne me trompe pas. Je regarde juste se que les autres utilise sur le net pour le type de boitier et c'est partit.
Pour les joysticks, c'est bien de l'analogique (0 à 1023)? Par contre je rentre et sort en restant en analogique ou je rentre en analogique et sort en PWM?
Sinon cela me fait un multiplexeur type CD4067 (pour les joysticks et potars) en entrée, et un autre "multiplexeur" PWM en sortie (éléments contrôlés, moteurs ect...).
Image
Avatar de l’utilisateur
Geeks
Messages : 3593
Inscription : 03 juil. 2010 21:04
Localisation : Brive la Gaillarde (Correze 19)

Re: Marche AV, marche AR

Message par Geeks »

Il faut maintenant que tu regarde ta carte de puissance. Si elle est à lase de L293, comme L298D, il te faudra haché le courant. Donc PWM en sortie.

En entrée, tu dois lire des valeurs analogiques. Sauf si tu est dans le tout ou rien. Est-ce que ton composent fonctionne en analogique ou en numérique ?

Comment ton soft va-t-il prendre en compte ce multiplexage ?

Voila, une piste à creusé :Up:
A défaut d'avoir la science infuse, j'infuse la science. - Racleur de fond depuis Pons 2014.
Sous-marin en état de repos sur cale : Minimog 01
Avatar de l’utilisateur
oniff
Messages : 186
Inscription : 07 mars 2011 20:00
Localisation : Rennes

Re: Marche AV, marche AR

Message par oniff »

Le composant 4067 doit fonctionner en analogique.
Pour le PWM j'ai vu ce truc aussi: pca9685 :" Adafruit 16-Channel 12-bit PWM/Servo Driver - I2C interface "
Pi-être pas mal.

Pour le 4067 cela doit être du binaire.
Par contre le pour le soft, Le protocole entre les deux :o :?
J'aurais du faire électronique à l'école!!!
:frust:

Je vient de vérifier les joysticks, normalement je devrais avoir une valeur comme 511 au neutre; 1023 à fond en haut et 0 à fond en bas?
Hors je trouve par exemple 28 au neutre; 83 à fond en haut et 22 à fond en bas.

Sensor---------------------------Output
POTARD 1 (joystick1)
HAUT: 25.................................6
NEUTRE: 38.................................9
BAS: 88.................................21
POTARD 2 (joysticks1)
HAUT: 83.................................20
NEUTRE: 28.................................6
BAS: 22.................................5
POTARD1 (joystick2)
HAUT: 393................................98
NEUTRE: 512................................127
BAS: 629................................156
POTARD 2 (joystick 2)
HAUT: 7...................................1
NEUTRE: 9...................................1
BAS: 14..................................3
A moins que se soit moi qui est mal fait??
Avatar de l’utilisateur
Geeks
Messages : 3593
Inscription : 03 juil. 2010 21:04
Localisation : Brive la Gaillarde (Correze 19)

Re: Marche AV, marche AR

Message par Geeks »

euh !

Pour ton joystick, j'ai bien un peu de mal... Comment sont fait les montages des autres qui utilise la même manette que toi ?
A défaut d'avoir la science infuse, j'infuse la science. - Racleur de fond depuis Pons 2014.
Sous-marin en état de repos sur cale : Minimog 01
Avatar de l’utilisateur
oniff
Messages : 186
Inscription : 07 mars 2011 20:00
Localisation : Rennes

Re: Marche AV, marche AR

Message par oniff »

J'ai pris les infos ici: http://translate.google.fr/translate?hl ... CDUQ7gEwAA
Et pris l'exemple Analog-AnalogInOutSerial sur le logiciel.
Avatar de l’utilisateur
Geeks
Messages : 3593
Inscription : 03 juil. 2010 21:04
Localisation : Brive la Gaillarde (Correze 19)

Re: Marche AV, marche AR

Message par Geeks »

C'est le principe que j'utilise dans mon système. Je pense qu'il n'est pas adapter à ton cas. T'a une image de ta commande ? Une référence ?

Si c'est ce que je crois, c'est pas de l'analogique à ce moment là, il faudra trouver une solution.
A défaut d'avoir la science infuse, j'infuse la science. - Racleur de fond depuis Pons 2014.
Sous-marin en état de repos sur cale : Minimog 01
Répondre