chào các bác.em là một thành viên mới nhập môn hôm nay mới có điều kiện ra mắt các bác.cho em gửi lời chào tới tất cả các bác là thành viên của diễn đàn.
chẳng là em giờ bắt đầu nghiên cứu về vi điều khiển mà co nhiều thắc mắc quá không biết làm sao bây giờ.lên em nhờ các bác giải đáp giùm em..
em lap trinh cho pic 16f84a nhưng mà thắc mắc chẳng biết viết vào đâu lên đành vào phần này cửa diễn đàn mong các bác thông cảm
Code:
;********nguyen tu******
list p=pic16f84a
include p16f84a.inc
__config _hs_osc& _wdt_off & _pwrte_on &_cp_off
errorlevel -302
;******label difinition*****
ra0 equ 0x00
ra1 equ 0x01
ra2 equ 0x02
ra3 equ 0x03
ra4 equ 0x04
time equ 9fh
count1 equ 0x0c
count2 equ 0x0d
status equ 0 x03
;******'1'off '0'on
;********** pattern 0 *********
p00 equ b'11111110'
p01 equ b'11111100'
p02 equ b'11111000'
p03 equ b'11110001'
p04 equ b'11100011'
p05 equ b'11000111'
p06 equ b'10001111'
p07 equ b'00011111'
p08 equ b'00111111'
p09 equ b'01111111'
;***kieu2***********
p10 equ b'01111110'
p11 equ b'00111100'
p12 equ b'00011000'
p13 equ b'10000001'
p14 equ b'11000011'
p15 equ b'11100111'
p16 equ b'11111111'
p17 equ b'11100111'
p18 equ b'11000011'
p19 equ b'11000011'
p20 equ b'10000001'
p21 equ b'00011000'
p22 equ b'00111100'
p24 equ b'01111110'
;***kieu 3
p25 equ b'01111110'
p26 equ b'10111101'
p27 equ b'11011011'
p28 equ b'11100111'
p29 equ b'11100111'
p30 equ b'11011011'
p31 equ b'10111101'
p32 equ b'01111110'
;*****start program******
org 0x00
goto int
org 0x04
goto int
;***chuong trinh ban dau ***
org 0x05
int
bsf status,rp0
movlw h'ff'
movwf trisa
bcf status,rp0
movlw h'ff'
movwf portb
;***check key process****
keyscan
btfss porta,ra0 ;ra0 on(low label)?
call k1
btfss porta,ra1
call k2
btfss porta,ra2
call k3
goto keyscan
k1
movlw p00
movwf portb
call delay
movlw p01
movwf portb
call delay
movlw p02
movwf portb
call delay
movlw p03
movwf portb
call delay
movlw p04
movwf portb
call delay
movlw p05
movwf portb
call delay
movlw p06
movwf portb
call delay
movlw p07
movwf portb
call delay
movlw p08
movwf portb
call delay
movlw p09
movwf portb
call delay
movlw h'ff'
movwf portb
return
k2
movlw p10
movwf portb
call delay
movlw p11
movwf portb
call delay
movlw p12
movwf portb
call delay
movlw p13
movwf portb
call delay
movlw p14
movwf portb
call delay
movlw p15
movwf portb
call delay
movlw p16
movwf portb
call delay
movlw p17
movwf portb
call delay
movlw p18
movwf portb
call delay
movlw p19
movwf portb
call delay
movlw p20
movwf portb
call delay
movlw p21
movwf portb
call delay
movlw p22
movwf portb
call delay
movlw p23
movwf portb
call delay
movlw p24
movwf portb
call delay
movlw h'ff'
movwf portb
call delay
return
k3
movlw p25
movwf portb
call delay
movlw p26
movwf portb
call delay
movlw p27
movwf portb
call delay
movlw p28
movwf portb
call delay
movlw p29
movwf portb
call delay
movlw p30
movwf portb
call delay
movlw p31
movwf portb
call delay
movlw p32
movwf portb
call delay
movlw h'ff'
movwf portb
call delay
return
delay
movlw time
movwf count1
loop1
decfsz count1
goto loop1
movwf count1
loop2
decfsz count1
goto loop2
return
end
đây là toàn bộ code em viết để làm cho 8 led chạy nhưng không hiểu sao mà không tài nào dịch được ra file .hex.mong các bác júp em xem em viết sai ở đâu. em dich bằng phần mềm MPLAB IDE 7.50