毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 论文 >> 正文

基于液晶显示的单片机温度控制设计 第7页

更新时间:2008-6-18:  来源:毕业论文

基于液晶显示的单片机温度控制设计 第7页

     RET
;---------------------------------------------------------
SET_LCD:
                                           ; LCD 
做初始化设置及测试
          CLR  LCD_EN
          CALL  INIT_LCD                       ;初始化 
LCD
          CALL  STORE_DATA                   ;
将自定义字符存入LCDCGRAM
          RET
INIT_LCD:
                                         ;8I/O控制 LCD 
接口初始化
          MOV  A,#38H                            ;双列显示,字形5*7点阵
          CALL  WCOM
         CALL  DELAY1

          MOV  A,#38H
          CALL  
WCOM
          CALL  DELAY1

        MOV  A,#38H
          CALL  
WCOM
       CALL  DELAY1

          MOV  A,#0CH                                ;开显示,显示光标,光标不闪烁
          CALL  WCOM
         
CALL  DELAY1
          MOV  A,#01H                                 ;清除 LCD 
显示屏
          CALL  WCOM
         CALL  DELAY1

          RET
;==================================================
CLR_LINE1:
                                            ;
清除LCD的第一行字符
          MOV  A,#80H                                 ;设置 LCD 的第一行地址
          CALL  WCOM        
          MOV  R0,#24                                 ;设置计数值
    C1:   MOV  A,#' '                                 ;载入空格符至LCD
          CALL  WDATA                               ;输出字符至LCD
          DJNZ  R0,C1                                 ;计数结束
          RET
;==================================================
LCD_PRINT:
                                    ;
LCD的第一行或第二行显示字符
          CJNE  A,#1,LINE2                        ;判断是否为第一行
  LINE1:  MOV  A,#80H                           ;设置 LCD 的第一行地址
          CALL  WCOM                              ;写入命令
          CALL  CLR_LINE                         ;清除该行字符数据
          MOV  A,#80H                              ;设置 LCD 的第一行地址
          CALL  WCOM                              ;写入命令
          JMP  FILL
 LINE2:  MOV  A,#0C0H                          ;设置 LCD 
的第二行地址
          CALL  WCOM                              ;写入命令
          CALL  CLR_LINE                         ;清除该行字符数据
          MOV  A,#0C0H                            ;设置 LCD 的第二行地址
          CALL  WCOM
  FILL:   CLR  A                                    ;
填入字符
          MOVC  A,@A+DPTR                      ;由消息区取出字符
          CJNE  A,#0,LC1                           ;判断是否为结束码
          RET
  LC1:    CALL  WDATA                           ;
写入数据
          INC  DPTR                                 ;指针加1
          JMP  FILL                                  ;继续填入字符
          RET
;=========================================
CLR_LINE:
                                          ;清除该行 LCD 
的字符
          MOV  R0,#24
   CL1:   MOV  A,#' '

          CALL  WDATA
          DJNZ  
R0,CL1
          
RET
   DE:    MOV  
R7,#250
          DJNZ  
R7,$
          
RET
;============================================
WCOM:
                                               ;
8位控制方式将命令写至LCD
          MOV  P0,A                                ;写入命令
          CLR LCD_RS                             ;RS=L,RW=L,D0-D7=指令码,E=高脉冲
          CLR LCD_RW
          SETB 
LCD_EN
          ACALL DELAY1        

          CLR LCD_EN
          
RET
;=============================================
WDATA:
                                             ;
8位控制方式将数据写至LCD
          MOV  P0,A                                ;写入数据
          SETB  LCD_RS        
          CLR  LCD_RW
          SETB  LCD_EN        

          CALL  DE
          CLR  
LCD_EN
          CALL  
DE
          
RET
;=============================================
;PRINT
 A CHAR ON LINE 
1
;A=ASC
 DATA, B=LINE X 
POS
;==============================================
LCDP1:
                                              ;
LCD的第一行显示字符
         80H                              ;设置LCD的第一行地址
         CALL  WCOM                              ;写入命令
         POP  ACC                                   ;由堆栈取出A
         CALL  WDATA                             ;写入数据
       100
 BL2:    CALL  
DEX1
         CPL  
BEEP
         DJNZ  
R6,BL2
         MOV  
R5,#10
         CALL  
DELAY
         
RET
 DEX1:   MOV  
R7,#180
 DE2:    
NOP
      
50
 DL1:    MOV  
R7,#100
         DJNZ  
R7,$
         DJNZ  
R6,DL1
         DJNZ  
R5,DELAY
         
RET
DELAY1:
                                             ;
延时5MS
   R7,$
         DJNZ  
R6,DL2
         
RET
;================================================
         END

上一页  [1] [2] [3] [4] [5] [6] [7] [8] 下一页

基于液晶显示的单片机温度控制设计 第7页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。