亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? lcdclock.asm

?? 說(shuō)明:本文件夾一共提供各類(lèi)編程實(shí)例200多個(gè)
?? ASM
字號(hào):
;********************************************************************************
;1602液晶顯示時(shí)鐘程序,按鍵P1.4-P1.7 喇叭 P3.7 液晶數(shù)據(jù)P0,控制P2.0-2.2         *
;********************************************************************************
;*  日期:  2007-3-25                                                            *
;*  版本:  3.0                                                                  *
;*  作者:  深圳學(xué)林電子有限公司     專(zhuān)業(yè)8051單片機(jī)教學(xué)站                        *
;*  郵箱: sxj1974@163.com                                                       *
;*  網(wǎng)站: http://www.51c51.com     http://www.8951.com    更多例程請(qǐng)登陸網(wǎng)站   *
;********************************************************************************
;*  硬件:此程序在本公司xlisp系列單片機(jī)實(shí)驗(yàn)儀運(yùn)行通過(guò)                           *
;********************************************************************************
;* 【版權(quán)】 Copyright(C)深圳學(xué)林電子有限公司 www.51c51.com  All Rights Reserved *
;* 【聲明】 此程序僅用于學(xué)習(xí)與參考,引用請(qǐng)注明版權(quán)和作者信息!                  *
;********************************************************************************
          HOUR    EQU  30H      ;時(shí)計(jì)數(shù)
          MIN     EQU  31H      ;分計(jì)數(shù)
          SEC     EQU  32H      ;秒計(jì)數(shù)
          MSEC    EQU  33H      ;50MS計(jì)數(shù)
          LCD_X   EQU  35H      ;LCD 地址變量
          K1      BIT  P1.4     ;按鍵定義
          K2      BIT  P1.5
          K3      BIT  P1.6
          K4      BIT  P1.7
	  SET_DR  BIT  20H.0
          LCD_RS  BIT  P2.0     ;LCD 控制管腳定義
          LCD_RW  BIT  P2.1
          LCD_EN  BIT  P2.2
          SPK     BIT  P3.7     ;蜂鳴器
;**********************************************************
          ORG   0000H
          JMP   MAIN
          ORG   000BH
          JMP   T0_INT
	  ORG   0030H
;**********************************************************
; 主程序
;**********************************************************
MAIN:
	  SETB  SET_DR
          CALL  SET_LCD       ;初始化LCD
	  MOV  R5,#250        ;延時(shí)4S
          CALL  DELAY
	  MOV  R5,#150
          CALL  DELAY
          CALL  BEEP          ;蜂鳴器響一聲
          CALL  INIT          ;初始化變量
	  CALL  MENU1
          CALL  MENU2
LOOP:
	  CALL  CONV
          JB     K1,LOOP      ;K1設(shè)定時(shí)間健
          CALL   BEEP
          JNB    K1,$
          CALL  MENU3     ;顯示菜單1
          CALL  SET_TIME     ;設(shè)置目前時(shí)間
          CALL  MENU1     ;顯示菜單3
          JMP  LOOP
          RET
;**********************************************************
;  LCD 初始化顯示
;**********************************************************
SET_LCD:
          CALL  INIT_LCD     ;初始化 LCD
          MOV  R5,#10
          CALL  DELAY
          MOV  DPTR,#LMESS1  ;指針指到顯示消息1
	  CALL  W_STRING1
          MOV  DPTR,#LMESS2  ;指針指到顯示消息2
          CALL  W_STRING2
          RET
LMESS1:   DB  "   WELCOME TO   ",0  ;LCD 第一行顯示消息
LMESS2:   DB  " WWW.51C51.COM  ",0  ;LCD 第二行顯示消息
;**********************************************************
; 初始化變量
;**********************************************************
INIT:
         MOV  MSEC,#0
         MOV  SEC,#0
         MOV  MIN,#59
         MOV  HOUR,#23
         MOV  TMOD,#01H    ;設(shè)置定時(shí)器0 工作模式為模式1
         MOV  IE,  #82H    ;啟用定時(shí)器0 中斷產(chǎn)生
         MOV  TL0,#00H
         MOV  TH0,#4CH
         SETB  TR0         ;啟動(dòng)中斷
         RET
;**********************************************************
; 定時(shí)器0 計(jì)時(shí)中斷子程序
; 每隔50MS中斷一次
;**********************************************************
T0_INT:
         PUSH  ACC
         MOV  TL0,#00H
         MOV  TH0,#4CH       ;50ms定時(shí)常數(shù)
         INC  MSEC
         MOV  A,MSEC         ;50MS 計(jì)數(shù)值加1
         CJNE  A,#20,T_END
         MOV  MSEC,#0
         INC  SEC            ;秒加1
         MOV  A,SEC
         CJNE  A,#60,T_END
         INC  MIN            ;分加1
         MOV  SEC,#0
         MOV  A,MIN
         CJNE  A,#60,T_END
         INC  HOUR           ;時(shí)加1
         MOV  MIN,#0
         MOV  A,HOUR
         CJNE  A,#24,T_END
         MOV  SEC,#0         ;秒、分、時(shí)單元清0
         MOV  MIN,#0
         MOV  HOUR,#0
T_END:
         POP  ACC
         RETI
;**********************************************************
; 時(shí)間設(shè)定子程序
; K1: UP-DOWN K2: HH  K3: MM  K4: OK
;**********************************************************
SET_TIME:
         CLR  TR0           ;終止中斷
	 SETB  SET_DR
         MOV   SEC,#0
   S0:
         JB  K2,S1          ;小時(shí)調(diào)整
         CALL  BEEP
         JNB  SET_DR,S01
         INC  HOUR
         MOV  A,HOUR
         CJNE  A,#24,S02
         MOV  HOUR,#0
	 JMP  S02
   S01:
         DEC  HOUR
         MOV  A,HOUR
         CJNE  A,#0FFH,S02
         MOV  HOUR,#23
   S02:
         CALL  CONV         ;轉(zhuǎn)換顯示數(shù)據(jù)
         JMP  S0
   S1:
         JB  K3,S2          ;分鐘調(diào)整
         CALL  BEEP
	 JNB  SET_DR,S11
         INC  MIN
         MOV  A,MIN
         CJNE  A,#60,S12
         MOV  MIN,#0
         JMP  S12
   S11:
         DEC  MIN
	 MOV  A,MIN
	 CJNE  A,#0FFH,S12
         MOV  MIN,#59
  S12:
         CALL  CONV          ;轉(zhuǎn)換顯示數(shù)據(jù)
         JMP  S0
  S2:
         JB  K1,S3
         CALL  BEEP
	 JNB  K1,$          ;等待健釋放
	 CPL  SET_DR
  S3:
         JB  K4,S0
         CALL  BEEP
         JNB  K4,$
	 SETB  SET_DR
         SETB  TR0          ;啟動(dòng)中斷
         RET
;==================================================
; 在 LCD 第二行的指定位置顯示數(shù)字
;==================================================
SHOW_DIG2:                ;在 LCD 的第二行顯示數(shù)字
          MOV  B,#10
          DIV  AB
          ADD  A,#30H
          PUSH  B
          MOV  B,LCD_X
          CALL  LCDP2
          POP  B
          MOV  A,B
          ADD  A,#30H
          INC  LCD_X
          MOV  B,LCD_X
          CALL  LCDP2
          RET
;**********************************************************
;轉(zhuǎn)換為 ASCII 碼并且顯示
;**********************************************************
CONV:
          MOV  A,HOUR        ;加載小時(shí)數(shù)據(jù)
          MOV  LCD_X,#7          ;設(shè)置位置
          CALL  SHOW_DIG2    ;顯示數(shù)據(jù)
          INC  LCD_X             ;
          MOV  A,#':'        ;
          MOV  B,LCD_X           ;
          CALL  LCDP2        ;
          MOV  A,MIN         ;加載分鐘數(shù)據(jù)
          INC  LCD_X             ;設(shè)置位置
          CALL  SHOW_DIG2    ;顯示數(shù)據(jù)
          INC  LCD_X             ;
          MOV  A,#':'        ;
          MOV  B,LCD_X           ;
          CALL  LCDP2        ;
          MOV  A,SEC         ;加載秒數(shù)數(shù)據(jù)
          INC  LCD_X             ;設(shè)置位置
          CALL  SHOW_DIG2    ;顯示數(shù)據(jù)
          RET
;**********************************************************
; LCD 初始化子程序
;**********************************************************
INIT_LCD:
          MOV  A,#38H       ;雙列顯示,字形5*7點(diǎn)陣
          CALL  WCOM
          CALL  DELAY1
          MOV  A,#38H       ;雙列顯示,字形5*7點(diǎn)陣
          CALL  WCOM
          CALL  DELAY1
          MOV  A,#38H       ;雙列顯示,字形5*7點(diǎn)陣
          CALL  WCOM
          CALL  DELAY1
          MOV  A,#0CH        ;開(kāi)顯示,不顯示光標(biāo)。
          CALL  WCOM
          CALL  DELAY1
          MOV  A,#06H
          CALL  WCOM
          CALL  DELAY1
          MOV  A,#01H        ;清除 LCD 顯示屏
          CALL  WCOM
          CALL  DELAY1
          RET
;**********************************************************
; 清除LCD的第一行字符
;**********************************************************
CLR_LINE1:
          MOV  A,#80H        ;設(shè)置 LCD 的第一行地址
          CALL  WCOM         ;
          MOV  R0,#24        ;設(shè)置計(jì)數(shù)值
    C1:
          MOV  A,#' '        ;載入空格符至LCD
          CALL  WDATA        ;輸出字符至LCD
          DJNZ  R0,C1        ;計(jì)數(shù)結(jié)束
          RET
;**********************************************************
; 在LCD的第一行或第二行顯示字符
;**********************************************************
LCD_PRINT:
          CJNE  A,#1,LINE2  ;判斷是否為第一行
  LINE1:  MOV  A,#80H       ;設(shè)置 LCD 的第一行地址
          CALL  WCOM        ;寫(xiě)入命令
          CALL  CLR_LINE    ;清除該行字符數(shù)據(jù)
          MOV  A,#80H       ;設(shè)置 LCD 的第一行地址
          CALL  WCOM        ;寫(xiě)入命令
          JMP  FILL
  LINE2:  MOV  A,#0C0H      ;設(shè)置 LCD 的第二行地址
          CALL  WCOM        ;寫(xiě)入命令
          CALL  CLR_LINE    ;清除該行字符數(shù)據(jù)
          MOV  A,#0C0H      ;設(shè)置 LCD 的第二行地址
          CALL  WCOM
  FILL:   CLR  A            ;填入字符
          MOVC  A,@A+DPTR   ;由字符區(qū)取出字符
          CJNE  A,#0,LC1    ;判斷是否為結(jié)束碼
          RET
  LC1:    CALL  WDATA       ;寫(xiě)入數(shù)據(jù)
          INC  DPTR         ;指針加1
          JMP  FILL         ;繼續(xù)填入字符
          RET
CLR_LINE:                   ;清除該行 LCD 的字符
          MOV  R0,#24
   CL1:   MOV  A,#' '
          CALL  WDATA
          DJNZ  R0,CL1
          RET
;**********************************************************
; 寫(xiě)字符串子程序
;**********************************************************
W_STRING1:
         MOV  A,#80H       ;設(shè)置 LCD 的第一行地址
         CALL  WCOM        ;寫(xiě)入命令
	 CALL  FILL_CHAR
	 RET
W_STRING2:
         MOV  A,#0C0H       ;設(shè)置 LCD 的第二行地址
         CALL  WCOM        ;寫(xiě)入命令
	 CALL  FILL_CHAR
	 RET
;**********************************************************
; 寫(xiě)入字符子程序
;**********************************************************
FILL_CHAR:
         CLR  A                  ;填入字符
         MOVC  A,@A+DPTR         ;由字符區(qū)取出字符
         CJNE  A,#0,F_CHAR       ;判斷是否為結(jié)束碼
         RET
F_CHAR:
         CALL  WDATA             ;寫(xiě)入數(shù)據(jù)
	 MOV  R5,#15             ;延時(shí),形成逐字顯示的效果
	 CALL DELAY
         INC  DPTR               ;指針加1
         JMP  FILL_CHAR          ;繼續(xù)填入字符
         RET
;**********************************************************
;LCD1602寫(xiě)命令子程序
;LCD_RS=L,LCD_RW=L,D0-D7=指令碼,E=高脈沖
;**********************************************************
WCOM:
          MOV   P0,A       ;寫(xiě)入指令
          CLR   LCD_RS
          CLR   LCD_RW
          SETB  LCD_EN
          CALL  DE
          CLR   LCD_EN
          CALL  DE
          RET
;**********************************************************
;LCD1602寫(xiě)數(shù)據(jù)子程序
;LCD_RS=H,LCD_RW=L,D0-D7=數(shù)據(jù)碼,E=高脈沖
;**********************************************************
WDATA:
          MOV  P0,A       ;寫(xiě)入數(shù)據(jù)
          SETB  LCD_RS
          CLR   LCD_RW
          SETB  LCD_EN
          CALL  DE
          CLR   LCD_EN
          CALL  DE
          RET
DE:
          MOV  R7,#250
          DJNZ  R7,$
          RET
;**********************************************************
;在LCD第一行顯示數(shù)據(jù)  A=ASC DATA, B=LINE POSITION
;**********************************************************
LCDP1:                    ;在LCD的第一行顯示字符
         PUSH  ACC        ;
         MOV  A,B         ;設(shè)置顯示地址
         ADD  A,#80H      ;設(shè)置LCD的第一行地址
         CALL  WCOM       ;寫(xiě)入命令
         POP  ACC         ;由堆棧取出A
         CALL  WDATA      ;寫(xiě)入數(shù)據(jù)
         RET
;**********************************************************
;在LCD第二行顯示數(shù)據(jù)  A=ASC DATA, B=LINE POSITION
;**********************************************************
LCDP2:
         PUSH  ACC        ;
         MOV  A,B         ;設(shè)置顯示地址
         ADD  A,#0C0H     ;設(shè)置LCD的第二行地址
         CALL  WCOM       ;寫(xiě)入命令
         POP  ACC         ;由堆棧取出A
         CALL  WDATA      ;寫(xiě)入數(shù)據(jù)
         RET
;**********************************************************
; 延時(shí)10MS子程序
;**********************************************************
DELAY:
         MOV  R6,#50
DEL1:
         MOV  R7,#100
         DJNZ  R7,$
         DJNZ  R6,DEL1
         DJNZ  R5,DELAY
         RET
;**********************************************************
; 延時(shí)5MS子程序
;**********************************************************
DELAY1:
         MOV  R6,#25
DEL2:
         MOV  R7,#100
         DJNZ  R7,$
         DJNZ  R6,DEL2
         RET
;**********************************************************
; 驅(qū)動(dòng)蜂鳴器子程序
;**********************************************************
BEEP:
         MOV  R6,#150
  B2:
         CALL  DE1
         CPL  SPK
         DJNZ  R6,B2
         MOV  R5,#25
         CALL  DELAY
         RET
DE1:
         MOV  R7,#200
DE2:
         NOP
         DJNZ  R7,DE2
         RET
;**********************************************************
; 顯示菜單子程序
;**********************************************************
BEIJNG:  DB  "XUE LIN DIAN DI ",0
TIME:    DB  " TIME:          ",0
STIME:   DB  " RESET REALTIME ",0
MENU1:
         MOV  DPTR,#BEIJNG
         MOV  A,#1
         CALL  LCD_PRINT
         RET
MENU2:
         MOV  DPTR,#TIME
         MOV  A,#2
         CALL  LCD_PRINT
         RET
MENU3:
         MOV  DPTR,#STIME
         MOV  A,#1
         CALL  LCD_PRINT
         RET
;**********************************************************
         END

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色婷婷国产精品久久包臀 | 日韩精品一区二区三区在线观看| 色综合久久久久综合体| 成年人网站91| 不卡av在线网| 97久久久精品综合88久久| 91免费看`日韩一区二区| 91一区二区三区在线观看| 色综合久久久久久久久久久| 一本久久a久久精品亚洲| 91黄视频在线观看| 欧美综合在线视频| 欧美疯狂性受xxxxx喷水图片| 91精品国产福利在线观看| 日韩欧美国产一区二区三区| 欧美大肚乱孕交hd孕妇| 久久久综合视频| 欧美国产日韩一二三区| 亚洲色图丝袜美腿| 亚洲电影在线播放| 久久99精品国产91久久来源| 狠狠色综合日日| 成人黄色电影在线 | 中文字幕在线观看不卡| 亚洲女同ⅹxx女同tv| 亚洲第一狼人社区| 国产做a爰片久久毛片| 福利视频网站一区二区三区| 91蝌蚪porny| 91精品国产免费| 中文字幕不卡的av| 洋洋av久久久久久久一区| 蜜桃精品视频在线| 东方欧美亚洲色图在线| 欧美系列日韩一区| 精品粉嫩超白一线天av| 国产伦精品一区二区三区在线观看| 国产91在线观看| 91福利视频在线| 精品剧情v国产在线观看在线| 国产精品欧美久久久久无广告 | 久久成人精品无人区| 免费观看日韩av| 国产成人亚洲精品青草天美| 色八戒一区二区三区| 欧美v日韩v国产v| 中文字幕一区二区在线播放| 五月天久久比比资源色| 国产精品18久久久久久久久久久久| 色综合网站在线| 欧美mv日韩mv国产网站app| 亚洲欧洲日韩综合一区二区| 亚洲成a人在线观看| 福利一区二区在线| 欧美一级精品在线| 一级做a爱片久久| 国产一区二区三区免费观看| 欧美三级电影网| 欧美精彩视频一区二区三区| 丝袜美腿亚洲色图| 97精品久久久久中文字幕| 精品国产乱子伦一区| 一区二区三区精品久久久| 国产精品一卡二| 欧美人体做爰大胆视频| 最新久久zyz资源站| 韩国中文字幕2020精品| 欧美精品一二三区| 亚洲精品乱码久久久久久 | 欧美成人精精品一区二区频| 一级日本不卡的影视| 国产激情视频一区二区在线观看| 欧美精品 日韩| 亚洲精品免费看| 99re视频精品| 国产人伦精品一区二区| 青娱乐精品在线视频| 在线免费观看视频一区| 1024成人网| 成人在线一区二区三区| xnxx国产精品| 激情图区综合网| 欧美一级片在线观看| 亚洲福利视频三区| 欧美性三三影院| 亚洲国产一区二区视频| 91网站在线观看视频| 中文字幕在线不卡| 福利91精品一区二区三区| 久久久久久久免费视频了| 麻豆91小视频| 日韩视频免费直播| 免费在线欧美视频| 9191久久久久久久久久久| 亚洲一二三四在线观看| 欧洲精品一区二区| 一区二区三区在线视频观看 | 亚洲视频一区二区在线观看| 高清不卡一二三区| 中日韩免费视频中文字幕| 国产91精品久久久久久久网曝门| 久久久久综合网| 国产乱国产乱300精品| 精品盗摄一区二区三区| 国产中文一区二区三区| 久久久精品国产免大香伊| 国产乱子伦一区二区三区国色天香| 精品免费国产一区二区三区四区| 久久99精品国产麻豆不卡| 久久久久久久久久久久久久久99 | 久久精品在这里| 成人性生交大合| 亚洲同性gay激情无套| 色天天综合久久久久综合片| 一区二区三区不卡视频| 欧美视频一区二区三区四区 | 欧美aaaaa成人免费观看视频| 欧美一区二区三区在线观看视频| 免费av网站大全久久| 日韩精品自拍偷拍| 福利91精品一区二区三区| 亚洲摸摸操操av| 欧美日韩精品欧美日韩精品一综合| 午夜精品一区二区三区电影天堂| 日韩你懂的在线播放| 国产精品一区免费视频| 中文字幕日本乱码精品影院| 在线日韩av片| 久久99热99| 国产精品久久久久久久久免费桃花| 色诱亚洲精品久久久久久| 天天综合色天天| 久久久久综合网| 色猫猫国产区一区二在线视频| 亚洲成精国产精品女| 精品精品国产高清一毛片一天堂| 国产aⅴ综合色| 亚洲精品国产一区二区三区四区在线 | aaa欧美日韩| 婷婷夜色潮精品综合在线| 538在线一区二区精品国产| 国产麻豆精品theporn| 99视频有精品| 午夜精品福利一区二区蜜股av| 欧美精品一区二区在线播放| 91视频免费播放| 韩国av一区二区三区四区| 亚洲婷婷国产精品电影人久久| 欧美精品丝袜久久久中文字幕| 国产精品一区二区久久精品爱涩 | 亚洲一区二区在线免费看| 欧美va在线播放| 色av成人天堂桃色av| 精品一区二区免费看| 亚洲精品日产精品乱码不卡| 久久午夜老司机| 精品视频1区2区| 国产成人在线观看免费网站| 一区二区三区四区av| 26uuu久久天堂性欧美| 欧美日韩在线播| 成人精品一区二区三区中文字幕 | 欧美久久久久久久久久| 国产成都精品91一区二区三| 青青草伊人久久| 亚洲激情自拍偷拍| 国产精品天美传媒| 日韩免费电影网站| 欧美性猛交xxxx乱大交退制版| 成人一道本在线| 久久成人久久爱| 日韩**一区毛片| 亚洲一二三四在线观看| 国产精品久久久久久一区二区三区| 精品美女在线播放| 欧美精品久久一区二区三区| 91丨国产丨九色丨pron| 国产经典欧美精品| 久久精品国产成人一区二区三区 | 欧美亚洲一区三区| 不卡一区中文字幕| 丁香激情综合国产| 国产一区二区三区四区五区美女| 日本不卡视频在线观看| 亚洲一区二区影院| 亚洲人成亚洲人成在线观看图片 | 国产精品1区2区3区在线观看| 美女精品一区二区| 午夜电影一区二区三区| 亚洲一区二区三区在线播放| 中文字幕一区二区三区色视频| 久久精品视频一区二区三区| 91精品国产欧美一区二区成人 | 一片黄亚洲嫩模| 一区二区三区视频在线看| 亚洲激情在线激情| 亚洲天堂福利av| 亚洲欧美国产三级| 亚洲精品国产品国语在线app| 亚洲视频免费看|