Show Posts
Pages: 1 [2] 3 4 ... 93
16  International / Français / Re: Brancher un clavier a un arduino (Leonardo) on: June 18, 2014, 12:41:53 am
Il faut aller un peu plus loin que les descriptions "arduino" du µC... Déjà qu'en prog arduino, analogRead() inhibe totalement les possibilités d'utiliser les combinaisons différentielles des entrèes analogiques...

L'ATMEGA32U4 propose un port USB hard aussi bien esclave que maître, mais j'imagine qu'utiliser ce port pour deux communications en même temps relève de l'impossible : il n'y a pas de Rx/Tx en USB, mais de la liaison D+/D-... d'où ma proposition d'utiliser le Rx/Tx de l'USART pour lire un clavier en PS2 et l'USB pour envoyer tout ça à un PC...
17  International / Français / Re: Brancher un clavier a un arduino (Leonardo) on: June 17, 2014, 01:53:35 pm
c'est plus facile avec un vieux clavier PS2 : c'est du série et le léonardo a en plus de l'usb un port série...
18  International / Français / Re: [Résolu] Leonardo qui bug selon la taille du sketch !? on: June 11, 2014, 03:14:28 pm
  Merci mille fois B@tto !!

... Et cerise sur le gâteau, il garde la lisibilité qui me tenait tant à coeur .
ah ouais, cool!!! voilà qui fait plaisir à lire! un gros merci et un mini compte-rendu! si tous les topics pouvaient se terminer ainsi... smiley-wink
19  International / Tutoriels et cours / Re: écran lcd non fonctionnel on: June 08, 2014, 04:25:00 pm
J'ai eu le cas, c'était un mauvais câblage du contraste... j'avoue que ça surprend la première fois... car avec un contrast au minimum, bah rien ne bouge, même pas à la loupe!
20  International / Français / Re: Leonardo qui bug selon la taille du sketch !? on: June 08, 2014, 04:22:12 pm
Salut,

Je n'ai pas lu tes codes, mais...

Si le compilateur compile, c'est que le code est cohérent (ça veut pas pour autant dire qu'il est bon).

Si jamais, dans le fichier .hex pondu par ce dernier, il y avait une suite d'octets qui ferait penser à un code de contrôle quelconque du téléversement, alors serait-il possible que le bootloader l'interprête comme une commande au lieu de simple code à copier dans la flash???

Changer le bootloader par un plus récent?
21  International / Français / Re: [OT] RU4AP101, mais qu'est-ce donc que cette bestiole ? on: June 07, 2014, 12:41:11 am
Si cette puce n'est pas un capteur, alors on devrait pouvoir la placer où on veut dans la machine, voire peut-être en dehors si les fils du connecteur sont assez longs?
22  International / Le bar / Re: Marre de la période des TP on: June 07, 2014, 12:34:41 am
Chez Schneider, on trouve des petits automates Zelio dont la programmation est super simple (en gros, on met des blocs bout-à-bout et ça roule tout seul, ça actionne des relais, on a des entrées digitales, analogiques... Et en prime, le soft fait la simulation! Pour faire leurs TPE, ça serait plus simple!

Et le plus drôle, c'est que c'est un ATMEGA168 qui tourne dedans... hi hi hi
23  International / Le bar / Re: Marre de la période des TP on: June 06, 2014, 02:07:14 pm
une bouteille de gnole fait maison et du ratafia  smiley-mr-green
Bon, je vais peut-être me mettre à aider les lycéens alors, hips!

En même temps, faut avouer que les profs sont pas sympas de les lâcher ainsi dans la nature. J'avais fait une intervention il y a deux ans sur une classe de term en proposant de réfléchir à mon multiplicateur de fréquence pour ma vieille voiture, rien que de parler de timer sur un pic, j'ai tout de suite senti qu'il vallait mieux ne pas aller plus loin et même revenir en arrière. Alors quand je vois les sujets qui déboulent ici, parfois je comprends un peu que le bonhomme soit un tantinet perdu...
24  International / Français / Re: Connexion LCD Graphique à base de T6963C sur Mega 2560 on: June 06, 2014, 01:57:17 pm
Juste pour éviter la confusion :
Il faut voir comment ça marche "à la base" : Arduino est une surcouche, le fonctionnement "normal" d'un microcontroleur c'est avec des port de 8 pins ou moins, numérotés du coup de 0 à 7. Donc en fait un pin est défini par son port + 1 numéro de 0 à 7 : A0, A1, A2 ... A7, B0, B1, B2 ... B7 .... C'est la surchouche Arduino qui crée une numérotation plus "friendly" mais beaucoup plus lente aussi, enfin tout est relatif, mais entre un digitalWrite() et une manipulation des ports directe y'a un monde (sur le sujet : http://www.arduino.cc/en/Reference/PortManipulation)
Mieux vaut parler de bits, et laissons l'appellation "pin" au monde arduino... (ce n'est pas contre toi b@tto, hein smiley-wink )

Pour illustrer la chose sur un UNO, faire un
Code:
PORTD = 255;
ou un
Code:
for(int i=0; i<8; i++) digitalWrite(i, HIGH);
revient exactement au même, sauf que le premier va à peu près 200 fois plus vite dans le meilleur des cas, et s'il faut écrire une valeur autre que 255 ou 0, alors le premier ira environ 250 à 300 fois plus vite... et sur un mega comme dans ton cas, on ne sera pas loin des 400 fois plus vite...

pour mes calculs, j'avais mesuré les temps d'éxécution de "PORTD |= 1;" et "digitalWrite(0, HIGH);", et le rapport était de 20 en faveur du premier.

d'où l'utilité de bien connaître le côté hard des µC quand on a besoin d'aller un peu vite (ou pas trop lentement). C'est mon cheval de bataille en ce moment...
25  International / Français / Re: Fonction MODULO ( %) Pb sur résultat on: June 05, 2014, 02:56:25 pm
word ? plutôt unsigned.
quelque part dans le core arduino, il y a la ligne :
Code:
#define word uint16_t
, et c'est plus facile à écrire smiley-lol (encore ce foutu #define! mais celui-là, il passe dans toutes les autres libs! c'est pas juste!)
26  International / Français / Re: Fonction MODULO ( %) Pb sur résultat on: June 05, 2014, 01:21:31 pm
et si au lieu de "int Mod = ..." tu faisais "word Mod = ..." voire remplacer toutes tes déclarations d'int par des word...

Un truc tout neuneu, et ça ne changera rien pour toi, mais ça te permet de repasser sur des entiers non signés (a-t-on déjà vu une date négative?), il est possible que ça foire un peu quand on mélange des signés et non signés...
27  International / Français / Re: Connexion LCD Graphique à base de T6963C sur Mega 2560 on: June 05, 2014, 01:09:03 pm
effectivement, il semble que tu ustilises le port A. cette lib fait appel à l'écriture directe sur les ports, il faut donc que tu saches exactement sur quels ports tu branches ton LCD, mais aussi à quels bits du port ça correspond. De ce côté, la team arduino ne t'aidera pas, il faut que tu regardes de plus près à quel port correspond quelle pin etc etc.

J'ai fait un récapitulatif du câblage de la méga2560 qui te donne la correspondance des nums de pin sur la carte et les ports du µP (par exemple, F4 correspond au bit 4 du port F, sachant que les bits sont numérotés de 0 à 7...), voir fichier joint à ce post.
28  International / Français / Re: Relai de sonnette sans arduino on: June 05, 2014, 12:30:09 am
il est possible que ton "shake" commute à 50Hz au rythme du marteau, et que la commande moderne n'aprécie pas trop le côté parkinson de la chose...
29  International / Français / Re: Fonction MODULO ( %) Pb sur résultat on: June 05, 2014, 12:25:48 am
Salut,

Quote
Code:
int Mod9=Mod1+Mod2+Mod3+Mod4+Mod5-Mod6+Mod7-Mod8;
pourquoi -Mod8 ? ce ne serait pas plutôt un + ? (juste comme ça... pareil pour Mod6)
30  International / Français / Re: [LCD] optimisation de la lib liquidCrystal on: June 04, 2014, 02:40:00 pm
Pas moyen de paramétrer certains "blocs" ?
Qu'entends-tu par "paramétrer"? passer un boolean en paramètre d'une fonction? Ca m'arrange pas trop, car ça veut dire perdre du temps à rajouter un paramètre (même si ça ne représente qu'un ou deux cycle(s)), mais aussi faire un test (trois cycles + branchement), donc non, c'est pas une idée d'optimisation...

il doit y avoir un moyen!
Pages: 1 [2] 3 4 ... 93