0% ont trouvé ce document utile (0 vote)
89 vues4 pages

Correction TP9

Ce document présente deux exercices sur la programmation d'un microcontrôleur. L'exercice 1 concerne la réalisation d'un compteur sur 4 bits affiché sur un port, et l'exercice 2 concerne l'affichage séparé et alterné de l'unité et de la dizaine d'un compteur sur 2 digits.

Transféré par

houssem 4275
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
89 vues4 pages

Correction TP9

Ce document présente deux exercices sur la programmation d'un microcontrôleur. L'exercice 1 concerne la réalisation d'un compteur sur 4 bits affiché sur un port, et l'exercice 2 concerne l'affichage séparé et alterné de l'unité et de la dizaine d'un compteur sur 2 digits.

Transféré par

houssem 4275
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Module : Introduction aux systèmes embarqués

Année universitaire : 2022 – 2023

Correction TRAVAUX PRATIQUES N° : 9

INTRODUCTION A LA PROGRAMMATION DES MICROCONTROLEURS

Exercice 9.1 :

1. Compteur.

2. RA4.

3. Registre OPTION_REG :

Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0

/RBPU INTEDG T0CS T0SE PSA PS2 PS1 PS0

1 1 1 0 1 0 0 0

4.

void main ( )

TRISB = 0x00 ;

TRISA = 0xFF ;

OPTION_REG = 0xE8 ;

TMR0 = 0 ;

while (1)
{

PORTB = TMR0 ;

if (TMR0 == 10) TMR0 = 0;

Mr Nizar TOUJENI 1/4


5. Registre OPTION_REG :

Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0

/RBPU INTEDG T0CS T0SE PSA PS2 PS1 PS0

1 1 1 1 0 0 0 0

void main ( )

TRISB = 0x00 ;

TRISA = 0xFF ;

OPTION_REG = 0xF0 ;

TMR0 = 0 ;

while (1)
{

PORTB = TMR0 ;

if (TMR0 == 16) TMR0 = 0;

}Exercice 9.2 :

1. Registre OPTION_REG :

Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0

/RBPU INTEDG T0CS T0SE PSA PS2 PS1 PS0

1 1 1 1 1 1 1 1

2.

Nombre à afficher T1 T2 Afficheur 1 Afficheur 2

Bloqué Bloqué Non Non 1ms

Unité de TMR0 Saturé Bloqué Oui Non 10ms

Bloqué Bloqué Non Non 1ms

Mr Nizar TOUJENI 2/4


Dizaine de TMR0 Bloqué Saturé Non Oui 10ms

Bloqué Bloqué Non Non 1ms

3.

int uni, dix ;

void main ( )

TRISB = 0xF0 ;

TRISA = 0x1C ;

OPTION_REG = 0xFF ;

TMR0 = 0 ;

while (1)
{

while (TMR0 < 100)

uni = TMR0 % 10;


dix = TMR0 / 10;

PORTA = 0 ;

Delay_ms (1) ;

PORTB = uni;

PORTA = 1;

Delay_ms (10) ;

PORTA = 0 ;

Delay_ms (1) ;

PORTB = dix;

Mr Nizar TOUJENI 3/4


PORTA = 2;

Delay_ms (10) ;

TMR0 = 0 ;

Mr Nizar TOUJENI 4/4

Vous aimerez peut-être aussi