View Single Post
Old 13-09-2011, 01:36 PM   #2
tdm
Đệ tử 7 túi
 
Tham gia ngày: May 2005
Bài gửi: 258
:
Trích:
Nguyên văn bởi manhdt3 View Post
em viết code bằng asembly chay với lcd 16x2 chạy rùi nhưng mà khi hiển thị lên lcd 20x4 thì lại không chạy được mặc dù em đã set địa chỉ .Các bác chỉ giúp em với. thank các bác nhiều
PROCESSOR P16F877A
INCLUDE<P16F877A.INC>

DELAY2 EQU 0X20
DELAY3 EQU 0X21
DELAY4 EQU 0X22
ORG 0X00
GOTO START

CLOCK
MOVLW 0X02
MOVWF PORTB ; CHAN E LEN MUC 1

MOVLW 0X00
MOVWF PORTB ; CHAN E XUONG MUC 0
RETLW 0

DELAY3S
CLRF TMR0
CLRF INTCON
BSF STATUS,RP0
CLRF 0X81
BCF STATUS,RP0
LOOPP
MOVF TMR0,0
XORLW .3
BTFSS STATUS,Z
GOTO LOOPP
BCF STATUS,RP0
RETLW 0


DELAY1
MOVLW D'2'
MOVWF DELAY2

CHO
MOVLW D'1'
MOVWF DELAY3
MOVLW D'1'
MOVWF DELAY4
D1
DECFSZ DELAY3
GOTO $+2
DECFSZ DELAY4
GOTO D1
DECFSZ DELAY2
GOTO CHO

RETLW 0
START

BCF STATUS,RP1
BSF STATUS,RP0

CLRF TRISB
CLRF TRISD

BCF STATUS,RP0
CLRF PORTB
CLRF PORTD

MOVLW 0X38
MOVWF PORTD ; CHON 8BIT 2 DONG FONT 5X8
CALL CLOCK

CALL DELAY1 ; CHO THUC HIEN XONG

MOVLW 0X0E
MOVWF PORTD
CALL CLOCK
CALL DELAY1 ; CHON HIEN THI HIEN THI CON TRO

; CHON CHE DO HIEN THI CHU THEO HUONG
MOVLW 0X04
MOVWF PORTD ; HIEN THI GIAM KHONG DAY CHU
CALL CLOCK
CALL DELAY1

; BAT DAU
MOVLW 0X01 ;
MOVWF PORTD
CALL CLOCK
CALL DELAY1

LPP
MOVLW 0xC9
MOVWF PORTD
CALL CLOCK
CALL DELAY1

BSF PORTB,0

MOVLW 0X55
MOVWF PORTD
MOVLW 0X03
MOVWF PORTB
MOVLW 0X01
MOVWF PORTB

CALL DELAY1

GOTO LPP
em sửa lại như sau thì nó chạy thôi:
Code:
PROCESSOR   16F877A
            #INCLUDE "P16F877A.INC"
            __CONFIG  0x3F72;cau hinh pic

DELAY2 EQU 0X20
DELAY3 EQU 0X21
DELAY4 EQU 0X22
ORG 0X00
GOTO START

CLOCK
BSF PORTB,1
call DELAY1
BcF PORTB,1
RETLW 0

DELAY3S
CLRF TMR0
CLRF INTCON
BSF STATUS,RP0
CLRF 0X81
BCF STATUS,RP0
LOOPP
MOVF TMR0,0
XORLW .3
BTFSS STATUS,Z
GOTO LOOPP
BCF STATUS,RP0
RETLW 0


DELAY1
MOVLW .4
MOVWF DELAY3
CHO
MOVLW .255
MOVWF DELAY2
DECFSZ DELAY2
GOTO $-1
DECFSZ DELAY3
GOTO CHO
RETLW 0
START

BCF STATUS,RP1
BSF STATUS,RP0

CLRF TRISB
CLRF TRISD

BCF STATUS,RP0
CLRF PORTB
CLRF PORTD

MOVLW 0X38
MOVWF PORTD ; CHON 8BIT 2 DONG FONT 5X8
CALL CLOCK

CALL DELAY1 ; CHO THUC HIEN XONG

MOVLW 0X0E
MOVWF PORTD
CALL CLOCK
CALL DELAY1 ; CHON HIEN THI HIEN THI CON TRO

; CHON CHE DO HIEN THI CHU THEO HUONG
MOVLW 0X04
MOVWF PORTD ; HIEN THI GIAM KHONG DAY CHU
CALL CLOCK
CALL DELAY1

; BAT DAU
MOVLW 0X01 ;xoa man hinh
MOVWF PORTD
CALL CLOCK
CALL DELAY1

LPP
BCF PORTB,0;hieu la lenh
MOVLW 0xC9;hang 2 cot 9
MOVWF PORTD
CALL CLOCK
BSF PORTB,0;hieu la data
MOVLW 0X55
MOVWF PORTD
CALL CLOCK
CALL DELAY1
GOTO LPP
end
Hình Kèm Theo
File Type: jpg lcd.jpg (175.3 KB, 5 lần tải)
__________________
viết chương trình cho vdk chạy ổn định là cả một vấn đề.
tdm vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn