Arduinos sont étonnants petits appareils et personnes (Instructablers) ont fait des choses étonnantes avec eux.
Je suis curieux. Je voudrais savoir comment les choses fonctionnent. Pour les curieux, ce Instructable va essayer d’expliquer une partie de l’électronique de l’Arduino.
Je soupçonne que beaucoup de gens ont construit des projets Arduino, mais n’a pas pu se rendre au travail. J’espère pouvoir fournir des connaissances et des compétences pour aider à résoudre les problèmes matériels tels que les erreurs de câblage et de mauvais éléments.
Après quelques Internet à la recherche, j’ai trouvé un tutoriel électronique que j’aime et la confiance :
http://www.Ladyada.net/learn/Arduino/index.html
« Ce tutoriel est de Limor Fried »
En fait, je le recommande à tous les lecteurs de l’Arduino. Il y a certains recoupements d’informations mais beaucoup de multimédia et plus sur la programmation.
Alors qui suis-je ? Je suis un Geek vieux paresseux (S.A.J.). Je ne suis pas un ingénieur diplômé, mais j’ai été dans le domaine de l’électronique pendant plus de 40 ans, commençant comme un technicien en électronique dans l’USAF. J’ai passé de nombreuses années, essai de systèmes électroniques.
Bases de l’Arduino :
Comme la plupart d'entre vous savent, Arduinos reposent sur une petite puce noir appelée un microcontrôleur. C’est le cœur et le cerveau de l’Arduino. Vous n’avez pas un Arduino sans en avoir un. Il y a beaucoup de saveurs du microcontrôleur Arduino, mais ils ont tous les mêmes fonctions. Il est actuellement le plus populaire pour les bricoleurs de l’ATmega328. Voir photo.
Microcontrôleur : Un microcontrôleur est un CPU (unité centrale de traitement) avec un circuit intégré à la puce mémoire et interface. Fondamentalement, le CPU prend toutes les commandes dans le programme (esquisse) (. PDE) et fait ce qu’ils disent de faire. Remarquez que j’ai dit ce que les commandes lui demander d’effectuer ; Je n’ai pas dit ce que le programmeur veut qu’il fasse. Écrire qu'un programme réussi est révélateur de la CPU exactement ce que vous voulez faire dans la langue il sait.
Foire aux : Oui, l’ATmega328 peut toujours servir au lieu de l’ATmega168 que le matériel est exactement le même. L’ATmega168 ne peut pas remplacer l’ATmega328 comme il a moins de mémoire, donc plus gros programmes peuvent ne pas fonctionner.
Technobabble : Le reste de cette section est uniquement pour les Geeks.
Appareil | Flash | EEPROM | RAM |
ATmega168PA | 16K octets | 512 octets | 1K octets |
ATmega328P | 32K octets | 1 K octets | 2K octets |
Que cela signifie-t-il ? Le K signifie kilo, un multiplicateur qui signifie dans ce cas, multipliez le nombre par 1024. Octets sont juste un endroit pour stocker des informations (données). C’est essentiellement la seule différence entre les deux microcontrôleurs.
Flash : est un type de mémoire que les cales programme information, même après l’Arduino est déconnecté de l’alimentation. Le même programme s’exécute chaque fois que l’alimentation est rebranchée à l’Arduino. Il s’agit de la même manière, lecteurs flash USB et les cartes de caméra numérique conservent leurs informations.
EEPROM : est la mémoire qui conserve également les informations après puissance est robinet d’arrêt. Il diffère de Flash comme il peut être écrit par le programme au lieu du programme lui-même. Les instructions de l’Arduino pour utiliser la mémoire EEPROM sont EEPROM.read() et EEPROM.write().
Tip: Be sure to have:
#include //in your sketch(program).
The limitation is, even in the ATmega328, there is only 1024 bytes so only so much data can be stored. Tip: By the way, I never got this to work.RAM: is also memory but it is volatile meaning it will go away when you turn off power. Sketches use it to store temporary information such as variables. What is a variable? Well, it is something that can change. Examples are the temperature or the time of day. Here is part of a sketch that converts a temperature sensor reading to degrees C (Centigrade) and degrees F (Farhenheit). float Vt=(float) sensorValue3Avg*5.0/1023.0;
flotteur R =(5.0-Vt) * 10,0 / Vt ;
float TinC=281.583*pow(1.0230,(1.0/R)) * pow(R,-0.1227)-150.6614 ;
flotteur TinF = TinC * (9.0/5.0) + 32 ;
Toutes ces variables char sont stockées dans la mémoire RAM et seront remplacées la prochaine fois qu’une mesure est prise et sont perdues lorsque l’alimentation est coupée.
Fondamentalement, les variables sont quelques étiquettes pour les emplacements en mémoire vive. Les variables char sont un type particulier de variable. Avec ce label, l’esquisse sait où aller pour stocker la valeur il veut ou récupérer la valeur stockée à cet endroit. Le type spécifique détermine combien de pièce est nécessaire et comment interpréter les informations.
Sans compter que le CPU, flash et RAM, les ATmegas ont des circuits d’interface construit en :
Interface sérielle : cela permet le CPU parler à l’ordinateur via un port série ou USB et selon moi, il est utilisé pour communiquer via I2C. C’est aussi comment il s’entretient avec les écrans LCD série.
Analogique convertisseur numérique (ADC): Cela permet l’ATmega convertir des tensions analogiques en données numériques (nous le verrons dans un autre Instructable).
PWM (modulation de largeur d’impulsions): circuit à « analogiques » tensions de sortie
Minuteries : pour le calendrier des événements, le plus souvent utilisés pour définir les délais entre les étapes du programme, par exemple, clignotement des LEDs.
Si vous avez déjà regardé les fiches techniques sur ces ATmegas et les comprenez, puis peut-être vous devriez écrire ce au lieu de me.
Préfixes : Il y a beaucoup de lettres joints à terminologie électronique qui peut être source de confuse. P. ex. 16mV, 10Kohms, 20uF. Ces lettres sont appelés (des préfixes et des suffixes) qui sont des multiplicateurs justes à la valeur. Par exemple, 10Kohms est (10 fois 1 000) ohms ou 10 000 ohms. Voir le tableau ci-dessous.
Non essentiels Info : Malheureusement, si vous parlez ordinateur mémoire 1 Koctet est 1024 octets. C’est parce que les informaticiens aiment faire tout compliqué. Donc pour eux K est 210. Mégaoctet peut vouloir dire 1 000 000, 1 048 576 ou 1 024 000. Ne pas demander, check it out sur Wikipedia.