Professional Documents
Culture Documents
1:MC CH -Kim tra kh nng truy xut I/O ca thit b thng qua 1 led n bo hiu c mc ngoi v tr to bi phn mm. 3.2. Yu cu: - S dng c Kit PICDEM2 Plus - S dng c b cng c lp trnh MPLAB - Vit gi thut v chng trnh qut 4 led n t phi sang v t tri sang. - Nm cu trc phn cng ca PIC16F877A. 3.3 S khi chung:
B DAO NG
B X L TRUNG TM
OUTPUT
PIC16f877A
Vcc GND
3.4 Xy dng gii thut: 3.4.1: Tnh ton tr 2s (DELAY) : Chu k dao ng ca thch anh t0 : t0 = f = 1/(4*106) 0 Thi gian thc hin xong mt lnh ti : ti = 4*t0. S dng thch anh 4Mhz, thi gian thc hin xong mt lnh l: ti = 4* Vy 2s = 8*250*(199 + 1)*5*1 s 3.4.2:Gii thut bng ngn ng gi: LSR: -Khi to portB -Khi to bit c bng 1 -Dch tri -Kim tra RB3,nu bng mt th quay li dch t u
1 = 1 s 4 *10 6
1
RSR: -Khi to portB -Khi to bit c bng 1 -Dch tri -Kim tra RB0,nu bng mt th quay li dch t u Delay:-Np gi tr vo count1,count2,count3,count4 -Gim lm lt cc gi tr ca count1,2,3,4 kim tra vi gi tr 0,nu bng 0 th tip tc gim thanh ghi tip theo. 3.4.2: S khi: LSR:
?
RSR:
DELAY:
GIM COUNT4
COUNT4 =0 ?
GIM COUNT3
COUNT3 =0 ?
GIM COUNT2
COUNT2 =0 ?
GIM COUNT1
COUNT1 =0 ?
RETURN
3.5:Chng tnh ASEMBLY: LSR: list p = 16f877a #include <P16F877A.INC> ORG 0X0000 GOTO START START CLRF PORTB BCF STATUS,RP1 BSF STATUS,RP0 CLRF TRISB BCF STATUS,RP0 BSF STATUS,C LEFT RLF PORTB,1 CALL DELAY BTFSS PORTB,3 GOTO LEFT GOTO START RSL: list p = 16f877a #include <P16F877A.INC> ORG 0X0000 GOTO START START CLRF PORTB BCF STATUS,RP1 BSF STATUS,RP0 CLRF TRISB BCF STATUS,RP0 BSF STATUS,C RIGHT RLF PORTB,1 CALL DELAY BTFSS PORTB,0 GOTO RIGHT GOTO START DELAY: list p = 16f877a #include <P16F877A.INC> COUNT1 EQU 0X20 COUNT2 EQU 0X21 COUNT3 EQU 0X22 COUNT4 EQU 0X23 ORG 0X0000 DELAY MOVLW D'8'
MOVWF COUNT1 LOOP2 MOVLW D'250 MOVWF COUNT2 LOOP1 MOVLW D'199' MOVWF COUNT3 LOOP0 MOVLW D'1' MOVWF COUNT4 DECFSZ COUNT4,1 GOTO $+2 DECFSZ COUNT3,1 GOTO LOOP0 DECFSZ COUNT2,1 GOTO LOOP1 DECFSZ COUNT1,1 GOTO LOOP2 END
BI TH NGHIM S 4: BUTTON CONTROL 4.1MC CH -Kim tra kh nng truy xut I/O ca thit b thng qua 1 led n bo hiu c mc ngoi v tr to bi phn mm. 4.2. Yu cu: - S dng c Kit PICDEM2 Plus - S dng c b cng c lp trnh MPLAB - Vit gii thut v chng trnh dng nt bm chuyn i cc ch qut 4 LED lm bi th nghim s 4. - Nm cu trc phn cng ca PIC16F877A. 4.3 S khi chung:
B DAO NG
B X L TRUNG TM INPUT
OUTPUT
- S nguyn l gin lc
4.4.Xy dng gii thut: 4.4.1. Gii thut bng ngn ng gi:
Khai bo cc thanh ghi cn dung: L EQU 0x20 H EQU 0x21
- Sau khi dch xong th quay li kim tra nt nhn Chng trnh DISPLAY:
- Np W vo PORTB - Cho dng - INDEX=INDEX+1 - Np 0x07 vo W - W-INDEX - Kim tra c Z = 0? + Nu ng: Xa INDEX - Kim tra nt RA4 c nhn ? - Nu ng nhy ti LOOP1 - Ngc li nhy ti LOOP2
Switch bank 1 b11110000 into W Move W->TRISB Set TRISA,4 Switch bank 0
INDEX++
RRF PORTB,1 CALL DELAY BTFSS PORTB,0 GOTO RIGHT GOTO LOOP RET
DELAY movlw d'4' movwf L movlw d'25' movwf H LOOP3 DECFSZ L,F goto LOOP3 DECFSZ H,F goto LOOP3 return