p; ;第一行的位置
CALL ENABLE
CALL WRITE2 ;调用送第二行数子
程序“TEL0755 27528531"
MOVLW 0C2H
MOVWF PORTC ;第二行的位置
CALL ENABLE
GOTO $
;***********************
WRITE1
CLRF COUNT ;送第一行数字
程序
WRITE_A
MOVFW COUNT
CALL TABLE
MOVWF TMP1
CALL WRITE3
INCF COUNT,1
MOVFW TMP1
XORLW 00H
BTFSS STATUS,Z
GOTO WRITE_A
RETLW 0
;*************************
WRITE2 ;送第二行数子
程序
CLRF COUNT
WRITE2_A
MOVFW COUNT
CALL TABLE1
MOVWF TMP1
CALL WRITE3
INCF COUNT,1
MOVFW TMP1
XORLW 00H
BTFSS STATUS,Z
GOTO WRITE2_A
RETLW 0
;**************************
WRITE3 ;送数据到LCD子
程序
MOVWF PORTC
BSF PORTA,RS
BCF PORTA,RW
BCF PORTA,E
CALL DELAY
BSF PORTA,E
RETLW 0
;*******************************************
ENABLE
BCF PORTA,RS ;写入控制命令的子
程序
BCF PORTA,RW
BCF PORTA,E
CALL DELAY
BSF PORTA,E
RETLW 0
;********************************************
DELAY
;子程序名,也是子程序入口地址
movlw 0ffh ;将外层循环参数值FFH经过W
movwf 20h ;送入用作外循环变量的20H单元
lp0 movlw 0ffh ;将内层循环参数值FFH经过W
movwf 21h ;送入用作内循环变量的21H单元
lp1 decfsz 21h,1 ;变量21H内容递减,若为0跳跃
goto lp1 ;跳转到LP1处
decfsz 20h,1 ;变量20H内容递减,若为0跳跃
goto lp0 ;跳跃到LP0处
return ;返回主程序
end ;源程序结束
;*****************************************************
; 进入该实战演练的工序流程如下:
; 1.创建源文件和编辑源文件;在此介绍一种不同于前面讲的创建源文件的方法,用Windows附件中的”记事本”
; 这个为大家所熟知和好用的文件编辑器,并且可以方便的加入中文注释.不过有两点需要注意,一是注释前面的
; 分号”;”必须用西文半角输入;二是必须用”.asm”扩展名存储到事先建立的一个专用子目录下.
; 2.打开MPLAB集成开发环境