1 Introduction 1-1 Chaîne de développement Algorithm e C+ + Algorigramm e languag e machine binaire Le programme est écrit à l aide de Multiprog sous forme d algorigramme puis introduit dans le microcontrôleur sous forme de langage machine µc Nom : Thème : Réaliser une programmation Page 1 / 8
1-2 Mise en place du poste Ouvrez le logiciel multiprog atmel Ouvrez le fichier «faire_clignoter_lampe» situé dans «W:/commun/TP/S4» Après avoir mis sous tension la carte cible Cliquer sur puis sur le logiciel transforme le logigramme en langage C le programme est transféré dans le microcontrôleur de la carte cible La lampe PB0 doit clignoter Nom : Thème : Réaliser une programmation Page 2 / 8
2 Modification du programme 2-1 Faire clignoter une autre lampe Cliquer sur config La fenêtre suivante apparaît sous l onglet Configuration E/S (entrées/ sorties) Repérez sur l automate les sorties pré-câblées possibles : TOR veut dire Tout ou Rien, c'est-àdire que les sorties sont soit actives soit éteintes (vraies ou fausses, 0 ou 1) Dans la fenêtre configuration effacez LAMPE1 face à PB0 puis réécrivez LAMPE1 sur une seule autre sortie de votre choix (PB1, PB2, PD4, PD5..) Validez, Compilez, transférez et observez. Réessayez avec une autre sortie si vous voulez. Nom : Thème : Réaliser une programmation Page 3 / 8
2-2 Faire clignoter plusieurs lampes (activer plusieurs sorties) Cliquer sur config Définissez une autre sortie appelée LAMPE2 Validez «ok» Sur l algorigramme, cliquez avec le bouton droit de la souris sur la case activant la LAMPE1, cliquez sur propriétés Ajoutez LAMPE2=1 Pour qu elle soit Allumée Validez, Compilez, transférez et observez Nom : Thème : Réaliser une programmation Page 4 / 8
2-3 Modifier les temporisations De la même manière, faites apparaître les propriétés de la temporisation (fonction Delay), et modifiez les valeurs de temporisation qui est en ms (milliseconde) 3 Créer son programme 3-1 Programme 1 : Allumer une lampe si je veux Ouvrez un nouveau fichier Déclarez en configuration E/S un bouton BP1 et une sortie LAMPE1 Le bouton est monté en dérivation entre le 0V et l entré PA4 par exemple. Nom : Thème : Réaliser une programmation Page 5 / 8
Expression à traduire «Si j appuie sur le bouton BP1 la sortie LAMPE1 s allume sinon elle s éteint» Mettre une boucle infinie While (tant que) avec valeur logique =1 pour que le microcontrôleur scrute toujours le programme (plusieurs milliers de fois par seconde) Mettre en place La condition SI alors SINON La fonction SI (IF en anglais) se représente comme suit : Attention la condition bouton appuyée est inversée : BP1=0 veut dire bouton appuyé Mettre les actions allumer lampe Eteindre lampe au bon endroit Validez, Compilez, transférez et observez Corrigez si besoin Nom : Thème : Réaliser une programmation Page 6 / 8
3-2 La lampe s allume 3 fois si j appuie sur le bouton Pour compter, on a besoin d une variable que l on va appeler compteur Déclarez-la dans le panneau de configuration (valeuurs possibles : 0 à 255) Expression à traduire Si j appuie sur le bouton BP1 alors la Lampe clignote 3 fois Sinon la lampe est éteinte L itération va nous permettre de compter de 1 à 3 Dessinez le logigramme ci-contre En complétant les 2 zones comme vu précédemment Validez, Compilez et observez, transférez Ensuite modifiez le nombre de fois pour obtenir 5 clignotements de durée total 5 secondes Nom : Thème : Réaliser une programmation Page 7 / 8
3-3 Avec 2 boutons Expression à traduire: Si j appuie sur le bouton BP1 alors la LAMPE1 s allume Sinon Si j appuie sur le bouton BP2 alors la LAMPE1 s éteint Sinon rien Configurez vos entrées sorties Traduisez cette expression par un logigramme contenant 2 conditions «SI alors sinon» imbriquées Validez, Compilez, transférez et observez Nom : Thème : Réaliser une programmation Page 8 / 8