📄 toutestfini.asm
字号:
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
bsf RS_LCD
movlw b'01000010' ;b
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'9'
CALL WAIT_5us
BCF RS_LCD ;CHOISIR ADDRESS DE DDRAM
MOVLW 0X81
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
BSF RS_LCD
MOVLW B'01001111' ;o
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'9'
CALL WAIT_5us
BCF RS_LCD
MOVLW 0X82 ;CHOISIR L'ADDRESS
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
bsf RS_LCD
MOVLW B'01001110' ;n
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'9'
CALL WAIT_5us
BCF RS_LCD ;CHOISIR ADDRESS DE DDRAM
MOVLW 0X83
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
BSF RS_LCD
movlw b'01001010';j
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
BCF RS_LCD ;CHOISIR ADDRESS DE DDRAM
MOVLW 0X84
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
BSF RS_LCD
MOVLW B'01001111'
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
BCF RS_LCD ;CHOISIR ADDRESS DE DDRAM
MOVLW 0X85
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
BSF RS_LCD
MOVLW B'01010101'
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
BCF RS_LCD ;CHOISIR ADDRESS DE DDRAM
MOVLW 0X86
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
BSF RS_LCD
MOVLW B'01010010'
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
return
;=============================================
display_temp
;CHOISIR ADDRESS DE DDRAM
BCF RS_LCD
MOVLW 0X80
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
bsf RS_LCD
MOVF REG_1,0 ;ECRIR 'SIGN'
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'9'
CALL WAIT_5us
BCF RS_LCD ;CHOISIR ADDRESS DE DDRAM
MOVLW 0X81
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
BSF RS_LCD
MOVLW B'00110000'
ADDWF REG_2,0 ;ECRIR 'PREMIER CHIFRE'
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'9'
CALL WAIT_5us
BCF RS_LCD
MOVLW 0X82 ;CHOISIR L'ADDRESS
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
bsf RS_LCD
MOVLW B'00110000'
ADDWF REG_3,0 ;ECRIR 'DEUXIEME CHIFRE'
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'9'
CALL WAIT_5us
BCF RS_LCD ;CHOISIR ADDRESS DE DDRAM
MOVLW 0X83
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
BSF RS_LCD
MOVF REG_4,0 ;ECRIR '.'
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
BCF RS_LCD ;CHOISIR ADDRESS DE DDRAM
MOVLW 0X84
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
BSF RS_LCD
MOVLW B'00000000'
ADDWF REG_5,0 ;ECRIR '5'
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
BCF RS_LCD ;CHOISIR ADDRESS DE DDRAM
MOVLW 0X85
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
BSF RS_LCD
MOVLW B'11011111'
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
BCF RS_LCD ;CHOISIR ADDRESS DE DDRAM
MOVLW 0X86
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
BSF RS_LCD
MOVLW B'01000011'
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
return
;=============================================
go_sleep
BCF RS_LCD
bsf E_LCD
MOVLW B'00000001' ;DISPLAY clear
MOVWF PORTB
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'2'
CALL WAIT_1ms
bcf VDD_LCD
;clrf PORTA
;clrf PORTB
sleep
;============================================
AFFICHE_ERROR
BCF RS_LCD
bsf E_LCD
MOVLW B'00000001' ;DISPLAY clear
MOVWF PORTB
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'2'
CALL WAIT_1ms
btfsc DS1820_SHORTED
CALL AFFICHE_E0
btfsc DS1820_SHORTED
call wait_1s
BTFSC DS1820_NO_DEVICE
CALL AFFICHE_E1
BTFSC DS1820_NO_DEVICE
call wait_1s
return
;===========================================
AFFICHE_E0
BCF RS_LCD ;CHOISIR ADDRESS DE DDRAM
MOVLW 0X80
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
BSF RS_LCD
MOVLW B'01000101'
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
BCF RS_LCD ;CHOISIR ADDRESS DE DDRAM
MOVLW 0X81
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
BSF RS_LCD
MOVLW B'00110000'
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
return
;======================================
AFFICHE_E1
BCF RS_LCD ;CHOISIR ADDRESS DE DDRAM
MOVLW 0X83
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
BSF RS_LCD
MOVLW B'01000101'
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
BCF RS_LCD ;CHOISIR ADDRESS DE DDRAM
MOVLW 0X84
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
MOVLW D'8'
CALL WAIT_5us
BSF RS_LCD
MOVLW B'00110001'
MOVWF PORTB
bsf E_LCD
MOVLW D'3'
CALL WAIT_5us
bcf E_LCD
return
;======================================
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -