meta données pour cette page
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Prochaine révision | Révision précédente | ||
| outils:arduino:code_et_variables [22/05/2022 17:35] – créée laure | outils:arduino:code_et_variables [09/05/2023 12:55] (Version actuelle) – laure | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| ====== Découvrir le code avec Arduino ====== | ====== Découvrir le code avec Arduino ====== | ||
| + | {{tag> Arduino support guide}} | ||
| ===== Structure et boucle ===== | ===== Structure et boucle ===== | ||
| Ligne 28: | Ligne 29: | ||
| ===== Les variables ===== | ===== Les variables ===== | ||
| < | < | ||
| + | <WRAP half column> | ||
| + | Comme des // | ||
| + | |||
| + | On type les variables pour qu' | ||
| + | |||
| + | Les variables binaires **boolean** occupent un octet (et pas un byte). | ||
| + | |||
| + | Les **float** ne peuvent dépasser une précision de 6 à 7 chiffes en tout (avant et après la virgule). Les** double** proviennent d' | ||
| + | |||
| + | </ | ||
| + | |||
| <WRAP half column> | <WRAP half column> | ||
| ^ Type ^ Nb Octets | ^ Type ^ Nb Octets | ||
| Ligne 38: | Ligne 50: | ||
| | **unsigned long** | | **unsigned long** | ||
| | **float** | | **float** | ||
| + | </ | ||
| </ | </ | ||
| + | ==== portée des variables==== | ||
| + | < | ||
| <WRAP half column> | <WRAP half column> | ||
| - | Sorte de // | + | Selon l' |
| + | * **Globales** : déclarées en dehors de toutes accolades elles sont visibles et utilisables par tout le pgm. | ||
| + | * **Locales** : déclarées au sein d'une fonction elles ne sont utilisables qu' | ||
| - | On type les variables | + | Au delà de cette portée on peut caractériser certaines |
| + | *** static** : cette variable locale est conservée au delà de l'exécution de sa fonction, sa valeur sera stockée en mémoire | ||
| + | *** volatile** : ce qualificatif est utile pour gérer les interruptions ... ? à creuser | ||
| - | Les variables binaires **boolean** occupent un octet (et pas un byte). | ||
| - | |||
| - | Les **float** ne peuvent dépasser une précision de 6 à 7 chiffes en tout (avant et après la virgule). Les** double** proviennent d' | ||
| + | </ | ||
| + | <code C> | ||
| + | // exemples de déclaration | ||
| + | const byte PinLed = 3; // pinLed est globale | ||
| + | // elle sera utilisable partout dans le pgm | ||
| + | void loop(){ | ||
| + | int Compteur = 0; // Compteur appartient au loop | ||
| + | // elle ne peut pas être utilisé dans le setup | ||
| - | </WRAP> | + | for (i=0; i++; i<100){ |
| - | </ | + | // i est une variable utile seulement à cette boucle for |
| + | } | ||
| + | } | ||
| + | </code> | ||
| + | </ | ||
| ==== constantes & #define ==== | ==== constantes & #define ==== | ||
| < | < | ||
| Ligne 80: | Ligne 107: | ||
| </ | </ | ||
| - | + | ==== + Ressources : | |
| - | ==== portée des variables==== | + | |
| < | < | ||
| <WRAP half column> | <WRAP half column> | ||
| - | Selon l' | + | === leurs types === |
| - | * **Globales** | + | * [[https:// |
| - | * **Locales** | + | * [[http://www.mon-club-elec.fr/ |
| + | * [[http:// | ||
| + | </ | ||
| - | Au delà de cette portée | + | <WRAP half column> |
| - | *** static** : cette variable locale est conservée au delà de l' | + | === leur portée |
| - | *** volatile** | + | * [[http://www.mon-club-elec.fr/ |
| + | </ | ||
| + | </ | ||
| - | </ | + | ===== Envoyer |
| - | <code C> | + | <WRAP group> |
| - | // exemples de déclaration | + | <WRAP half column> |
| - | const byte PinLed = 3; // pinLed est globale | + | </WRAP> |
| - | // elle sera utilisable partout dans le pgm | + | |
| - | void loop(){ | + | <WRAP half column> |
| - | int Compteur = 0; // Compteur appartient au loop | + | |
| - | // elle ne peut pas être utilisé dans le setup | + | |
| - | for (i=0; i++; i<100){ | + | </WRAP> |
| - | // i est une variable utile seulement à cette boucle for | + | </ |
| - | } | + | |
| - | } | + | |
| - | </code> | + | |
| - | </ | + | |
| - | ==== + Ressources : | + | ===== Numérique / Analogique ===== |
| < | < | ||
| <WRAP half column> | <WRAP half column> | ||
| - | === leurs types === | ||
| - | * [[https:// | ||
| - | * [[http:// | ||
| - | * [[http:// | ||
| </ | </ | ||
| <WRAP half column> | <WRAP half column> | ||
| - | === leur portée === | ||
| - | * [[http:// | ||
| </ | </ | ||
| </ | </ | ||