Contact : Paula Bruzzone Rouget
Secrétariat général :
6, rue Emmanuel Pastré 91000 Evry - Tél. : 01 64 97 82 34 idf@planete-sciences.org
FICHE F2 MAITRISER LES BASES DE LA
PROGRAMMATION
SOMMAIRE
1. Introduction à la programmation ........................................................................................................ 3
2. Un peu d’algorithmique ...................................................................................................................... 3
2.1. Les structures de contrôle ........................................................................................................ 4
2.2. Les structures de données ........................................................................................................ 4
3. Programmer l’Arduino ......................................................................................................................... 5
3.1. Qu’est ce que l’Arduino ? ......................................................................................................... 5
3.2. La structure d’un programme pour l’Arduino .......................................................................... 5
3.3. Le langage utilisé par l’Arduino ................................................................................................ 6
3.4. Les types de données les plus courants ................................................................................... 7
Les nombres : .................................................................................................................................. 7
Les booléens : .................................................................................................................................. 7
Les tableaux ..................................................................................................................................... 7
Samedis bénévoles spécial Arduino
Workshop n°1
2/16
Les chaînes de caractères ................................................................................................................ 8
Les fonctions : void .......................................................................................................................... 8
Les constantes ................................................................................................................................. 8
3.5. Les structures de contrôles les plus utilisées ........................................................................... 9
La structure conditionnelle ............................................................................................................. 9
La structure répétitive ................................................................................................................... 10
Les opérateurs de comparaison .................................................................................................... 11
Les opérateurs booléens ............................................................................................................... 11
Les opérateurs composés .............................................................................................................. 11
3.6. Les fonctions courantes .......................................................................................................... 11
Entrée-sorties digitales .................................................................................................................. 11
Entrée-sorties analogiques ............................................................................................................ 11
Autres fonctions et librairies ......................................................................................................... 12
3.7. Représenter simplement un programme Arduino ................................................................. 12
4. L’Arduino dans son environnement .................................................................................................. 14
4.1. Le boitier de paramétrage ...................................................................................................... 14
4.2. Un exemple de programme ................................................................................................... 15
3/16
1. Introduction à la programmation
Cette fiche a pour but de donner les seuls éléments de programmation nécessaires au pilotage d’un
robot filoguidé pour les Trophées. Pour approfondir, nous vous renvoyons vers les ouvrages de
références sur la programmation en langage C et plus particulièrement ceux dédiés à l’Arduino.
La programmation est connue et pratiquée depuis longtemps maintenant et les programmeurs ont
quitté les salles informatiques de la taille d’un immeuble et leurs blouses blanches (cliché des années
60) pour la table du salon ou le canapé, armés d’un portable ou d’une tablette et d’un
microcontrôleur pas plus grand qu’une carte de crédit, voir plus petit encore.
Mais les principes ont peu changé, à peine une fois tous les 10 ans. Nous sommes actuellement dans
l’ère du REST (representational state transfer) qui succède ) celle du SOA (Service Oriented
Architecture), qui a suivi la révolution objet, qui faisait elle-même suite à la programmation
procédurale…
Plus simplement, pour l’Arduino, nous nous contenterons des bases de l’algorithmique et d’éléments
du langage C une vingtaine de mots tout au plus qui sont bien approprié à ce que nous
souhaitons faire. Pour la suite, la programmation visuelle est un outil bien plus puissant que la
programmation manuelle, encor faut-il comprendre ce que l’on programme.
2. Un peu d’algorithmique
En 1976 (bientôt 40 ans), un des pères fondateurs de la programmation moderne, appelée la
programmation structurée à l’époque, avait posé une équation aussi fondamentale que simple, qui
était d’ailleurs le titre de son ouvrage :
Algorithms + Data Structures = Programs
Algorithmes + structures de données = Programmes
Dès lors, et malgré le rapprochement des données et des programmes apportés par l’approche objet,
programmer n’est pas autre chose que l’application d’algorithmes à des structures de données. Pour
simplifier et parce que la plupart des algorithmes sont disponibles sur étagères, nous allons nous
concentrer sur les structures de contrôles et les structures de données
4/16
2.1. Les structures de contrôle
Basiquement, elles sont au nombre de 3 :
La combinaison de ces 3 structures de contrôle permet de créer n’importe quel algorithme. Ce sont
des primitives. Chaque langage propose des implémentations avec des variantes mais dans le cas de
cet atelier, nous nous bornerons à ce sous-ensemble.
2.2. Les structures de données
Les données sont la matière première de l’informatique. Au-delà de ce lieu commun, elles répondent
à la vocation première de l’informatique : représenter et stocker l’information de manière à pouvoir
l’acquérir, la traiter et la restituer de façon compréhensible pour un être humain.
Hormis les ordinateurs quantiques, tous les « calculateurs numériques » du globe fonctionnent à
l’aide de deux états électriques que sont 0 et 1. Qu’ils soient unitaire (1 bit) ou regroupés en octets (8
bits) ou 32 ou 64 bits selon l’architecture du processeur, ces morceaux d’informations ne sont
matérialisés que par des états électrique ou une rémanence magnétique. Si les premiers ordinateurs
étaient programmés bit par bit, il y a très longtemps qu’il n’en est plus ainsi et par une abstraction,
nous pouvons représenter une donnée par sa structure sans se soucier de son implémentation
physique.
Il existe des structures de données élémentaires : un nombre entier, un nombre réel (donc qui peut
avoir des décimales), un caractère ou un octet. Ils sont très courants.
Les autres types de données sont dits complexes : un tableau de nombres ou de caractères, une
chaîne de caractère, un objet composé de différents types de données et qui englobe également les
procédures (méthodes) ou programmes qui permettent de les traiter.
A
B
C
A
B
C
A
C
B
Condition
VRAI
FAUXI
5/16
Avant de pouvoir stocker, traiter ou restituer une donnée, il faut la déclarer, c'est-à-dire lui donner
un nom et indiquer son type. Ainsi la donnée contenant le mot « Arduino » sera une chaîne de 7
caractères.
3. Programmer l’Arduino
3.1. Qu’est ce que l’Arduino ?
L’Arduino est un circuit électronique particulier qui comprend un mécanisme lui permettant de
traiter des données en exécutant des instructions qui sont stockées dans sa mémoire :
- Les données peuvent correspondre à des signaux qu’il détecte sur les PIN en entrée ;
- Elles peuvent également devenir des signaux qui seront envoyés vers les PIN en sortie ;
- Elles peuvent être traitées en mémoire lors de calculs ou stockées sur un support externe ou
transmises .
- Les instructions sont données par un programme et exécutées une par une par le
microcontrôleur.
Programmer un microcontrôleur comme l’Arduino dans son langage propre (on parle de langage
machine) serait fastidieux car la plus simple commande, faire afficher « Hello World ! » sur un
terminal nécessiterait de décrire plusieurs dizaines de micro-instructions.
On a donc recours à un compilateur, programme informatique qui saura traduire des instructions
dites « de haut niveau », car écrites sous une forme proche du langage courant, en instruction
élémentaires directement exécutables par le microcontrôleur. Une fois que le programme sera
compilé, il pourra être chargé dans sa mémoire et sera prêt à être exécuté.
C’est un peu simpliste mais largement suffisant pour comprendre ce qui suit.
3.2. La structure d’un programme pour l’Arduino
1 / 16 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !