Informatique Industrielle : TP2 MICROPROCESSEURS
Télécharger PDFTP sur le Microprocesseur 6809
Exercice 1 : Détection des erreurs de transmission avec parité paire
On admet que l'ensemble des caractères ASCII sont codés sur 7 bits et que le 8ème bit est utilisé pour détecter les erreurs de transmission.
1. Organigramme et programme pour mettre les bits de parité paire
L'organigramme doit inclure les étapes suivantes :
- Lire un caractère ASCII depuis l'adresse $0100
- Compter le nombre de bits à 1 dans les 7 premiers bits
- Déterminer la valeur du 8ème bit pour obtenir une parité paire
- Écrire le caractère modifié avec le bit de parité
2. Organigramme et programme pour restituer l'information initiale au niveau du récepteur
L'organigramme doit inclure les étapes suivantes :
- Lire un caractère depuis le buffer
- Vérifier la parité du nombre de bits à 1 (en incluant le 8ème bit)
- Si la parité est paire, conserver le caractère ; sinon, rejeter ou corriger
- Retrouver l'information initiale sans le bit de parité
Exercice 2 : Compter le nombre de caractères dans une chaîne
On considère un buffer d'écriture commençant à l'adresse $0100 et pouvant contenir jusqu'à 9 caractères. Chaque mot est validé par un retour chariot (code $04) ou un espace (code $20).
Organigramme et programme pour compter les caractères
L'organigramme doit inclure les étapes suivantes :
- Initialiser un compteur à zéro
- Lire un caractère depuis l'adresse $0100
- Incrémenter le compteur tant que le caractère n'est pas un délimiteur ($04 ou $20)
- Afficher ou stocker le nombre total de caractères
Exercice 3 : Recherche du max/min et tri d'une table
1. Programme pour trouver le max et le min des adresses $0200 et $0201
Les résultats doivent être stockés aux adresses $0202 (max) et $0203 (min).
2. Organigramme et programme pour classer une table de 20 éléments par ordre croissant
La table commence à l'adresse $0200.
L'organigramme doit inclure les étapes suivantes :
- Comparer les éléments deux à deux
- Échanger les éléments si nécessaire pour obtenir un ordre croissant
- Répéter jusqu'à ce que la table soit triée
TP3 : Utilisation des PIA sur le MP109
I. Exemple d'adressage des registres DDRB et ORB
Les PIA sont situés aux adresses suivantes :
- PIA1 : $8840 (DDRA), $8841 (ORA), $8842 (DDRB), $8843 (ORB)
- PIA2 : $8880 (DDRA), $8881 (ORA), $8882 (DDRB), $8883 (ORB)
1. Programme pour lire une donnée sur le port A et l'envoyer sur le port B
Utiliser les registres PIA1 ($8840-$8843) ou PIA2 ($8880-$8883) selon le câblage.
2. Programme pour lire des données sur PB0 ... PB3 et les afficher sur PB4 ... PB7
Définir les registres DDRB et ORB pour configurer les bits PB0-PB3 en entrée et PB4-PB7 en sortie.
FAQ
1. Comment configurer un port en entrée/sortie sur un PIA 6809 ?
Pour configurer un port en entrée ou sortie, il faut écrire dans le registre DDR (Data Direction Register) les bits correspondants à 0 (entrée) ou 1 (sortie).
2. À quoi sert le bit de parité dans la transmission de données ?
Le bit de parité permet de détecter les erreurs de transmission en vérifiant si le nombre total de bits à 1 est pair ou impair.
3. Comment trier une table en utilisant un microprocesseur ?
Un tri par ordre croissant peut être réalisé en utilisant des algorithmes comme le tri à bulles ou le tri par insertion, qui comparent et échangent les éléments selon leur valeur.