J'ai utilisé pour mon projet toutes les pin digitales de 2 à 13 ( un écran liquidcrystal, un lecteur de carte SD, boutons, RTC ). Est -il possible d'utiliser les pin 0 ou 1 ? Comme elles sont utilisées par le port rx et tx au téléversement , je suppose que non , mais dans le doute je pose la question.
Si possible, j'aimerai rajouter à mon projet de station meteo un capteur DHT22 , je pensais effectuer le câblage après avoir procédé au téléversement ( ou avec un interrupteur plus tard )
bonjour,
et les pins A4-5, sauf si utilisées pour le lcd en I2C, mais j'en doute.
tu peux mettre tous les boutons sur une seule pin en utilisant des résistances
et non, A4 et A5 sont utilisés par le module RTC et le baromètre en i2c. Je n'utilise qu'un bouton ( avec une fonction simple clic, double clic et clic long ).
Bon, en même temps c'est pas trop grave si ça ne fonctionne pas. Je vais quand même tenter de mettre le dht22 sur le D0 après téléversement. je verrais bien...
Les broches notées RXD et TXD sur le proMini sont reliées respectivement a PD0 et PD1 (port D du micro), je pense donc, que si tu ne te sert pas de l'UART ça devrait marcher, comme tu le dis en mettant le DHT22 hors circuit pour le téléversement.
oui ca fonctionnera, mais dans ce cas, au lieu de mettre un inter sur le dht22 pour uploader le code, pourquoi ne pas simplement mettre le bouton sur 1 ou 2 et mettre le dht sur la pin du bouton?
le bouton n'étant pas enfoncé, pas de contact, donc upload du code sans soucis
infobarquee:
bonjour,
et les pins A4-5, sauf si utilisées pour le lcd en I2C, mais j'en doute.
tu peux mettre tous les boutons sur une seule pin en utilisant des résistances
Et oui comme le rappelle Infobarquee TOUTES absolument TOUTES les E/S sont en mode digital à la mise sous tension.
C'est une grossière erreur d'Arduino de les qualifier de pins analogiques.
Certaines (A0 à A5) deviennent analogiques quand leur sous-fonction analogique est apellée par la fonction analogRead().
Pour d'autres la sous fonction sera la liaison série( RX et TX) ou le SPI(Mosi, Miso,Clk, CS) ou l'I2C (A4 et A5)
Et elles redeviennent classiquement numériques apres tout appel à pinMode(), digitalWrite() ou digitalRead().
Les I/O A0 à A5 sont aussi reconnues comme 14 à 19 par l'IDE.
et non, A4 et A5 sont utilisés par le module RTC et le baromètre en i2c. Je n'utilise qu'un bouton ( avec une fonction simple clic, double clic et clic long ).
....../........
Je vais quand même tenter de mettre le dht22 sur le D0 après téléversement. je verrais bien...
Et A0(D14), A1 (D15), A2(D16), A3(D17) ils sont déjà pris ?
Encore un fois je reprends ce que tu dit Infobarquee sur le mini-pro il existe deux entrées supplémentaires --> celles là sont particulières : elle sont purement analogiques (je peux expliquer mais cela va être un peu long).
Donc si A0 à A3 sont pris en mode analogique tu peux en libérer 2 que tu transfère sur A6 et A7.
Merci à tous de vos réponses , j'ai pu résoudre mon problème. Les deux solutions proposées par Infobarquee et 68tjs fonctionnent , à savoir que j'ai déporté mon bouton sur la pin D0 ( RXT) et branché mon dht22 sur la pin 14 ( ou A0)
Du coup je me retrouve avec une pin disponible supplémentaire ! ( bon, qu'est ce que je vais bien pouvoir ajouter comme fonctionnalité à ma station météo )
Sinon, concernant la remarque de pepe , je devrais dans un soucis de sécurité rajouter une résistance de 1k en série avec mon bouton sur la pin 0 ??
HS : concernant le dht22, j'ai installé 3 bibliothèques pour gérer ce module et une seule fonctionne (DHTlib de rob Tillaart ) bizarre
HS : concernant le dht22, j'ai installé 3 bibliothèques pour gérer ce module et une seule fonctionne (DHTlib de rob Tillaart ) bizarre
Ce n'est pas bizare c'est parfaitement normal.
C'est bien un des seuls qui a compris comment le DHT22 fonctionne.
Le coupable est la fonction digitalRead() qui est trop lente pour le DH22 et qui provoque un nombre inadmissible d'erreur de somme de contrôle.
Rob a fait un gros travail pour convertir dans le constructeur de la classe les dénominations arduino des pin en dénominations "micro" (Atmel). Ce qui permet d'utiliser les registres pour lire l'état de la pin reliée au DHT22.
L'utilisation des registres est 10 fois plus rapide que la fonction digitalRead().