;************************************************************
; 文件名: 串行显示.H
; 系 统: ICETEKF2407-A
; 描 述: 用DSP块控制GTG-128324液晶显示模块;显示块数据口走IOPB口
; 0-(CS),1-(SID),2-(SCLK),3-(PSB),4-(REST)口
; 作 者: 华睿设计室
; 日 期: 2006-5-8
; 问 题: 显示正常
;*************************************************************
.bss SHU,1 ;LCD显示数据
;*************************************
;GTG-128324显示块初始化
;*************************************
LCDK: LDP #0
SPLK #30FFh,SHU ;功能控制
CALL XIEZHI
LDP #0
SPLK #30FFh,SHU ;功能控制
CALL XIEZHI ;功能控制
LDP #0
SPLK #0FFFh,SHU ;开光标
CALL XIEZHI
LDP #0
SPLK #01FFh,SHU ;清屏
CALL XIEZHI
LDP #0
SPLK #06FFh,SHU ;右移
CALL XIEZHI
RET
;********************************************
;写GTG-128324控制指令
;********************************************
XIEZHI:
LDP #225 ;加载数据存储器页指针
LACL PBDATDIR
OR #0FF01H ;片选
SACL PBDATDIR
LACL PBDATDIR
OR #0FF03H ;设置SID
SACL PBDATDIR
LACL PBDATDIR
AND #0FF03H ;清周期信号
SACL PBDATDIR
CALL BIAN ;1
CALL BIAN ;2
CALL BIAN ;3
CALL BIAN ;4
CALL BIAN ;5
LACL PBDATDIR
AND #0FF01H ;RW="0"
SACL PBDATDIR
CALL BIAN
LACL PBDATDIR
AND #0FF01H ;RS="0"
SACL PBDATDIR
CALL BIAN
LACL PBDATDIR
AND #0FF01H ;SID="0"
SACL PBDATDIR
CALL BIAN
CALL ZUOYI ;SID="7"
CALL ZUOYI ;SID="6"
CALL ZUOYI ;SID="5"
CALL ZUOYI ;SID="4"
LACL PBDATDIR
AND #0FF01H ;SID="0"
SACL PBDATDIR
CALL BIAN ;1
CALL BIAN ;2
CALL BIAN ;3
CALL BIAN ;4
CALL ZUOYI ;SID="3"
CALL ZUOYI ;SID="2"
CALL ZUOYI ;SID="1"
CALL ZUOYI ;SID="0"
LACL PBDATDIR ;SID="0"
AND #0FF01H
SACL PBDATDIR
CALL BIAN ;1
CALL BIAN ;2
CALL BIAN ;3
CALL BIAN ;4
LACL PBDATDIR
AND #0FFFEH
SACL PBDATDIR
CALL DELAY1
CALL DELAY1
RET
;*********************************************
;写GTG-128324显示数据,相关参考见GTG-128324
;*********************************************
XIESHU:
LDP #225 ;加载数据存储器页指针
LACL PBDATDIR
OR #0FF01H ;片选
SACL PBDATDIR
LACL PBDATDIR ;设置SID
OR #0FF03H
SACL PBDATDIR
LACL PBDATDIR ;清周期信号
AND #0FF03H
SACL PBDATDIR
CALL BIAN ;1
CALL BIAN ;2
CALL BIAN ;3
CALL BIAN ;4
CALL BIAN ;5
LACL PBDATDIR
AND #0FF01H ;SID="0"
SACL PBDATDIR
CALL BIAN
LACL PBDATDIR
OR #0FF03H ;SID="1"
SACL PBDATDIR
CALL BIAN
LACL PBDATDIR ;SID="0"
AND #0FF01H
SACL PBDATDIR
CALL BIAN
CALL ZUOYI ;SID="7"
CALL ZUOYI ;SID="6"
CALL ZUOYI ;SID="5"
CALL ZUOYI ;SID="4"
LACL PBDATDIR ;SID="0"
AND #0FF01H
SACL PBDATDIR
CALL BIAN ;1
CALL BIAN ;2
CALL BIAN ;3
CALL BIAN ;4
CALL ZUOYI ;SID="3"
CALL ZUOYI ;SID="2"
CALL ZUOYI ;SID="1"
CALL ZUOYI ;SID="0"
LACL PBDATDIR ;SID="0"
AND #0FF0DH
SACL PBDATDIR
CALL BIAN ;1
CALL BIAN ;2
CALL BIAN ;3
CALL BIAN ;4
LACL PBDATDIR
AND #0FFFEH
SACL PBDATDIR
CALL DELAY1
CALL DELAY1
RET
;***********************************
;时钟周期高低电平变化
;***********************************
BIAN: LDP #225
LACL PBDATDIR ;置位信号
OR #0FF04H
NOP
NOP
NOP
NOP
SACL PBDATDIR
NOP
NOP
NOP
NOP
LACL PBDATDIR ;清0 信号
AND #0FF03H
NOP
NOP
NOP
NOP
SACL PBDATDIR
NOP
NOP
NOP
NOP
RET
;*******************************
;写数据左移
;*******************************
ZUOYI:
LDP #0
LACC SHU,16 ;数据内容左移16位
SACL SHU
SFL ;左移1位,高位进进位位C
SACH SHU
BCND FAGAO,C ;判断进位是1则写高位
LDP #225
LACL PBDATDIR ;不是1则写0
AND #0FF0DH ;将SID位为0
SACL PBDATDIR
CALL DELAY1
CALL BIAN
RET
FAGAO:
LDP #225
LACL PBDATDIR ;是1则写1
OR #0FF02H ;将SID位为1
SACL PBDATDIR
CALL DELAY1
CALL BIAN
RET
;***********************************************
;延时程序(0.5ms)
;***********************************************
DELAY1:
MAR *,AR4
LAR AR4,#800h
LAR AR0,#00h
DELA3: SBRK #1
NOP
CMPR 00
BCND DELA3,NTC
RET ;返回
文章评论(0条评论)
登录后参与讨论