Đây là một thí dụ về nút bấm:
Nối nút bấm với RA0, RA1, RA2, RA3 với điện trở kéo lên. Nối đèn LED vào RB0, RB1, RB2, RB3 với điện trở nối tiếp và đèn LED được nối xuống mass.
(hình vẽ sẽ post lên sau vì chưa có thời gian)
Thuật toán quét sẽ như sau:
Nếu SW0 là cao thì bật LED0
Nếu SW0 là thấp thì tắt LED0
Nếu SW1 là cao thì bật LED1.... cứ như thế cho các nút bấm khác.
Chương trình như sau:
Code:
;---------------------------------
; Khoi tao
;---------------------------------
; Đặt PORTA có RA0 - RA3 là input
; Đặt PORTB có RB0 - RB3 là output
; Xóa PORTA, xóa PORTB
SW0 BTFSC PORTA, 0
GOTO TURNON0
BCF PORTB, 0
SW1 BTFSC PORTA, 1
GOTO TURNON1
BCF PORTB, 1
SW2 BTFSC PORTA, 2
GOTO TURNON2
BCF PORTB, 2
SW3 BTFSC PORTA, 3
GOTO TURNON3
BCF PORTB, 3
GOTO SW0 ; quay lại quét từ đầu
TURNON0 BSF PORTB, 0
GOTO SW1
TURNON1 BSF PORTB, 1
GOTO SW2
TURNON2 BSF PORTB, 2
GOTO SW3
TURNON3 BSF PORTB, 3
GOTO SW0
END.
Xong!
Các bạn làm thử chơi vui... Chúc một cuối tuần vui vẻ.