Show Posts
Pages: 1 ... 40 41 [42] 43 44 ... 93
616  International / Le bar / Re: [CDG] tout peut s'optimiser! on: September 27, 2013, 12:47:10 am
Bonsoir,
J'ai fait la mise à jour du compilateur selon les indications de Skywodd : http://forum.arduino.cc/index.php?topic=182507.msg1363449#msg1363449
Quelques petites différence par rapport  à la description : http://forum.arduino.cc/index.php?topic=182507.msg1364124#msg1364124
A ce jour, j'utilise 4.7.2
@+

ok. j'ai bien suivi les étapes 1 et 3 depuis skyduino.wordpress.com (téléchargement / installation de la toolchain (version 4.7.2), copie du fichier avrdude.conf, renommage avr_old, copie de la toolchain dans le avr de arduino). version IDE : 1.0.5

Mais à l'installation, je n'ai pas coché "ajout au path". il y a un .bat qui permet de le faire après (mais à lancer à chaque démarrage de windaube. avec ou sans : aucun résultat...
617  International / Français / Re: Capteur avec Arduino on: September 26, 2013, 03:56:20 pm
Pourquoi ne pas prendre un truc déjà tout fait? je suis sûr qu'il y a des tas de gens qui ont déjà fait la même chose...

en fouillant sur gogol, tu trouveras quelqu'un qui l'a déjà fait, non?

à lire, c'est un peu long, mais ça vaut le coup car pas trop mal documenté : http://jeromeabel.net/ressources/xbee-arduino

sinon, il y a un projet similaire : http://forum.arduino.cc/index.php?topic=188931.0
618  International / Français / Re: Bogue avec la bibliothèque Servo, comment corriger ce problème ??? on: September 26, 2013, 03:26:29 pm
je suis en plein dedans...

alors voilà le chemin complet de la définition de OCR1A sur UNO (j'ai pas encore vu le code MEGA2560, mais c'est exactement pareil, seule l'adresse change). Par ordre de compilation :

Code:
// dans le fichier main.cpp :
#include <arduino.h>

// dans le fichier arduino.h :
#include io.h

// dans le fichier io.h
#include <sfr_defs.h>
#include <iom328p.h>

// dans le fichier sfr_defs.h :
#define _SFR_MEM16(mem_addr) (mem_addr)

// dans le fichier iom328.h :
#define OCR1A _SFR_MEM16(0x88)

// dans ton fichier
#define servo10 OCR1A

tout ça alors qu'on pourrait virer tous les fichiers et écrire

Code:
const ptr servo10 = 0x0088;
619  International / Français / Re: calcule deux mosfet on: September 26, 2013, 03:16:25 pm
Là, on ne peut rien pour toi, le schéma n'est pas bon.
620  International / Français / Re: probleme affichage selon alimentation on: September 26, 2013, 03:15:13 pm
l'alim interne de l'arduino (le régulateur) est une grosse grosse merde (désolé, mais je n'ai que ce mot là). il est soit-disant donné pour 500mA, mais commence à plier à 100mA. ton LCD consomme trop, donc si ton alim te fournit du 5V, oublie le Vin et alimente tout directement en 5V, c'est la solution.

et s'il te plait, fais un nez fort, tu fais tellement de fautes d'ortograf que tu es illisible, c'est pénible à lire au point de ne pas avoir envie de te répondre car déchiffrer tes posts prend plus de temps que d'y répondre.
621  International / Français / Re: Comment incrémenter ceci 0x0100 on: September 26, 2013, 03:08:17 pm
1) le type de variable

Je fais toujours attention à mes types de variables. un word ou un int occupent la même place en mémoire (2 octets), mais la diff entre les deux, c'est les valeurs qu'ils peuvent prendre.

word = entier positif. 0 <= word <= 65535
int = entier signé -32763 <= int <= 32763

quand je sais qu'une variable ne prendra jamais de valeur négative, je la déclare en non signé, c'est comme ça, ma façon de faire. de même, si j'ai :
Code:
int table[64];
pour indexer table, j'utiliserai une variable byte, car 0 <= byte <= 255, et pourquoi travailler avec un 16bits quand 8 suffisent?

j'appelle ça de l'optimisation. n'oublions pas que l'arduino est une plateforme 8 bits, et que bosser avec 16 bits lui demande pas loin de 10 x plus de temps qu'avec un simple octet. alors je travaille toujours avec des variables 8bits non signées, et seulement si j'ai besoin, j'attaque les word, int, long...

c'est la grosse erreur de la team arduino qui parle toujours d'int, déformation du PC où l'int est maintenant la base des procs de PC (une plateforme 64 bits n'aura pas peur de bosser avec des variables 32bits, car sur PC, un int fait 4 octets).

2) Serial.println((EPROM_INC*index_EPROM)+EPROM_COU)

si ça donne 82, ça m'inquiète, car dans (84 x 0) + 0, il est impossible de trouver "82".

Serial.write(48);  // affiche "0"
Serial.println("0");  // affiche "0"

je sais que le "préprocesseur", au niveau du compilateur, va traduire ton code en Serial.println(0*index_EPROM); mais de là à faire 82...

tu as essayé avec Serial.println((index_EPROM*EPROM_INC)+EPROM_COU) ? c'est tout con, mais qui sait?
622  International / Le bar / Re: [CDG] tout peut s'optimiser! on: September 26, 2013, 03:46:23 am
Je suis tombé sur une vieille discussion...
Désolé, c'est ce que donne ton code avec le logiciel arduino 1.04!
Normal, la team arduino fourni l'ide avec une version de AVR-GCC datant de 2008 smiley-wink

Pour mettre à jour AVR-GCC :
1) télécharge MHV AVR TOOLS : http://www.makehackvoid.com/node/578/release
2) installe le tout
3) copie le dossier de l'installation (qui doit contenir bin, etc, ...) dans le dossier hardware/tools/avr de ton installation arduino (renomme l'ancien dossier avr en avr-old)
4) copie le fichier avrdude.conf du dossier "bin" dans le dossier "etc"
5) relance l'ide arduino, compile et enjoy smiley-wink
Alors j'ai fait! j'ai trouvé la mise à jour vers AVR GCC 4.7.2, j'ai installé, copié... bref, tout fait comme Skywood a dit.

Mais voilà, il semblerait que le nouvel avr-g++.exe ne réponde pas, j'ai "erreur de compilation" et ceci :
Quote
C:\Program Files\Arduino\hardware\tools\avr\bin\avr-g++ -c -g -Os -Wall -fno-exceptions -ffunction-sections -fdata-sections -mmcu=atmega328p -DF_CPU=16000000L -MMD -DUSB_VID=null -DUSB_PID=null -DARDUINO=105 -IC:\Program Files\Arduino\hardware\arduino\cores\arduino -IC:\Program Files\Arduino\hardware\arduino\variants\standard C:\DOCUME~1\FREEPO~1\LOCALS~1\Temp\build1091528783843041485.tmp\BareMinimum_test.cpp -o C:\DOCUME~1\FREEPO~1\LOCALS~1\Temp\build1091528783843041485.tmp\BareMinimum_test.cpp.o
mince alors... j'aurais bien voulu tester mon petit code bidon avec un compilateur + à jour (j'ai définit la carte UNO classique).

J'imagine bien que Sky a déjà de quoi s'occuper, mais si un jour il a le courage de nous faire un tuto sur une MAJ du compilateur...

Je vais regarder ce que je peux faire de mon côté...
623  International / Français / Re: Bogue avec la bibliothèque Servo, comment corriger ce problème ??? on: September 26, 2013, 03:12:03 am
Non, va pas te taper un mur...

J'imagine qu'à force de gens comme nous qui tenteront de réécrire les fonctions basiques, on arrivera enfin à voir, sentir et utiliser toute la puissance d'un petit 328p. Il doit forcément déjà exister des IDE pile-poil qui remplaceraient à merveille arduino (c'est quand même terrible de voir qu'ils utilisent encore la plateforme java, alors que même sous visualC, ça tournerait bien plus vite), et on achètera du chinois moins cher, et arduino sombrera dans la cupidité aveugle de sa team.

En attendant, on va développer notre propre lib servo sous arduino, il faut bien un début...
624  International / Français / Re: Bogue avec la bibliothèque Servo, comment corriger ce problème ??? on: September 26, 2013, 01:09:29 am
http://forum.arduino.cc/index.php?topic=189356.0 par exemple...
625  International / Français / Re: calcule deux mosfet on: September 26, 2013, 12:57:38 am
Moi, j'aurais plutôt pensé à ce câblage sur le ruban (il m'en reste un bout à la maison, il est fait ainsi):

Code:
Alim + ----/\/\/\------/\/\/\------|>|----|>|----|>|-------  alim -
              R           R         D      D      D     
Il est inscrit 151 sur les résistances, elles font donc 150 ohms chacune. ensuite, I = (12V - 3 x Vd) / (2 x R). avec Vd = 2,3V et R = 150, on retrouve les 16mA par groupe de 3 leds, soit 330mA / mètre (60 led / m), et P = 12 x 0,33 = 4W/m (= 20W / 5m). Cest données étaient mises sur l'annonce ebay. Chaque résistance dissipe 42mW.

Maintenant, il ne faut pas trop en demander, car la ref des leds est donnée "5050", ça pourrait faire croire à un type de led 5050, mais il n'en est rien, car les leds 5050 sont bien plus puissantes et plus chères... donc le vendeur doit sensiblement vendre du tout et n'importe quoi.
626  International / Français / Re: Bogue avec la bibliothèque Servo, comment corriger ce problème ??? on: September 25, 2013, 03:19:08 pm
l'image que j'ai mise dans mon post, je l'ai tirée d'un PDF, mais je l'ai corrigée avant de la poster.
627  International / Français / Re: calcule deux mosfet on: September 25, 2013, 03:10:46 pm
ils annoncent 20W/5m, soit 4W/m, soit 330mA/m. tu peux donc sans souci alimenter un bout de deux mètres.

je ne sais pas où tu as trouvé qu'il fallait un mosfet / m ? Il faut avoir un minimum de notions d'électronique quand il s'agit de choisir un composant...

d'ailleurs, sur la photo, ils alimentent tout le rouleau d'un coup...

Pour ton mosfet, si tu lui demandes de commuter 300mA alors qu'il est prévu pour 25, cherche pas, tu tentes d'utiliser un canon pour écraser une mouche...
628  International / Le bar / Re: Ca sent le chaud on: September 25, 2013, 02:59:10 pm
C'est quoi une opération majeure ?
Peut être bien que c'est l'opération qui consiste à introduire dans l’emballage final la carte qui a été fabriquée en Chine chez un sous traitant qu'on n'a pas les moyens de surveiller mais qui fait des prix défiants toute concurrence.
chuuuuuttttt!!! tout le monde le sait, mais faut pas le dire!

Mais tant qu'à acheter du chinois, autant acheter du clone, ça marche pareil et pas moins longtemps.

et que dire du vernis des cartes? j'ai deux méga qui ont 2 ans 1/2, le cuivre est déjà à nu. à 300 balles le bout d'époxy, c'est pas européen ça madame!
629  International / Français / Re: calcule deux mosfet on: September 25, 2013, 11:42:34 am
Vous allez lui faire peur... pourquoi pas une EL84 tant qu'un y est? avec une résistance de cathode bien calculée, on peut la commander directement en 5V. Mais bon, c'est la gestion du courant dans les leds qui ne va pas être facile...
630  International / Le bar / Re: Ca sent le chaud on: September 25, 2013, 10:36:49 am
C'est ça de vouloir faire de gros bénéfices en réduisant les coûts!

S'il y a preuve de malfaçon, j'imagine le bazar que a va faire s'il faut échanger tous les shields déjà vendus...
Pages: 1 ... 40 41 [42] 43 44 ... 93