[] PIC 8 (/6, 6/ ) (/, 6/) (5/7, 6/8) PIC PIC PIC (5/, 6/5) V 5 (5/, 7/ ) V LED ( LED ( /, 6/) V V V ( 5/8, 6/9) V ( 5/5, 6/6) ( V 5/8, 7/ 9) V % 6%, LED, LED /7, 6/ 5) 7,, LED, LED LED
,, ( ) 5 ma ( ) 5V V 5 6 A B C D E F G H I J 5 6 7 7 5, LED LED, LED, 7 LED,, 7 LED ( ) V LED VCC 5V 7 LED VCC f g f a g b a b c e d e d c dp dp VCC (77),, LED,, LED
(D, C, B, A), D ( ) 5 6 7 B C LT RBO RBI D A Vcc f g a b c d 8 GND e 77 6 5 9 D C B A a b c d e f g 5 6 7 8 9 LT, RBI, RBO, 5V,,, ( A D ), Vcc Vcc A A GND GND 5,, LED NAND 7LS ( NAND IC),, (, LED ) 7LS, 8 ma, ma, LED, NOT 9 don t care,
5 6 7 GND Vcc 9 8 7LS 5, PIC LED 8 PIC, LED, PIC PIC Peripheal Interface Controller,,, 5 EEPROM, 6 PIC LED PIC (PIC6F8) GND V, Vcc 5V MCLR 5V V PIC V, PIC OSC OSC (, ) LED RB
RB V PIC, ( ) LED timerasm C:Y=picY=timerasm MPLAB IDE MPLAB IDE ( ) [Project] [Project Wizard] [ ] Step One: Device: PIC6F8 [ ] Step Two: Active Toolsuite: Microchip MPASM Toolsuite [ ] Step Three: Project Name: (kadai6 ) Project Directory: C:Y=pic [ ] ( ) Project Name ( ) (5 ) Step Four: C:Y=picY=timerasm [Add >>] (timerasm) [ ] [ ] [Project] [Make] ( F ) Output BUILD SUCCEEDED timerhex 6 (kadai6) [Project] [open] (c:y=picy=kadai6mcp) [ ] timerasm (kadai6mcw) kadai6mcp Source Files timerasm Output BUILD FAILED Output ERROR 5 timerhex PIC PIC PICpro PICpro Chip Selector PIC6F8 5
Window PIC PIC, [Load] c:y=picy=timerhex timerhex [Program] PIC [yes] ( ) (WDT) on/off HS off 6 PIC, 7,, 7 LED PAtoPBasm,,, RA RB, PIC,, TIM MOVLW F9H, [TAB] [ ] [TAB] [TAB], PIC RA ON/OFF 8 PIC RA RB LED LED PIC PAtoPBasm 9 PIC RB 7 LED LED dispnumasm PIC RA RA, RA, RA 5, 67, 89 ( ), ( ), 6
,, t 6 9, V,, (countupasm), INCF,, 6, 9, 6 (MCLR ), (RA ),,,,, 9, (RA ),,,,, 9,,, (RA ) (RA ) (RA ) ( + + = ), : 7
: : 9 9 方法 方法 方法 9 9,, V V,, V,,, V, V,, /,,,,, 8
5 Ver V, V,,,, V (, / / ) ( ) (, ) [ ], + = - 5 + =, [ ], [ ],,,,, 9
LED (timerasm) ; ************************************************* ; 5 5 PORTB ON/OFF ; MHz 5 ; ************************************************* LIST P=PIC6F8 ;; INCLUDE "P6F8INC" ;; CNT EQU CH ;; CNT C CNT EQU DH ;; B CNT EQU EH ORG ;; MAIN ;; ( ) BSF STATUS,RP CLRF TRISB ;; PORTB BCF STATUS,RP MAINLP ;; CLRF PORTB ;; PORTB (LED ) CALL SECTIM ;; (5 ) MOVLW FFH ;; MOVWF PORTB ;; PORTB (LED ) CALL SECTIM ;; (5 ) GOTO MAINLP TIM MOVLW F9H MOVWF CNT TIMLP NOP DECFSZ CNT,F GOTO TIMLP ;; TIM MOVLW F9H MOVWF CNT TIMLP CALL TIM DECFSZ CNT,F GOTO TIMLP SECTIM MOVLW 5 MOVWF CNT TIMLP CALL TIM DECFSZ CNT,F GOTO TIMLP END LED (PAtoPBasm) ;*************************************** ; RA -- RA -> RB -- RB ;*************************************** LIST P=PIC6F8 INCLUDE "P6F8INC" MAIN ORG BSF STATUS,RP MOVLW FH MOVWF TRISA CLRF TRISB BCF STATUS,RP MAINLP MOVFW MOVWF GOTO PORTA PORTB MAINLP ;; A B END
(dispnumasm) ; *********************************** ; RA OFF -> "" ; RA ON -> "" ; *********************************** LIST P=PIC6F8 INCLUDE "P6F8INC" CNT CNT CNT COUNT MAIN MAINLP EQU CH EQU DH EQU EH EQU FH ORG BSF STATUS,RP MOVLW FH MOVWF TRISA ;; PORTA CLRF TRISB ;; PORTB BCF STATUS,RP MOVLW H BTFSC PORTA, CALL WAIT CALL DISP GOTO MAINLP WAIT CALL SECTIM BTFSC PORTA, MOVLW H DISP TIM TIMLP TIM TIMLP MOVWF PORTB MOVLW F9H MOVWF CNT NOP DECFSZ CNT,F GOTO TIMLP MOVLW F9H MOVWF CNT CALL TIM DECFSZ CNT,F GOTO TIMLP SECTIM MOVLW 5 MOVWF CNT TIMLP CALL TIM DECFSZ CNT,F GOTO TIMLP END
(countupasm) ; *********************************** ; (5 ) ; *********************************** LIST P=PIC6F8 INCLUDE "P6F8INC" CNT CNT CNT COUNT EQU CH EQU DH EQU EH EQU FH ORG MAIN MAINLP CHECK BSF STATUS,RP MOVLW FH MOVWF TRISA ;; PORTA CLRF TRISB ;; PORTB BCF STATUS,RP CLRF PORTB CLRF COUNT ;; COUNT= MOVLW AH CALL SECTIM INCF COUNT,F ;; COUNT++ CALL CHECK MOVF COUNT,W MOVWF PORTB ;; COUNT PORTB GOTO MAINLP MOVLW FH ANDWF COUNT, ;; bit SUBLW AH SKPZ ;; bit AH MOVFW COUNT ADDLW 6 ;; bit ah +6 MOVWF COUNT MOVLW FH ANDWF COUNT, ;; bit SUBLW AH SKPZ ;; bit AH CLRF COUNT ;; bit AH COUNT= TIM TIMLP TIM TIMLP MOVLW F9H MOVWF CNT NOP DECFSZ CNT,F GOTO TIMLP MOVLW F9H MOVWF CNT CALL TIM DECFSZ CNT,F GOTO TIMLP SECTIM MOVLW 5 MOVWF CNT TIMLP CALL TIM DECFSZ CNT,F GOTO TIMLP END