您当前的位置:五五电子网电子知识单片机-工控设备51单片机DS18B20温度控制lcd1602显示程序 正文
DS18B20温度控制lcd1602显示程序

DS18B20温度控制lcd1602显示程序

点击数:7517 次   录入时间:03-04 11:48:48   整理:http://www.55dianzi.com   51单片机
          TEMPH     DATA  26H     ;
          TEMP_TH   DATA  27H     ;高温报警值存放单元
          TEMP_TL   DATA  28H     ;低温报警值存放单元
          TEMPHC    DATA  29H     ;
          TEMPLC    DATA  2AH

          K1     EQU  P1.4
          K2     EQU  P1.5
          K3     EQU  P1.6
          K4     EQU  P1.7

          BEEP   EQU  P3.7
          RELAY  EQU  P1.0
          LCD_X     EQU  2FH      ;LCD 地址变量
          LCD_RS    EQU  P2.0
          LCD_RW    EQU  P2.1
          LCD_EN    EQU  P2.2
          flag1     equ  20H.0    ;DS18B20是否存在标记
          KEY_UD    EQU  20H.1    ;设定 KEY 的UP与DOWN 标记
          date_line equ p3.3
;=====================================================
           ORG  0000H
           JMP  MAIN

MAIN:     MOV  SP,#60H
          MOV  A,#00H
          MOV  R0,#20H       ;将 20H-2FH 单元清零
          MOV  R1,#10H
CLEAR:    MOV  @R0,A
          INC  R0
          DJNZ  R1,CLEAR

          CALL  SET_LCD
          CALL  RE_18B20

start:    CALL  RESET          ;18B20复位子程序
          JNB   FLAG1,START1   ;DS1820不存在
          CALL  MENU_OK
          CALL  READ_E2
          CALL  TEMP_BJ        ;显示温度标记
          JMP   START2
START1:   CALL  MENU_ERROR
          CALL  TEMP_BJ        ;显示温度标记
          JMP  $

START2:
          CALL  RESET
          JNB  FLAG1,START1    ;DS1820不存在
          MOV   A,#0CCH        ; 跳过ROM匹配
          CALL  WRITE
          MOV   A,#44H         ; 发出温度转换命令
          CALL  WRITE
          CALL  RESET
          MOV   A,#0CCH        ; 跳过ROM匹配
          CALL  WRITE
          MOV   A,#0BEH        ; 发出读温度命令
          CALL  WRITE
          CALL  READ
          call CONVTEMP
          Call DISPBCD
          CALL CONV
          CALL TEMP_COMP
          CALL  PROC_KEY       ; 键扫描

      SJMP    START2
;-----------------------------------------------------
PROC_KEY:
     JB  K1,PROC_K1          ; 按键K1处理
         CALL  BEEP_BL
         JNB  K1,$
         MOV  DPTR,#M_ALAX1
         MOV  A,#1
         CALL  LCD_PRINT
         CALL  LOOK_ALARM
         JB  K3,$
         CALL  BEEP_BL
         JMP  PROC_K2
PROC_K1:              ; 按键K2处理
         JB  K2,PROC_END
         CALL  BEEP_BL
         JNB  K2,$
         MOV   DPTR,#RESET_A1
         MOV   A,#1
         CALL  LCD_PRINT

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


本文关键字:程序  51单片机单片机-工控设备 - 51单片机