• Aucun résultat trouvé

TD : Structures - Composants périphériques 6821 (pdf 6Ko)

N/A
N/A
Protected

Academic year: 2022

Partager "TD : Structures - Composants périphériques 6821 (pdf 6Ko)"

Copied!
1
0
0

Texte intégral

(1)

Langage C++ Etude de Cas Structures 26/09/02

David Saint-Mellion page 1/1

6821

E7 - PorA – PA7

fcCapot

S1 - PorB - PB0

Moteur Plateau M

Structure et Composants périphériques

E

NTREES

/S

ORTIES

TOR

1.1 Architecture matérielle

La partie opérative est couplée au système informatique par un composant 6821 (Pia) du type TOR. Le moteur est commandé par la borne 1 du port B du 6821. Le contact du fin de course connecté à la borne 7 du port A du 6821

1.2 Eléments du logiciel

Le composant

périphérique 6821 est modélisé par une structure.

struct Port6821 { unsigned char n0 ; unsigned char ORA ; unsigned char n1 ; unsigned char CRA ; unsigned char n2 ; unsigned char ORB ; unsigned char n3 ; unsigned char CRB ; } ;

Trois méthodes sont disponibles

void marcheMoteur(void) { // met à 1 le bit b0 de ORB }

void arretMoteur(void) {

// met à 0 le bit b0 de ORB }

bool lireContact (void){

// retourne la valeur du bit b7 de ORA }

La fonctionnalité

«Gérer le Moteur Plateau»

//Si fcCapot=0 //Alors

// Arrêter le Moteur plateau //Sinon

// Mettre Moteur plateau en marche //Fin si

On crée une instance de la structure Port6821

Port6821 *pia= (Port6821*)fAdeBase();

// fAdeBase renvoie la valeur 0xFF8000

Q

UESTIONS

1. Donnez l’adresse des registres ORA, CRA, ORB et CRB.

2. Proposez le codage en langage C++ de la fonctionnalité « Gérer Moteur plateau » en utilisant les fonctions disponibles.

3. Etablissez, en langage C++, le corps des fonctions : lireContact () et arretMoteur().

Références

Documents relatifs

Modifiez la fonction f de l'exercice 3 de manière à ce que la fonction fpn du même exercice permette de calculer 2 à la puissance x, pour toute valeur positive ou nulle de x..

La fonction suivante permet de calculer le prix total à payer d'un article taxable à partir du prix de l'article. Dans le calcul du prix total à payer, on a besoin des

<type> <NomFonction>(<arg1>,...,<argN>) La partie entre accolades est appelée corps de la fonction : c’est une instruction composée... 1 Fonctions

<type> <NomFonction>(<arg1>,...,<argN>) La partie entre accolades est appelée corps de la fonction : c’est une instruction composée... 1 Fonctions

Les assertifs désignent les assertions de l’enseignant et des élèves lors de la présentation et de l’accueil des savoir-faire ; les directifs de l’enseignant sont relatifs

Les variables dénies à l'intérieur d'une fonction (qui peut être main ), sont dites locales à la fonction dans laquelle elles sont déclarées. La portée des variables locales

● La fonction main() doit être réduite au maximum et ne contenir dans l’idéal que des appels à des fonctions qui sont écrites ailleurs.. Intérêts des

On souhaite à présent compléter le programme précédent avec les fonctions suivantes : ● une fonction qui affiche dans la console les éléments d’un tableau d’entiers ●