日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀] ;LCDSMC1602A顯示模塊; ***************************************************************************;連線圖: *LCM---8031* *LCM---8031* *RS-------- P2.6*; *DB0----P0.0* *DB4---P0.4* *RW------

;LCDSMC1602A顯示模塊
; ***************************************************************************
;連線圖: *LCM---8031* *LCM---8031* *RS-------- P2.6*
; *DB0----P0.0* *DB4---P0.4* *RW--------P2.5*

; *DB1----P0.1* *DB5---P0.5* *GATE-----P2.7*
; *DB2----P0.2* *DB6---P0.6* *E--------NAND*
; *DB3----P0.3* *DB7---P0.7* *VLCD接200R TO GND*
; **************************************************************************
;說明:
;入口條件:顯示內(nèi)容的首地址放在R1所指的單元中,如R1=40H,則40H-5FH為顯示緩存
;影響資源:PSW、A、B、R1、R6、R7 堆棧需求:14字節(jié)
RSADDR EQU 4000H
RWADDR EQU 2000H
CSADDR EQU 8000H
RSPINEQU P2.6 ; SMC1602A的RS
RWPIN EQU P2.5 ; SMC1602A的RW
EPIN EQU P2.7 ; SMC1602A的E
XPOS EQU 30H ;列方向地址指針(用于LCDPOS子程序)
YPOS EQU 31H ;行方向地址指針(用于LCDPOS子程序)
LCD_FILL: ;LCD顯示模塊的顯示
MOV B,A
MOV YPOS,#0
LFL_PB: MOV XPOS,#0 ;整屏顯示A中所代表字符
MOV R6,#16D
LFL_PA: MOV A,@R1
INC R1 ;顯示的間接地址
CALL LCDWRITE
INC XPOS
MOV A,XPOS
CJNE A,#16D,LFL_PA
INC YPOS
MOV A,YPOS
CJNE A,#02D,LFL_PB
RET
LCDPOS: ;設(shè)置第(XPOS,YPOS)個(gè)字符DDRAM地址
PUSH ACC
ANL XPOS,#0FH ;X位置范圍(0到15)
ANL YPOS,#01H ;Y位置范圍(0到1)
MOV A,YPOS ;(XPOS,YPOS)對應(yīng)DDRAM地址
CJNE A,#00,LPS_LAY ;(第一行)X: 第0----15個(gè)字符
MOV A,XPOS ;DDRAM: 0----0FH
JMP LPS_LAX
LPS_LAY: MOV A,XPOS ;(第二行)X:第0----15個(gè)字符
ADD A,#40H ; DDRAM: 40----4FH
LPS_LAX: ORL A,#80H ;設(shè)置DDRAM地址
CALL LCDWC
POP ACC
RET
LCDWRITE: ;定位寫字符子程序
CALL LCDPOS ;定位顯示地址
CALL LCDWD ;寫字符
RET
LCD_RESET: ;初始化程序--LCD顯示模塊的初始化
CALL DELAY5MS ;延時(shí)15MS
CALL DELAY5MS
CALL DELAY5MS
MOV A,#38H ;顯示模式設(shè)置(不檢測忙信號)
CALL LCDWCN ;共三次
CALL DELAY5MS
MOV A,#38H
CALL LCDWCN
CALL DELAY5MS
MOV A,#38H
CALL LCDWCN
MOV A,#38H ;顯示模式設(shè)置(以后均檢測忙信號)
CALL LCDWC
MOV A,#08H ;顯示關(guān)閉
CALL LCDWC
MOV A,#01H ;顯示清屏
CALL LCDWC
MOV A,#06H ;顯示光標(biāo)移動(dòng)設(shè)置
CALL LCDWC
MOV A,#0CH ;顯示開及光標(biāo)設(shè)置
CALL LCDWC
RET
LCDWC: ;送控制字子程序(檢測忙信號)
CALL WAITIDLE
LCDWCN: ;送控制字子程序(不檢測忙信號)
MOV DPTR,#CSADDR ;CS=1 RS=0 RW=0
MOVX @DPTR,A
RET
LCDWD: ;寫字符子程序
CALL WAITIDLE
MOV DPTR,#CSADDR+RSADDR ;CS=1 RS=1 RW=0
MOVX @DPTR,A
RET
WAITIDLE:
PUSH ACC ;正常讀寫操作之前必須檢測LCD控制器狀態(tài)
MOV DPTR,#CSADDR+RWADDR ;CS=1 RS=0 RW=1
WTD_PA: MOVX A,@DPTR ;DB7: 0 LCD控制器空閑

JB ACC.7,WTD_PA ; DB7:1 LCD控制器忙
POP ACC
RET
DELAY5MS:
MOV R1,#25 ;延時(shí)子程序(5MS)
DL5_PA: MOV R2,#100
DJNZ R2,$
DJNZ R1,DL5_PA
RET


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉