Nhờ các anh giúp đỡ em cái ASM này
dạ em có làm vậy mà. biết bao nhiêu lần rồi mà có đươc đâu nên em mới up link lên đấy chứ. biết là up link như vậy là không được nhưng biết làm sao bây giờ.hichic. em quyết tâm không bỏ cuộc đâu. em lại viết chương trình nữ nè. giúp em với anh nampn ơi.
. Em đang thử viết chương trình hiên thử chữ A, em viết thử theo cách tra bảng. nhưng sao lạ quá. Tạo file hex thì ok. Còn vào proteus chẳng thấy chữ A nào hết vậy các anh?(em vẫn dùng mạch như đã Up phía trên). Hinh như là cái bảng của em là vô tác dụng hay sao đấy. em thấy CALL vậy là vẫn như bình thường nhưng sao chương trình không nhảy xuống được cái bảng này. Với lại em mô phỏng đã không được mà sao nó lại hiện ra cái cột đáng ghét ở con led thứ 2. em quyết tâm không bỏ cuộc đâu.nhưng sao toàn mắc lỗi không vậy ta.hic hic.các anh xem thử em đã sai nơi nào vậy. em không tìm ra được. dưới đây là đoạn chương trình(em có tham khảo):
PROCESSOR 16F877A
INCLUDE <P16F877A.INC>
;--------------------------------------------
;KHAI BAO BIEN
;--------------------------------------------
SENDREG EQU 20H
COUNT EQU 21H
COUNT_138 EQU 22H ;DEM CHO 138
COUNT_8BYTE EQU 23H ;DEM CHO 8BYTE
COUNT1 EQU 24H
COUNTA EQU 25H
COUNTB EQU 26H
;--------------------------------------------
;DINH NGHIA PHAN CUNG
;--------------------------------------------
#DEFINE DATA PORTB,0
#DEFINE CLOCK PORTB,1
#DEFINE CLEAR PORTB,2
#DEFINE LATCH PORTB,3
;--------------------------------------------
;CHUONG TRINH CHINH
;--------------------------------------------
ORG 0000H
START ;CHUONG TRINH CHINH
BCF STATUS,5
BCF STATUS,6
CLRF PORTB
CLRF PORTC
BSF STATUS,5
CLRF PORTB ;CHON BR3:RB0 LA OUTPUT
CLRF PORTC ;CHON RB2:RB0 LA INPUT
BCF STATUS,5 ;CHON BANK1
;============CHUONG TRINH CHINH==============
CLRF COUNT_138
CLRF COUNT_8BYTE
MAIN
MOVLW 04H
MOVWF PORTB ;DUA CHAN SCLK LEN CAO
MOVLW D'255'
MOVWF PORTC
BCF CLEAR ;RESET DU LIEU TRONG 74HC595
NOP ;clear tac dong canh XUONG
BSF CLEAR ;DUA PIN SCLR TRO VE MUC LOGIC CAO
DI
MOVF COUNT_8BYTE,0 ;DUA GIA TRI COUNT_8BYTE VAO
;THANH GHI W
CALL TABLE ;GOI CHUONG TRINH CON TABLE
CALL SEROUT ;GOI CHUONG TRINH CON DUA 8BIT VAO 595
INCF COUNT_138,1 ;TANG COUNT_138 LEN 1 KET QUA LUU
;TRONG COUNT_138
BSF LATCH
NOP
BCF LATCH
CALL DELAY_8ms ;TAO TRE 8ms LUU 1 BYTE TREN LED MT
INCF COUNT_8BYTE,1 ;TANG COUNT_8BYTE LEN 1 KET
;QUA LUU TRONG COUNT_8BYTE
XORWF D'8' ;XOR COUNT_8BYTE VOI 8
BTFSS STATUS,Z ;KT BIT Z
GOTO DI ;NEU Z CHUA BANG 0 THI TIEP TUC LAY DU
;LIEU TRONG BANG TRA
GOTO MAIN
SEROUT
MOVWF SENDREG
MOVLW 08H
MOVWF COUNT
TESTBIT
BCF DATA
BTFSC SENDREG,7
BSF DATA
BSF CLOCK
NOP
BCF CLOCK
RLF SENDREG
DECFSZ COUNT,1
GOTO TESTBIT
RETURN
TABLE
ADDWF PCL,F
RETLW B'11111111'
RETLW B'00000001'
RETLW B'00000000'
RETLW B'11100100'
RETLW B'11100100'
RETLW B'00000000'
RETLW B'00000001'
RETLW B'11111111'
DELAY_8ms
MOVLW D'100'
MOVLW COUNT1
LOOP
MOVLW 0C7H
MOVWF COUNTA
MOVLW 01H
MOVWF COUNTB
LOOP1
DECFSZ COUNTA,1
GOTO $+2
DECFSZ COUNTB,1
GOTO LOOP1
DECFSZ COUNT1,1
GOTO LOOP1
RETURN
END
mà anh nampn ơi. em thấy anh nhh rất giỏi cái ASM này thì phải. chắc là ảnh bận nên không trả lời em quá. mong các anh giúp đỡ em hoàn thành cái này với.
__________________
Cùng nhau chia sẻ tri thức
|