您的位置 首页 新能源

PIC单片机完成LCD1602显现字母A

PIC单片机实现LCD1602显示字母A-STATUS EQU 3H ;定义状态寄存器地址

PORTA EQU 5H ;定义RA口数据寄存器地址

PORTC EQU 7H ;定义RC口数据寄存器地

PORTD EQU 8H ;定义RD口数据寄存器地址

TRISA EQU 85H ;定义RA口方向控制寄存器地址

TRISC EQU 87H ;定义RC口方向控制寄存器地址

TRISD EQU 88H ;定义RD口方向控制寄存器地址

ADCON1 EQU 9FH ;定义ADC模块控制寄存器1的地址

PIC单片机LCD1602显现单个A字程序

STATUS EQU 3H ;界说状况寄存器地址

PORTA EQU 5H ;界说RA口数据寄存器地址

PORTC EQU 7H ;界说RC口数据寄存器地

PORTD EQU 8H ;界说RD口数据寄存器地址

TRISA EQU 85H ;界说RA口方向操控寄存器地址

TRISC EQU 87H ;界说RC口方向操控寄存器地址

TRISD EQU 88H ;界说RD口方向操控寄存器地址

ADCON1 EQU 9FH ;界说ADC模块操控寄存器1的地址

;********************

Z EQU 2 ;界说0状况位的位地址

RP0 EQU 5 ;界说页选位RP0的位地址

;*********************

RS EQU 2 ;LCD寄存器挑选信号脚界说在RD.2脚

RW EQU 1 ;LCD读/写信号脚界说在RD.1脚

E EQU 0 ;LCD片选信号脚界说在RD.0脚

;**********************

ORG 000H

NOP ;放置一条ICD必需的空操作指令

GOTO MAIN

ORG 0008H

MAIN

BSF STATUS,RP0

MOV LW 07H

MOV WF ADCON1 ;设置RA口悉数为一般数字IO口

MOV LW 00H ;界说RA口,RC,RD口悉数为输出

MOV WF TRISC

MOV WF TRISD

BCF STATUS,RP0

CALL DELAY ;调用廷时,刚上电LCD复位纷歧定有PIC

MOV LW 01H

MOV WF PORTC ;清屏

CALL ENABLE

MOV LW 38H

MOV WF PORTC ;8位2行5×7点阵

CALL ENABLE

MOV LW 0FH

MOV WF PORTC ;显现器开、光标开、闪耀开

CALL ENABLE

MOV LW 06H

MOV WF PORTC ;文字不动,光标主动右移

CALL ENABLE

MOV LW 0C0H

MOV WF PORTC ;写入显现开始地址(榜首行榜首个方位)

CALL ENABLE

MOV LW 41H

MOV WF PORTC ;字母“A”的代码

BSF PORTD,RS

BCF PORTD,RW

BCF PORTD,E

CALL DELAY

BSF PORTD,E

GOTO $

ENABLE

BCF PORTD,RS ;写入操控指令的子程序

BCF PORTD,RW

BCF PORTD,E

CALL DELAY

BSF PORTD,E

RETLW 0

;********************************************

DELAY

;子程序名,也是子程序进口地址

MOV lw 0ffh ;将外层循环参数值FFH通过W

MOV wf 20h ;送入用作外循环变量的20H单元

lp0 MOV lw 0ffh ;将内层循环参数值FFH通过W

MOV wf 21h ;送入用作内循环变量的21H单元

lp1 nop

decfsz 21h,1 ;变量21H内容递减,若为0跳动

goto lp1 ;跳转到LP1处

decfsz 20h,1 ;变量20H内容递减,若为0跳动

goto lp0 ;跳动到LP0处

return ;回来主程序

end ;源程序完毕

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/qiche/xinnengyuan/346318.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部