TD ARCHITECTURE DES ORDINATEURS ANNEE UNIVERSITAIRE :2019-2020
SMI-S4 I.OUADNOUNI
Programmation Assembleur 68HC11 Série de TD n°03
Exercice 1 :
Ecrire un programme permettant de réaliser un clignotant sur PA7, la temporisation sera ajustée de manière à obtenir f=1Hz, en déduire le rapport de temps entre le simulateur et un 68HC11 avec un quartz de8MHz.
Exercice 2 :
On veut commander un afficheur sept segments, pour afficher le correspondant du contenu bas de l’adresse mémoire $3000L.
1- Spécifier les sorties et les ports correspondant
2- Ecrire le programme permettant de commander cet afficheur.
Exercice 3 : MONTE CHARGE
Le travail consiste à équiper un monte-charge fonctionnant sur 2 niveaux et muni de portes de fermeture. Il n'est pas prévu pour le personnel et n'a pas de sécurité pour les personnes. Seuls deux capteurs gèlent la porte : un capteur pour la porte en position ouvert et un autre pour détecter la position fermée de la porte.
Au départ, la cabine du monte-charge se trouve à un étage inconnu et la porte est ouverte.
Actionner le bouton d'appel, à un des deux étages, provoque les opérations suivantes :
la fermeture automatique de la porte FP
le mouvement de la cabine jusqu'à l'étage appelant. MO ou DE
l'ouverture de la porte OP
Le montecharge est en état repos (attend une commande) Actionneurs : (sorties)
MO : Montée de la cabine
DE : Descente de la cabine
OP : ouverture des portes
FP : fermeture des portes Capteurs : (Entrées)
CP1 et CP2 sont les capteurs de position de la cabine
BPl et BP2 sont les Bouton Poussoir d'étages ;
CO : capteur porte ouverte
CF : capteur porte fermée
TD ARCHITECTURE DES ORDINATEURS ANNEE UNIVERSITAIRE :2019-2020
SMI-S4 I.OUADNOUNI
Nota : Un capteur activé c’est qu’il est à l’état logique 1, et un actionneur activé c’est qu’on envoie à la sortie qui lui est correspondante l’état logique 1.
Travail demandé : Ecrire un programme en assembleur permettant de réaliser la commande du monte-charge.
Exercice 4 : UNITE DE CHARGEMENT
On souhaite automatiser une chaine de remplissage des camions de sable, commandée par deux actionneurs : un vibreur commandé par un signal carré de période 250ms, et un vérin de trappe commandé en ouverture par un signal continu de 5V pendant 1s.
Pour faire cette automatisation, on dispose d’un microcontrôleur 68HC11 commandé par un quartz de fréquence 8Mhz.
1- Définir les entrées et sorties du système en spécifiant leurs ports sur le microcontrôleur.
2- Ecrire le programme de temporisation correspondant à la moitié de période du signal carré.
3- Ecrire le programme de commande de cette chaine de remplissage.
Exercice 5 : Contrôleur de péage
On souhaite réaliser un système de péage automatique, équipé de deux capteurs : un capteur de présence de voiture (H) et un capteur de péage (p_ok). A l’activation des deux capteurs la barrière commandée par un servomoteur s’ouvre pendant 15s le temps nécessaire pour que la voiture présente franchie la station de péage, puis se remet à sa position initiale grâce toujours au servomoteur commandé cette fois-ci par un signal dans le sens opposé (le temps nécessaire pour que la barrière retrouve son état initial est de 5 secondes). Les deux feux verts (V) et rouge (R) indiquent si la barrière est ouverte ou fermée.
Silo à sable vibreur
V
T Trémie de pesage
Détecteur d’écoulement d
Trémie vide : a = 1 Trémie pleine : b = 1 c
Trappe
Capteur de fermeture
On actionne le bouton « marche »
Le vibreur fait couler le sable dans la trémie.
La chute du sable est détectée par la palette d,
La trémie se rempli : le capteur a passe de 1 à 0,
La trémie est pleine : le capteur b passe de 0 à 1,
Alors, le vibreur s’arrête, d passe à 0, ce qui déclenche l’ouverture de la trappe de vidange T.
La trémie est de nouveau vide, ce qui referme T.
La fermeture est détectée par le capteur c.
TD ARCHITECTURE DES ORDINATEURS ANNEE UNIVERSITAIRE :2019-2020
SMI-S4 I.OUADNOUNI
On utilise pour l’implémentions de ce système un microcontrôleur 68HC11, fonctionnant avec un quartz de 4MHz, son port B est utilisé comme port de sortie, commandant le servomoteur et les voyants lumineux V et R. Et les broches PA0 et PA1 sont utilisés comme des ports d’entrées indiquant les états des capteurs H et p_ok.
Travail demandé : Ecrire un programme en assembleur permettant de commander le servomoteur avec deux signaux carrés d’une période de 500ms en oppositions de phases et les voyants.
Exercice 6 : CHARIOT DE TRANSPORT
Nous allons réaliser la logique de commande du déplacement d’un chariot de transport de pièces à usiner, par une carte à microcontrôleur 68HC11. Le chariot assure le déplacement d’une seule pièce à la fois. Chaque pièce pèse 30 kg. Un seul bouton poussoir B permet de commander la marche du chariot suivant les conditions indiquées ci-dessous :
MAV : la marche avant est obtenue lors de l’action sur le bouton poussoir B, uniquement si le chariot est normalement chargé. Elle cesse en fin de course avant ( fav=1 ).
MAR : la marche arrière est obtenue lors de l’action sur le bouton poussoir B, uniquement si le chariot est vide. Elle cesse en fin de course arrière ( far=1 ).
ASC : une alarme de surcharge est commandée, lors de l’action sur le bouton poussoir B, uniquement si la charge est supérieure à 35kg. Dans ce cas, le chariot reste à l’arrêt.
Le chariot est muni de deux capteurs :
C1 = 1 si le chariot est vide C1 = 0 si charge > 5kg C0 = 1 si charge > 35kg C0 = 0 si charge < 35kg
Deux contacts de fin de course sont utilisés :
fin de course avant : fav = 1 fin de course arrière : far = 1
La MAV est commandée par un servomoteur fonctionnant avec un signal carré d’une période de 300ms.
La MAR est commandée par un deuxième servomoteur mais cette fois-ci fonctionnant avec un signal carré d’une période de 100ms.
L’ASC est alimentée si le port correspondant est à l’état logique 1.
1- Spécifiez les entrées et les sorties du système et donner un tableau de correspondance avec les ports du microcontrôleur 68HC11 de commande.
2- Sachant que le microcontrôleur est alimenté par un quartz de 8MHZ, écrire le programme de notre logique de commande.