SlideShare une entreprise Scribd logo
REVISION
SYN3
USTHB/2014
Mme BENTOUMI
EXO1
QUE FAIT LE PROGRAMME SUIVANT :
CLRF 0x10
debut MOVF 0x11, W
IORLW 0
BTFSC 0x3, 0x2
GOTO Fin
BCF 0x3, 0
RRF 0x11, F
BTFSC 0x3, 0
INCF 0x10, F
GOTO debut
Fin NOP
END
USTHB/2014
Mme BENTOUMI
EXO2
LIST p=16F877
#INCLUDE <p16F877.inc>
org 0x000
bsf STATUS,RP0
movlw b'11010111'
movwf OPTION_REG
movlw B'00000000'
movwf TRISB
movlw B'11111111'
movwf TRISA
bcf STATUS,RP0
repeat movf PORTA,W
andlw B'00001111'
movwf PORTB
call tempo
clrf PORTB
call tempo
goto repeat
tempo clrf TMR0
again btfss TMR0,7
goto again
return
end
USTHB/2014
Mme BENTOUMI
EXO2
Donner la tâche de ce programme
Ce programme prend l’état des 4 bits RA0RA3 du PORTA et les
mets sur le PORTB pendant une certain temps ,déterminé par la
scrutation du timer0( sous programme tempo ) , puis remet a
zéro PORTB pendant la meme temps et recommence ainsi de
suite.
Calculer le temps de « tempo » dans le cas d’un quartz de 8Mhz :
TMRO va de 00000000 à 10000000 = 128
OPTION-REG =111010111 donc le predivieur est à 256
Le quartz est de 8MHZ donc horloge de 8/4=2Mhz ou 0,5 µs
donc le temps est des : 0.5 x 256 x 128 = 16384µs = 16.384ms
USTHB/2014
Mme BENTOUMI
EXO3
Nous voulons utiliser l’interruption provoquée par un
changement d'état sur la broche RB0 et compter le
nombre de fois que nous déclenchons cette
interruption
Ecrire un programme en assembleur du 16f877 qui
compte le nombre de fois que l’interruption sur RB0
est déclanchée et qui envoie ce nombre sur le PORTD.
(On utilisera une variable que l’on nommera COUNT pour
calculer cette valeur )
•
USTHB/2014
Mme BENTOUMI
EXO3
List p=16f84A
#include p16f84A.inc
COUNT equ 0x20
ORG 0x00
goto main
;***************INTERRUPTION**************
****************
ORG 0x04
incf COUNT,1
bcf INTCON,0x01
movfw TEMP
retfie
;******************* PROGRAM
PRINCIPAl*********************
main
COUNT equ 0x20
TEMP equ 0x22
bsf INTCON,7
bsf INTCON,4
bcf INTCON,1 ;par precaution
bsf STATUS,5 ; Bank1
movlw 0x01
movwf TRISB ;RB0 en entrée
movlw 0x00
movwf TRISD ; RD en sortrie
bcf STATUS,5 ;Bank 0
loop
movf COUNT,W
movwf PORTD
goto loop
end
USTHB/2014
Mme BENTOUMI
EXO4
ETAT1 EQU 20
ETAT2 EQU 21
ORG 0x00
BSF STATUS,RP0
MOVLW 84
MOVWF OPTION-REG
CLRF TRISB
MOVLW 0xFF
MOVWF TRISA
BCF STATUS,RP0
ATTENT
MOVF TMR0,0
BTFSC PORTA,0
GOTO ATTENT
MOVWF ETAT1
BOUTON
BTFSS PORTA,0
GOTO BOUTON
MOVF TMR0,0
MOVWF ETAT2
MOVF ETAT1,0
SUBWF ETAT2,0
MOVWF PORTB
END
USTHB/2014
Mme BENTOUMI
EXO4
Sachant qu’un switch est connecte sur la broche
RA0 et que 8 leds sont connectées sur le PORTB,
expliquer à quoi correspond :
la boucle ATTENT et la valeur de ETAT1
la boucle BOUTON et la valeur de ETAT2
La valeur affichée sur le PORTB
Expliquer ce que fait ce programme ?:
USTHB/2014
Mme BENTOUMI
EXO5
Ecrire le programme qui permet d’inverser l’état
de la LED connectée à la broche RB5 du
PORTB lorsqu’on appuie 20 fois
successivement sur le Bouton Poussoir
connecté a la broche RA0 du PORTA d’un PIC
16F877
USTHB/2014
Mme BENTOUMI
EXO5
list p=16F877A
#include P16F877A.INC
Reg EQU 0x0C
ORG 0X000
BSF STATUS ,RP0
CLRF TRISB
BCF STATUS ,RP0
CLRF PORTB
DEBUT
MOVLW 0x14
MOVWF REG
TEST1
BTFSS PORTA,0
GOTO TEST1
TEST2
BTFSC PORTA,0
GOTO TEST2
DECFSZ Reg ,1
GOTO TEST1
COMF PORTB ,1
GOTO DEBUT
END
USTHB/2014
Mme BENTOUMI

Contenu connexe

Plus de wafawafa52

515878259-Node-Group-Synch-Workshop.pptx
515878259-Node-Group-Synch-Workshop.pptx515878259-Node-Group-Synch-Workshop.pptx
515878259-Node-Group-Synch-Workshop.pptx
wafawafa52
 
385288768-TD-Training-Modules-Mobilis.pptx
385288768-TD-Training-Modules-Mobilis.pptx385288768-TD-Training-Modules-Mobilis.pptx
385288768-TD-Training-Modules-Mobilis.pptx
wafawafa52
 
Ericsson Microwave Products Overview.ppt
Ericsson Microwave Products Overview.pptEricsson Microwave Products Overview.ppt
Ericsson Microwave Products Overview.ppt
wafawafa52
 
BaseBand-6630-Moshell-Commands .pdf
BaseBand-6630-Moshell-Commands      .pdfBaseBand-6630-Moshell-Commands      .pdf
BaseBand-6630-Moshell-Commands .pdf
wafawafa52
 
45555555555-4G-Training .pptx
45555555555-4G-Training            .pptx45555555555-4G-Training            .pptx
45555555555-4G-Training .pptx
wafawafa52
 
5-LTE-IP-Troubleshooting .ppt
5-LTE-IP-Troubleshooting            .ppt5-LTE-IP-Troubleshooting            .ppt
5-LTE-IP-Troubleshooting .ppt
wafawafa52
 
Sharing-Knowledge-OAM-3G-Ericsson .ppt
Sharing-Knowledge-OAM-3G-Ericsson   .pptSharing-Knowledge-OAM-3G-Ericsson   .ppt
Sharing-Knowledge-OAM-3G-Ericsson .ppt
wafawafa52
 
LTE-BASICS-ppt .ppt
LTE-BASICS-ppt                      .pptLTE-BASICS-ppt                      .ppt
LTE-BASICS-ppt .ppt
wafawafa52
 
ran-introicbasictroubleshooting3-230122164831-426c58cd.pdf
ran-introicbasictroubleshooting3-230122164831-426c58cd.pdfran-introicbasictroubleshooting3-230122164831-426c58cd.pdf
ran-introicbasictroubleshooting3-230122164831-426c58cd.pdf
wafawafa52
 
toaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdf
toaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdftoaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdf
toaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdf
wafawafa52
 
mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...
mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...
mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...
wafawafa52
 
FPGA_Logic.pdf
FPGA_Logic.pdfFPGA_Logic.pdf
FPGA_Logic.pdf
wafawafa52
 
DWDM-Presentation.pdf
DWDM-Presentation.pdfDWDM-Presentation.pdf
DWDM-Presentation.pdf
wafawafa52
 
Verilog HDL Design Examples ( PDFDrive ).pdf
Verilog HDL Design Examples ( PDFDrive ).pdfVerilog HDL Design Examples ( PDFDrive ).pdf
Verilog HDL Design Examples ( PDFDrive ).pdf
wafawafa52
 
VHDL summary.pdf
VHDL summary.pdfVHDL summary.pdf
VHDL summary.pdf
wafawafa52
 
ROM PAL PLA.ppt
ROM PAL PLA.pptROM PAL PLA.ppt
ROM PAL PLA.ppt
wafawafa52
 
Lecture 16 RC Architecture Types & FPGA Interns Lecturer.pptx
Lecture 16 RC Architecture Types & FPGA Interns Lecturer.pptxLecture 16 RC Architecture Types & FPGA Interns Lecturer.pptx
Lecture 16 RC Architecture Types & FPGA Interns Lecturer.pptx
wafawafa52
 
exam.ppt
exam.pptexam.ppt
exam.ppt
wafawafa52
 
INSTRUMENTATION.pptx
INSTRUMENTATION.pptxINSTRUMENTATION.pptx
INSTRUMENTATION.pptx
wafawafa52
 
cnacan (2).ppt
cnacan (2).pptcnacan (2).ppt
cnacan (2).ppt
wafawafa52
 

Plus de wafawafa52 (20)

515878259-Node-Group-Synch-Workshop.pptx
515878259-Node-Group-Synch-Workshop.pptx515878259-Node-Group-Synch-Workshop.pptx
515878259-Node-Group-Synch-Workshop.pptx
 
385288768-TD-Training-Modules-Mobilis.pptx
385288768-TD-Training-Modules-Mobilis.pptx385288768-TD-Training-Modules-Mobilis.pptx
385288768-TD-Training-Modules-Mobilis.pptx
 
Ericsson Microwave Products Overview.ppt
Ericsson Microwave Products Overview.pptEricsson Microwave Products Overview.ppt
Ericsson Microwave Products Overview.ppt
 
BaseBand-6630-Moshell-Commands .pdf
BaseBand-6630-Moshell-Commands      .pdfBaseBand-6630-Moshell-Commands      .pdf
BaseBand-6630-Moshell-Commands .pdf
 
45555555555-4G-Training .pptx
45555555555-4G-Training            .pptx45555555555-4G-Training            .pptx
45555555555-4G-Training .pptx
 
5-LTE-IP-Troubleshooting .ppt
5-LTE-IP-Troubleshooting            .ppt5-LTE-IP-Troubleshooting            .ppt
5-LTE-IP-Troubleshooting .ppt
 
Sharing-Knowledge-OAM-3G-Ericsson .ppt
Sharing-Knowledge-OAM-3G-Ericsson   .pptSharing-Knowledge-OAM-3G-Ericsson   .ppt
Sharing-Knowledge-OAM-3G-Ericsson .ppt
 
LTE-BASICS-ppt .ppt
LTE-BASICS-ppt                      .pptLTE-BASICS-ppt                      .ppt
LTE-BASICS-ppt .ppt
 
ran-introicbasictroubleshooting3-230122164831-426c58cd.pdf
ran-introicbasictroubleshooting3-230122164831-426c58cd.pdfran-introicbasictroubleshooting3-230122164831-426c58cd.pdf
ran-introicbasictroubleshooting3-230122164831-426c58cd.pdf
 
toaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdf
toaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdftoaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdf
toaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdf
 
mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...
mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...
mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...
 
FPGA_Logic.pdf
FPGA_Logic.pdfFPGA_Logic.pdf
FPGA_Logic.pdf
 
DWDM-Presentation.pdf
DWDM-Presentation.pdfDWDM-Presentation.pdf
DWDM-Presentation.pdf
 
Verilog HDL Design Examples ( PDFDrive ).pdf
Verilog HDL Design Examples ( PDFDrive ).pdfVerilog HDL Design Examples ( PDFDrive ).pdf
Verilog HDL Design Examples ( PDFDrive ).pdf
 
VHDL summary.pdf
VHDL summary.pdfVHDL summary.pdf
VHDL summary.pdf
 
ROM PAL PLA.ppt
ROM PAL PLA.pptROM PAL PLA.ppt
ROM PAL PLA.ppt
 
Lecture 16 RC Architecture Types & FPGA Interns Lecturer.pptx
Lecture 16 RC Architecture Types & FPGA Interns Lecturer.pptxLecture 16 RC Architecture Types & FPGA Interns Lecturer.pptx
Lecture 16 RC Architecture Types & FPGA Interns Lecturer.pptx
 
exam.ppt
exam.pptexam.ppt
exam.ppt
 
INSTRUMENTATION.pptx
INSTRUMENTATION.pptxINSTRUMENTATION.pptx
INSTRUMENTATION.pptx
 
cnacan (2).ppt
cnacan (2).pptcnacan (2).ppt
cnacan (2).ppt
 

REVISION SYN3.pptx

  • 2. EXO1 QUE FAIT LE PROGRAMME SUIVANT : CLRF 0x10 debut MOVF 0x11, W IORLW 0 BTFSC 0x3, 0x2 GOTO Fin BCF 0x3, 0 RRF 0x11, F BTFSC 0x3, 0 INCF 0x10, F GOTO debut Fin NOP END USTHB/2014 Mme BENTOUMI
  • 3. EXO2 LIST p=16F877 #INCLUDE <p16F877.inc> org 0x000 bsf STATUS,RP0 movlw b'11010111' movwf OPTION_REG movlw B'00000000' movwf TRISB movlw B'11111111' movwf TRISA bcf STATUS,RP0 repeat movf PORTA,W andlw B'00001111' movwf PORTB call tempo clrf PORTB call tempo goto repeat tempo clrf TMR0 again btfss TMR0,7 goto again return end USTHB/2014 Mme BENTOUMI
  • 4. EXO2 Donner la tâche de ce programme Ce programme prend l’état des 4 bits RA0RA3 du PORTA et les mets sur le PORTB pendant une certain temps ,déterminé par la scrutation du timer0( sous programme tempo ) , puis remet a zéro PORTB pendant la meme temps et recommence ainsi de suite. Calculer le temps de « tempo » dans le cas d’un quartz de 8Mhz : TMRO va de 00000000 à 10000000 = 128 OPTION-REG =111010111 donc le predivieur est à 256 Le quartz est de 8MHZ donc horloge de 8/4=2Mhz ou 0,5 µs donc le temps est des : 0.5 x 256 x 128 = 16384µs = 16.384ms USTHB/2014 Mme BENTOUMI
  • 5. EXO3 Nous voulons utiliser l’interruption provoquée par un changement d'état sur la broche RB0 et compter le nombre de fois que nous déclenchons cette interruption Ecrire un programme en assembleur du 16f877 qui compte le nombre de fois que l’interruption sur RB0 est déclanchée et qui envoie ce nombre sur le PORTD. (On utilisera une variable que l’on nommera COUNT pour calculer cette valeur ) • USTHB/2014 Mme BENTOUMI
  • 6. EXO3 List p=16f84A #include p16f84A.inc COUNT equ 0x20 ORG 0x00 goto main ;***************INTERRUPTION************** **************** ORG 0x04 incf COUNT,1 bcf INTCON,0x01 movfw TEMP retfie ;******************* PROGRAM PRINCIPAl********************* main COUNT equ 0x20 TEMP equ 0x22 bsf INTCON,7 bsf INTCON,4 bcf INTCON,1 ;par precaution bsf STATUS,5 ; Bank1 movlw 0x01 movwf TRISB ;RB0 en entrée movlw 0x00 movwf TRISD ; RD en sortrie bcf STATUS,5 ;Bank 0 loop movf COUNT,W movwf PORTD goto loop end USTHB/2014 Mme BENTOUMI
  • 7. EXO4 ETAT1 EQU 20 ETAT2 EQU 21 ORG 0x00 BSF STATUS,RP0 MOVLW 84 MOVWF OPTION-REG CLRF TRISB MOVLW 0xFF MOVWF TRISA BCF STATUS,RP0 ATTENT MOVF TMR0,0 BTFSC PORTA,0 GOTO ATTENT MOVWF ETAT1 BOUTON BTFSS PORTA,0 GOTO BOUTON MOVF TMR0,0 MOVWF ETAT2 MOVF ETAT1,0 SUBWF ETAT2,0 MOVWF PORTB END USTHB/2014 Mme BENTOUMI
  • 8. EXO4 Sachant qu’un switch est connecte sur la broche RA0 et que 8 leds sont connectées sur le PORTB, expliquer à quoi correspond : la boucle ATTENT et la valeur de ETAT1 la boucle BOUTON et la valeur de ETAT2 La valeur affichée sur le PORTB Expliquer ce que fait ce programme ?: USTHB/2014 Mme BENTOUMI
  • 9. EXO5 Ecrire le programme qui permet d’inverser l’état de la LED connectée à la broche RB5 du PORTB lorsqu’on appuie 20 fois successivement sur le Bouton Poussoir connecté a la broche RA0 du PORTA d’un PIC 16F877 USTHB/2014 Mme BENTOUMI
  • 10. EXO5 list p=16F877A #include P16F877A.INC Reg EQU 0x0C ORG 0X000 BSF STATUS ,RP0 CLRF TRISB BCF STATUS ,RP0 CLRF PORTB DEBUT MOVLW 0x14 MOVWF REG TEST1 BTFSS PORTA,0 GOTO TEST1 TEST2 BTFSC PORTA,0 GOTO TEST2 DECFSZ Reg ,1 GOTO TEST1 COMF PORTB ,1 GOTO DEBUT END USTHB/2014 Mme BENTOUMI