Download as pdf or txt
Download as pdf or txt
You are on page 1of 18

LTF FES 1er BTS-SE TD Electronique

TD N°4
INITIATION DU MICROCONTROLEUR PIC16F84

Adresse Code Instruction Assembleur Commentaire


machine
ORG 0x000 *……………………………………………………………………………………………………

0000 86 55 BSF STATUS,RP0 *……………………………………………………………………………………………………

0001 ……………………… CLRF TRISB *……………………………………………………………………………………………………

0002 ……………………… BCF STATUS,RP0 *……………………………………………………………………………………………………

………………… ……………………… MOVLW 0x55 *……………………………………………………………………………………………………

………………… ……………………… MOVWF PORTB *……………………………………………………………………………………………………

………………… ……………………… FIN GOTO FIN *……………………………………………………………………………………………………

Présenté par Mr AZOUGAGH Page 1


LTF FES 1er BTS-SE TD Electronique

Adresse Code Instruction Assembleur Commentaire


machine
ORG 0x000 *……………………………………………………………………………………………………

0000 86 55 BSF STATUS,RP0 *……………………………………………………………………………………………………

0001 ……………………… CLRF TRISB *……………………………………………………………………………………………………

0002 ……………………… BCF STATUS,RP0 *……………………………………………………………………………………………………

………………… ……………………… ………………………………………… *……………………………………………………………………………………………………

………………… ……………………… ………………………………………… *……………………………………………………………………………………………………

………………… ……………………… FIN GOTO FIN *……………………………………………………………………………………………………

TEMPO
Instruction Commentaire Durée
Assembleur d’exécution
(en µs) N ← 0xFF

……………………………………… *………………………………………………………………………… …………………………

……………………………………… *………………………………………………………………………… …………………………


N ← N - 1
……………………………………… *………………………………………………………………………… …………………………
NON
……………………………………… *………………………………………………………………………… ………………………… N = 0 ?

……………………………………… *………………………………………………………………………… ………………………… OUI

Retour

Présenté par Mr AZOUGAGH Page 2


LTF FES 1er BTS-SE TD Electronique

-
-
-

RB7 RB6 RB5 RB4 RB3 RB2 RB1 RB0

Présenté par Mr AZOUGAGH Page 3


LTF FES 1er BTS-SE TD Electronique

RB7 RB6 RB5 RB4 RB3 RB2 RB1 RB0

RB7 RB6 RB5 RB4 RB3 RB2 RB1 RB0

PB7 PB6 PB5 PB4 PB3 PB2 PB1 PB0 Code en hexadécimal
1 0 0 0 0 0 0 1 0x81
1 1 0 0 0 0 1 1 0xC3

Présenté par Mr AZOUGAGH Page 4


LTF FES 1er BTS-SE TD Electronique

SEQUENCE addwf PCL,f ; …………………………………………………………………………………………….


RETLW 0x81 ; …………………………………………………………………………………………….
RETLW 0xC3 ; …………………………………………………………………………………………….
…………………………………………………
…………………………………………………
…………………………………………………
…………………………………………………
…………………………………………………

Début

NS ← 0

W ← NS

W ← SEQUENCE

PORTB ← W

Tempo

NS ← NS + 1

NON
NS=7 ?

OUI

Présenté par Mr AZOUGAGH Page 5


LTF FES 1er BTS-SE TD Electronique

TD N° 5 : LES INTERRUPTIONS

BPINT

PB7 PB6 PB5 PB4 PB3 PB2 PB1

PB7 PB6 PB5 PB4 PB3 PB2 PB1 Code en hexadécimal


1 1 0 0 0 0 0 C0h

Présenté par Mr AZOUGAGH Page 6


LTF FES 1er BTS-SE TD Electronique

RB7 RB6 RB5 RB4 RB3 RB2 RB1

̅̅̅̅̅̅̅̅
RBPU

Présenté par Mr AZOUGAGH Page 7


LTF FES 1er BTS-SE TD Electronique

LIST p=16f84A, f=inhx8m, r=dec

#INCLUDE "p16f84A.inc"

__CONFIG _CP_OFF & _XT_OSC & _PWRTE_OFF & _WDT_OFF

Reset ORG 0x000


goto JEULUM1

ORG 0x004
JEULUM2 * début de la routine d’interruption
……………………………………….
……………………………………….
…….…………………………………
……………………………………….
……………………………………….
…….…………………………………
……………………………………….
……………………………………….
……………………………………….
……………………………………….
……………………………………….
……………………………………….
……………………………………….
……………………………………….
……………………………………….
……………………………………….

RETFIE

JEULUM1 * programme du jeu de lumière 1


……………………………………….
……………………………………….
…….…………………………………
……………………………………….
……………………………………….
…….…………………………………
……………………………………….
……………………………………….
……………………………………….
……………………………………….
……………………………………….
……………………………………….
……………………………………….
……………………………………….
……………………………………….
……………………………………….

TEMPO * début sous programme de temporisation


………………………………………
…….…………………………………
……………………………………….
……………………………………….
……………………………………….
……………………………………….

RETURN

END

Présenté par Mr AZOUGAGH Page 8


LTF FES 1er BTS-SE TD Electronique

TD N°6 : Programmation des ports d’E/S


Application : Test de bouton poussoir et commande d’afficheur

Début

N ← 0

W ← N

PORTB ← W

Tempo

N ← N + 1

NON
N = 10
?
OUI

Présenté par Mr AZOUGAGH Page 9


LTF FES 1er BTS-SE TD Electronique

Début

INC_N N ← 0

w ← N

OUI W ← N
W=99h?
NON
PORTB ← W
NON
(W and 0Fh) = 9 ?
Tempo
OUI
N ← N + 6
INC_N

N ← N + 1
NON
N = 60
RETOUR ?
OUI

Présenté par Mr AZOUGAGH Page 10


LTF FES 1er BTS-SE TD Electronique

Présenté par Mr AZOUGAGH Page 11


LTF FES 1er BTS-SE TD Electronique

BOUTON_UP

OUI
RA0=1?
OUI
NON RA0=1?
Retour
NON
INC_N

Retour

Présenté par Mr AZOUGAGH Page 12


LTF FES 1er BTS-SE TD Electronique

TD N°7 : Programmation du TIMER du PIC


Application : Affichage multiplexé

TEMPO_50ms

TMR0 ← ……………

T0IF ← 0

NON
T0IF=1?

OUI
Retour

Présenté par Mr AZOUGAGH Page 13


LTF FES 1er BTS-SE TD Electronique

f b
g

e c
d

Chiffre g f e d c b a Code en hexadécimal


0 1 1 1 1 1 1 3Fh
0 0 0 0 1 1 0 06h

AfficheN

W ← N

W ← CODE_BCD

PORTB ← W

Retour

Présenté par Mr AZOUGAGH Page 14


LTF FES 1er BTS-SE TD Electronique

Présenté par Mr AZOUGAGH Page 15


LTF FES 1er BTS-SE TD Electronique

CBLOCK 0x020
N, Unite, Dizaine
ENDC

org 0x0
goto debut

org 0x04

RETFIE

debut BSF STATUS,RP0


MOVLW ……………………………………
MOVWF TRISB ; PORTB en sortie
MOVLW ……………………………………
MOVWF TRISA ; PORTA en sortie
MOVLW ……………………………………
MOVWF OPTION_REG ; prescaler 1/256, horloge interne du Timer
BCF STATUS,RP0
MOVLW ……………………………………
MOVWF INTCON ; Activer l’interruption TMR0 (GIE=1 et T0IE=1)

CLRF PORTA ; ……………………………………………………………………………………


CLRF Unite ; ………………………………………………………………………………….
CLRF Dizaine ; ………………………………………………………………………………….
loop CALL INC_Comptage ; incrémente Unite et Dizaine
CALL TEMPO
GOTO loop

Présenté par Mr AZOUGAGH Page 16


LTF FES 1er BTS-SE TD Electronique

AFFICHE_UNITE

W ← Unite

W ← CODE_BCD

PORTA ← 0

PORTB ← W

RA0 ← 1

Retour

INT_T0I

NON
T0IF=1 ?

OUI Retour d’interruption


W_TEMP ← W
S_TEMP ← STATUS

T0IF ← 0

TMR0 ← …………

NON
RA0=1 ?

OUI
AFFICHE_DIZAINE AFFICHE_UNITE

W_TEMP ← W
S_TEMP ← STATUS

Retour d’interruption

Présenté par Mr AZOUGAGH Page 17


LTF FES 1er BTS-SE TD Electronique

TEMPO_1s

N ← ……………

NON
N=0?

OUI
Retour

-
-

Présenté par Mr AZOUGAGH Page 18

You might also like