Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédenteDernière révisionLes deux révisions suivantes |
microc:gpio [2023/08/22 08:13] – phil | microc:gpio [2023/08/25 09:26] – [2.1 Généralités] phil |
---|
{{ :microc:microcontroleur.png?nolink|}} | {{ :microc:microcontroleur.png?nolink|}} |
| |
[Mise à jour le : 22/8/2023] | [Mise à jour le : 25/8/2023] |
| |
<html><span style="color:red">En cours de rédaction</span></html> | <html><span style="color:red">En cours de rédaction</span></html> |
* Vidéo : <html><a href="https://www.youtube.com/watch?v=U9T0fjFyVow" target="_blank">Microcontrôleur : Comment ça marche ? - SILIS Electronique</a></html> \\ | * Vidéo : <html><a href="https://www.youtube.com/watch?v=U9T0fjFyVow" target="_blank">Microcontrôleur : Comment ça marche ? - SILIS Electronique</a></html> \\ |
| |
« //D'un point de vue fonctionnel, dans un système à base de **microcontrôleur**, on appelle **entrées-sorties** les échanges d'informations entre le processeur et les périphériques qui lui sont associés. De la sorte, le système peut réagir à des modifications de son environnement, voire le contrôler. Les entrées, sorties sont parfois désignées par l'acronyme **I**/**O**, issu de l'anglais **I**nput/**O**utput ou encore **E**/**S** pour **E**ntrées/**S**orties.// » <html><a href="https://fr.wikipedia.org/wiki/Microcontr%C3%B4leur" target="_blank">Wikipédia</a></html> | « //D'un point de vue fonctionnel, dans un système à base de **microcontrôleur((Un microcontrôleur est un circuit intégré qui rassemble les éléments essentiels d'un ordinateur : processeur, mémoires, unités périphériques et interfaces d'entrées-sorties.))**, on appelle **entrées-sorties** les échanges d'informations entre le processeur et les périphériques qui lui sont associés. De la sorte, le système peut réagir à des modifications de son environnement, voire le contrôler. Les entrées, sorties sont parfois désignées par l'acronyme **I**/**O**, issu de l'anglais **I**nput/**O**utput ou encore **E**/**S** pour **E**ntrées/**S**orties.// » <html><a href="https://fr.wikipedia.org/wiki/Microcontr%C3%B4leur" target="_blank" title="Microcontrôleur">Wikipédia</a></html> |
| |
{{ :microc:systememicroproc.png?nolink |}} | {{ :microc:systememicroproc.png?nolink |}} |
| |
<callout type="tip" icon="true" title="GPIO">«// D'un point de vue matériel, un **microcontrôleur** dispose de **broches** pouvant être contrôlées par un logiciel. Elles peuvent se comporter comme des entrées ou des sorties, d'où le nom "Entrée / Sortie à usage général", ou **GPIO** (**G**eneral **P**urpose **I**nput **O**utput. Le nombre de broches d’un microcontrôleur étant limité, il est fréquent d’avoir **plusieurs fonctionnalités sur une même broche**.// » <html><a href="https://fr.wikipedia.org/wiki/General_Purpose_Input/Output" target="_blank">Wikipédia</a></html> | <callout type="tip" icon="true" title="GPIO">«// D'un point de vue matériel, un **microcontrôleur** dispose de **broches((Une broche de microcontrôleur est un élément physique situé sur le boîtier du microcontrôleur, qui permet de connecter ce dernier à d'autres composants électroniques, tels que des capteurs, des actionneurs ou d'autres circuits.))** pouvant être contrôlées par un logiciel. Elles peuvent se comporter comme des entrées ou des sorties, d'où le nom "Entrée / Sortie à usage général", ou **GPIO** (**G**eneral **P**urpose **I**nput **O**utput. Le nombre de broches d’un microcontrôleur étant limité, il est fréquent d’avoir **plusieurs fonctionnalités sur une même broche**.// » <html><a href="https://fr.wikipedia.org/wiki/General_Purpose_Input/Output" target="_blank">Wikipédia</a></html> |
</callout> | </callout> |
| |
// Exemple de microcontrôleur : l'ATMEGA328 // | // Exemple de microcontrôleur : l'<html><a href="https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-7810-Automotive-Microcontrollers-ATmega328P_Datasheet.pdf" target="_blank" title="DATASHEET"><strong>ATMEGA328</strong></a></html> // |
| |
Ce microcontrôleur dispose de **28 broches** dont **23 GPIO** (PBx, PCx, PDx). La broche 28 a 3 usages. Elle peut être configurée en E/S numérique, en entrée analogique ou comme signal de bus I2C. | Ce microcontrôleur dispose de **28 broches** dont **23 GPIO** (PBx, PCx, PDx). La **broche 27** a 3 fonctionnalités. Elle peut être configurée en E/S numérique (PC4), en entrée analogique (ADC4) ou comme signal de bus I2C (SDA). |
{{ :microc:atmega328p.png?nolink |}} | {{ :microc:atmega328p.png?nolink |}} |
| |
// Carte de prototypage // | // Carte de prototypage // |
| |
Le microcontrôleur ATMEGA328 est le coeur de la <html><a href="https://nextuslab.com/glossaire/prototype-carte-electronique/" target="_blank" title="Pour en savoir plus">carte de prototypage</a></html> **Arduino Uno**. Cela facilite sa connexion à des périphériques d'E/S et sa programmation. | Le microcontrôleur ATMEGA328P est le coeur de la <html><a href="https://nextuslab.com/glossaire/prototype-carte-electronique/" target="_blank" title="Pour en savoir plus">carte de prototypage</a></html>((Un prototype de carte électronique est un premier exemplaire d’une carte électronique. Il sert à tester les hypothèses et les fonctionnalités avant d’entamer la production en série (industrialisation). Ce premier exemplaire n’est pas commercialisable.)) **Arduino Uno R3** (<html><a href="https://www.arduino.cc/en/uploads/Main/arduino-uno-schematic.pdf" target="_blank" title="Arduino UNO Reference Design PDF"><strong>Schéma</strong></a></html>). Cela facilite sa connexion à des périphériques d'E/S et sa programmation. |
| |
{{ :microc:a000066_03.front_643x483.webp |}} | {{ :microc:a000066_03.front_643x483.webp |}} |
| |
<callout type="primary" title="CONNEXIONS">Les broches du microcontrôleur sont reliées électriquement aux broches des connecteurs de la carte. Un <html><a href="http://marcusjenkins.com/wp-content/uploads/2014/06/ARDUINO_V2.pdf" target="blank">schéma</a></html> identifie ces liens. \\ | <callout type="primary" title="CONNEXIONS">Les broches du microcontrôleur sont reliées électriquement aux broches des connecteurs de la carte. Un <html><a href="http://marcusjenkins.com/wp-content/uploads/2014/06/ARDUINO_V2.pdf" target="blank"><b>SYNOPTIQUE</b></a></html> identifie ces liens. \\ |
__Exemple__ : on voit sur ce schéma que la broche 19 du microcontrôleur est reliée avec la broche 13 du connecteur de la carte. \\ \\ | __Exemple__ : on voit sur ce schéma que la broche 19 du microcontrôleur est reliée avec la broche 13 du connecteur de la carte. \\ \\ |
__REMARQUE__ : dans l'environnement de programmation Arduino, pour simplifier la mise en oeuvre des E/S, le programme implanté dans le microcontrôleur fait référence à la connectique de la carte et non à celle du microcontrôleur ! | __REMARQUE__ : dans l'environnement de programmation Arduino, pour simplifier la mise en oeuvre des E/S, le programme implanté dans le microcontrôleur fait référence à la connectique de la carte et non à celle du microcontrôleur ! |
- **false** (« **0** » logique ou **LOW**) . \\ \\ | - **false** (« **0** » logique ou **LOW**) . \\ \\ |
| |
//Exemple de signaux produits et reconnus par un ATmegaxxx // | //Exemple pour l'<html><a href="https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-7810-Automotive-Microcontrollers-ATmega328P_Datasheet.pdf" target="_blank" title="SOURCE DATASHEET"><strong>ATMEGA328</strong></a></html> (Vcc = 5V - 25°C) // |
^ Niveau logique ^ Signal de sortie (Output) ^ Signal d'entrée (Input) ^ | ^ Niveau logique ^ Signal de sortie (Output) ^ Signal d'entrée (Input) ^ |
^ LOW | 0V à 0,9V (Vol) | 0V à 1,5V (Vil) | | ^ LOW | 0V à 0,5V (**VoL**)((Tension de sortie à l'état bas )) pour 0 à 20mA (IoL) | 0V à 2,2V (**Vil**((Tension d'entrée à l'état bas))) | |
^ HIGH | 4,2V à 5V (Voh) | 3V à 5,5V (VIH) | | ^ HIGH | 4,5V à 5V (**VoH**)((Tension de sortie à l'état haut)) pour 0 à 20mA (IoH) | 2,7V à 5V (**ViH**((Tension d'entrée à l'état haut))) | |
| |
| <callout type="danger" title="I maxi" color="red" icon="true">Le courant maximum en sortie sur une broche ne doit pas dépasser **40mA**. Au total, il ne doit pas dépasser **200mA**.</callout> |
| |
\\ | \\ |