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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 164_wnl.asm

?? 包含proteus仿真原理圖
?? ASM
?? 第 1 頁 / 共 2 頁
字號:
;2051帶農歷顯示的萬年歷最簡電路
;帶74L164三片
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;           AT89C2051日歷程序         ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;轉載請署名來自 www.01mcu.com 否則謝絕轉載
time_week data 52h      ;星期存放單元
time_year data 5dh        ;年份低兩位存放單元(bcd碼)
time_month data 5eh     ;月份存放單元(bcd碼)
time_data data 5fh        ;日存放單元(bcd碼)
yearh data 36h             ;年份高兩位
year data 35h               ;年份低兩位存放單元(bcd碼)
month data 34h            ;月份存放單元(bcd碼)
day data 33h                ;日存放單元(bcd碼)
hour data 32h               ;時存放單元(bcd碼)
minute data 31h            ;分存放單元(bcd碼)
sec data 30h                ;秒存放單元(bcd碼)
aaa  bit p3.0                 ;顯示位(74ls164 數據)
bbb bit p3.1                 ;顯示脈沖(74ls164時鐘)
aa bit p3.3                    ;時間調整按鈕
bb bit p3.4                    ;加1調整
cc bit p3.5                    ;鬧鐘調整
bl bit p3.2                    ;鬧鐘輸出 
bz1  bit  21h.0
times    data    20h        ;調時標志
com     data    p1          ;段碼數據
;  定時器T0溢出周期為40MS,T0為秒計數用
;P1口 為字符輸出口,采用共陽顯示管。
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;           中斷入口程序              ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
ORG 0000H          ;程序執行開始地址
LJMP      START  ;跳到標號START執行
ORG 0003H          ;外中斷0中斷程序入口
RETI                     ;外中斷0中斷返回
ORG 000BH        ;定時器T0中斷程序
LJMP      INTT0  ;跳至INTTO執行
ORG 0013H        ;外中斷1中斷程序入口
RETI                   ;外中斷1中斷返回
ORG 001BH        ;定時器T1中斷程序入口
RETI
ORG 0023H        ;串行中斷程序入口地址
RETI                    ;串行中斷程序返回
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
START:               ;主 程 序                 ;;
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
mov   r0,#30h          ;清30H-38H共11個內存單元
mov   r7,#9            ;9個字節
cleete:
mov   @r0,#00h            ;www.01mcu.com
inc      r0
djnz    r7,cleete
mov    times,#00h       ;清調時標志
mov    tmod,#01h       ;設T0為16位定時器
mov    tl0,#0c0h         ;40ms定時初值(T0計時用)
mov    th0,#63h         ;40ms定時初值
mov  sec,#0
mov minute,#0h
mov hour,#0h
mov day,#01h
mov month,#01h
mov year,#01h
mov yearh,#20h
setb     ea                  ;總中斷開放
setb     et0                 ;允許T0中斷
setb     tr0                 ;開啟T0定時器
mov     r4,#19          ;1秒定時用(40ms×25)
START1:
call      disp              ;調用顯示子程序
jnb      aa,setmm1    ;P3.3口為0時轉時間調整程序
jmp     start1           ;P3.3口為1時跳回START1
SETMM1:    
call       setmm         ;調時間調整程序SETMM
jmp start1
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
SETMM:                    ;時間調整程序
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
call disp
call disp
jb aa,setmmo              ;是干擾跳過
setmm2:
jnb aa,setmm3
clr et0
clr tr0                         ;關t0中斷
mov sec,#0                 ;秒清零
mov times,#01h           ;分開始調整
mov r0,#minute           ;
setmm4:
nop
inc22:
call offl                            ;滅顯示
call inc11                        ;加調整
call disp
jb aa,inc22
call disp
jb aa,inc22
inc r0
mov a,times
rl a
mov times,a
jnb times.5,setmm4        ;繼續調整下一數據
setmm12:
jnb aa,setmm11
setmmo:
setb tr0
setb et0                         ;調整完成開始計時
ret
setmm11:
call disp
jmp setmm12
setmm3:
call disp     
jmp setmm2                ;避免調整時無顯示
inc11:
mov r3,#40
inc111:
mov a,@r0
jb bb,inc17
add a,#1                     ;加1
da a
call  inc000                 ;數據比較  
inc13:
jnb bb,inc14
inc17:
mov @r0,a                 ;存入調整后的數據
call disp
djnz r3,inc111
ret
inc14:
call disp
jmp inc13
offl:                             ;滅顯示
mov 22h,@r0
mov r6,#10
off1:
mov r7,#10
off2:
mov @r0,#0aah         ;放入熄滅碼
call disp
djnz r7,off2
djnz r6,off1
mov @r0,22h
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
inc000:                      ;比較子程序
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
jb times.0,inc001       ;分比較
jb times.1,inc002       ;時比較
jb times.2,inc003       ;日比較
jb times.3,inc004       ;月比較
jb times.4,inc005       ;年比較
jmp incout                 ;完成www.01mcu.com
inc005:
cjne a,#99h,incout
mov a,#00h               ;超過99年為00年
jmp incout
inc004:
cjne a,#13h,incout
mov a,#01h               ;超過12月為1月
jmp incout
inc003:
cjne a,#32h,incout
mov a,#01h               ;超過31天為1日
jmp incout
inc002:
cjne a,#24h,incout
mov a,#00h               ;超過23時為0時
jmp incout
inc001:
cjne a,#60h,incout
mov a,#00h               ;超過59分為0分
incout:
ret                      ;返回
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
INTT0:           ;1秒計時程序              ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
push    acc               ;累加器入棧保護
push     psw             ;狀態字入棧保護
orl      tl0,#0c0h       ;低8位初值修正
mov   th0,#63h        ;高8位初值修正
djnz   r4,clke111     ;25次中斷未到
jmp   loop11
clke111:
jmp   clke                  
loop11:
mov   r4,#19h           ;25次中斷到(1秒)重賦初值
mov   a,sec                ;調整秒
add   a,#1
da    a
mov   sec,a
cjne  a,#60h,clke99  ;整分否
mov   sec,#0             ;清秒
mov   a,minute          ;調整分
add   a,#1
da    a
mov   minute,a
clk0:
cjne  a,#60h,clke      ;整點否
mov   minute,#0       ;清分
mov   a,hour            ;調整時
add   a,#1
da    a
mov   hour,a
cjne  a,#24h,clke     ;零點否
mov   hour,#0         ;清時
mov   a,day            ;調整日期
add   a,#1
da    a
mov   day,a
mov   a,month         ;查閱本月最大日期
inc   a
movc  a,@a+pc
sjmp  clk1
db 31h,28h,31h       ;對應月份編碼:01h,02h,03h
db 30h,31h,30h       ;對應月份編碼:04h,05h,06h
db 31h,31h,30h       ;對應月份編碼:07h,08h,09h
db 00h,00h,00h       ;對應無效月份編碼:0ah,0bh,0ch
db 00h,00h,00h       ;對應無效月份編碼:0dh,0eh,0fh
db 31h,30h,31h       ;對應月份編碼:10h,11h,12h
clk1:
clr   c
subb  a,day
jnc   clke                ;本月未滿
mov   a,month
cjne  a,#2,clk3       ;是二月
mov   a,year
anl   a,#13h           ;保留年份中非4的整數部分
jnb   acc.4,clk2
add   a,#2
clk2:
anl   a,#3             ;能否被4整除
jnz   clk3             ;非閏年
mov   a,day
xrl   a,#29h
jz    clke              ;閏年二月可以有29日
clk3:
mov   day,#1          ;調整到下個月的1日
mov   a,month
add   a,#1
da    a
mov   month,a
cjne  a,#13h,clke
mov   month,#1        ;調整到下一年的一月份
mov   a,year             ;調整年份
add   a,#1
da    a
mov   year,a
clke99:
call  CONvert         ;農歷轉換子程序
clke:                       ;時鐘調整完畢,處理其它定時任務
pop   psw
pop   acc    
reti                  ;完成
;;;;;;;;;;;;;;;;;;;;
disp:     ;顯示寄存器處理
;;;;;;;;;;;;;;;;;;;;
push  psw
push  acc
mov   23h,r0         ;保存r0
disp99:
mov   r1,#40h       ;顯示寄存器首址
mov   r0,#30h       ;待處理寄存器首址
mov   r2,#9           ;處理n次
disp1:
mov   a,@r0         ;低寄存器1內容存入a
anl   a,#0fh 
mov   @r1,a         ;將a的值存入顯示寄存器1 
mov   a,@r0         ;低寄存器1內容存入a
swap  a
anl   a,#0fh 
inc   r1                  ;r1地址加1  
mov   @r1,a         ;將A的值存入顯示寄存器2
djnz  r2,disp2       ;處理完n次,沒有地址加1
call  display
mov   r0,23h         ;www.01mcu.com
pop   acc
pop   psw
ret
disp2:
inc   r1
inc   r0
jmp   disp1  
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
display:          ;顯示程序                  ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; 顯示數據在40H-51H單元內,用19位LED共陽數碼管顯示,P1口輸出段碼數據,
;每個LED數碼管亮1MS;時間再逐位循環。
mov   r1,#40h       ;指向顯示數據首址
mov    r5,#19        ;顯示19個數據
setb   aaa
play: 
setb   bbb
nop
clr    bbb                ;移一位
clr    aaa               ;清零
mov  a,@r1          ;取顯示數據到A
mov  dptr,#tab     ;取段碼表地址
movc a,@a+dptr ;查顯示數據對應段碼
mov   com,a        ;段碼放入P1口
call    dl1ms         ;顯示1ms
mov   com,#0ffh  ;P1口復位
djnz   r5,play1  ;www.01mcu.com
clr    bbb
setb   aaa 
ret                      ;返回
play1:
inc    r1              ;顯示下一位
jmp    play
TAB:
DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH,0a3h,8eh,0abh
;共陽段碼表 "0""1""2" "3""4""5""6""7" "8""9""不亮""o""f""n";后面三個在調鬧鐘時用
dl1ms:
mov   25h,r7
mov   24h,r6      ;保存r6,r7
mov   r7,#20
ds1:
mov   r6,#10
djnz  r6,$
djnz  r7,ds1
mov   r7,25h
mov   r6,24h
ret
;下面還有 

;下面的程序是我在網上找到的并做了刪減及修改了一點,我可沒這個能力自己編出來
;以下三單元存轉換后農歷日期與入口單元重疊,如要保留入口信息,請重定義?
start_year equ 01
CONvert_yeAr DATA 5ch
CONvert_mONth DATA 38h ;BIT7 為1 表示閏月
CONvert_dAte DATA 37h
temp_Byte1 DATA 57h
temp_Byte2 DATA 58h
temp_Byte3 DATA 59h
temp_Byte4 DATA 5Ah
temp_Byte5 DATA 5Bh
;以下為公歷轉農歷子程序
CONvert:
mov a,year
mov time_year,a
mov a,month
mov time_month,a
mov a,day
mov time_data,a
 MOV A,time_year ;將年月日轉化為HEX 格式
;www.01mcu.com
MOV B,#16
DIV AB
MOV CONvert_yeAr,B
MOV B,#10
MUL AB
ADD A,CONvert_yeAr
MOV CONvert_yeAr,A
MOV A,time_month
JNB ACC.4,CON_02
CLR ACC.4 ;ACC.4 為1 表示大于10 月
ADD A,#10
CON_02: MOV CONvert_mONth,A
MOV A,time_data
MOV B,#16
DIV AB
MOV CONvert_dAte,B
MOV B,#10
MUL AB
ADD A,CONvert_dAte
MOV CONvert_dAte,A
MOV dptr,#mONth_dAtA ;以下定位本年數據在表格中的位置
MOV A,CONvert_yeAr
CON_06: CLR C
SUBB A,#stArt_yeAr
MOV B,#3 ;表格每年3 字節
MUL AB

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
av一二三不卡影片| 国产精品66部| 制服丝袜激情欧洲亚洲| 亚洲成人三级小说| 欧美xxxx老人做受| 色哟哟欧美精品| 免费欧美高清视频| 欧美激情资源网| 91精品一区二区三区在线观看| 老司机午夜精品99久久| 国产精品国模大尺度视频| 欧美亚洲国产一区在线观看网站| 免费观看成人鲁鲁鲁鲁鲁视频| 国产精品初高中害羞小美女文| 欧美日韩免费电影| 99久久精品国产导航| 蜜臀av国产精品久久久久| 亚洲视频一区二区在线| 2020国产精品久久精品美国| 欧美最猛性xxxxx直播| 国产成人免费视频精品含羞草妖精 | 欧美丰满高潮xxxx喷水动漫| 国产一区二区剧情av在线| 日韩精品乱码av一区二区| 亚洲欧美综合网| 亚洲色图清纯唯美| 亚洲欧美日韩精品久久久久| 中文字幕在线不卡视频| 亚洲国产精品精华液2区45| 成人丝袜18视频在线观看| 国产经典欧美精品| 成人污污视频在线观看| 成人高清免费观看| 91看片淫黄大片一级| 99视频超级精品| 欧美午夜精品一区二区蜜桃| 色综合中文字幕国产| 91在线一区二区| 欧美久久久久免费| 精品国一区二区三区| 久久久高清一区二区三区| 国产欧美视频在线观看| 国产精品理论在线观看| 亚洲成人福利片| 狠狠色丁香久久婷婷综| 不卡一区二区在线| 69久久夜色精品国产69蝌蚪网| 日韩欧美成人激情| 亚洲视频综合在线| 极品少妇xxxx精品少妇| av中文字幕在线不卡| 制服丝袜成人动漫| 亚洲精品中文字幕乱码三区| 亚洲国产一二三| 国产高清在线精品| 欧美一区二区视频在线观看2020| 国产精品伦一区| 国产一区二三区好的| 欧美日本一区二区三区四区| 国产欧美一区二区精品久导航 | 国产suv精品一区二区6| 欧美一区二区在线看| 亚洲国产精品自拍| 色婷婷综合久久久| 中文字幕亚洲欧美在线不卡| 国内外成人在线| 精品国产免费人成电影在线观看四季| 亚洲欧美电影院| 欧美色图一区二区三区| 亚洲天堂福利av| 在线观看一区二区视频| 亚洲免费色视频| 欧美日韩精品一二三区| 亚洲高清免费在线| 一本色道久久综合狠狠躁的推荐| 国产婷婷色一区二区三区四区| 高清国产午夜精品久久久久久| 日韩欧美综合一区| 国产米奇在线777精品观看| 精品国产三级a在线观看| 国产成人三级在线观看| 亚洲另类在线一区| 91精品国产麻豆国产自产在线| 美女脱光内衣内裤视频久久网站 | 久久精品av麻豆的观看方式| 欧美不卡一区二区三区四区| 国产在线日韩欧美| 亚洲品质自拍视频| 91精品国产色综合久久ai换脸| 国产自产高清不卡| 亚洲国产综合视频在线观看| 精品免费视频一区二区| 丁香激情综合五月| 久久福利视频一区二区| 樱桃视频在线观看一区| 欧美视频完全免费看| eeuss鲁片一区二区三区在线观看| 2024国产精品| 欧美性视频一区二区三区| 理论片日本一区| 亚洲精品高清视频在线观看| 日韩欧美视频在线| 色国产精品一区在线观看| 奇米色777欧美一区二区| 中文字幕一区二区三区蜜月| 7777精品伊人久久久大香线蕉 | 亚洲一区二区三区四区在线| 日韩欧美国产一区二区三区| 色婷婷国产精品| 国产精品99久| 国内成人免费视频| 蜜桃视频一区二区| 日韩精品福利网| 天天免费综合色| 日韩二区三区四区| 午夜国产不卡在线观看视频| 中文字幕亚洲欧美在线不卡| 日韩精品中文字幕在线一区| 欧美日韩国产区一| 欧美无乱码久久久免费午夜一区| a亚洲天堂av| 欧美探花视频资源| 3d动漫精品啪啪1区2区免费 | 成人精品在线视频观看| 成人免费视频免费观看| 国产999精品久久| 日本韩国欧美在线| 69成人精品免费视频| 欧美日韩久久久| 久久久www成人免费毛片麻豆| 久久影视一区二区| 一区二区三区日韩| 亚洲成av人片一区二区三区| 国产乱国产乱300精品| 国产美女精品在线| 成a人片国产精品| 欧美精品丝袜中出| 中文字幕一区三区| 午夜亚洲福利老司机| 日本不卡免费在线视频| 国产成人av资源| 在线不卡a资源高清| 亚洲视频在线一区观看| 久久狠狠亚洲综合| 欧美日韩一级视频| 国产午夜精品久久久久久免费视| 视频在线观看一区| 欧美综合一区二区| 亚洲欧洲性图库| 成人午夜av影视| 日韩精品专区在线影院观看| 亚洲一区二区av在线| 国内精品免费**视频| 欧美成人午夜电影| 免费成人小视频| 日韩免费视频线观看| 婷婷国产v国产偷v亚洲高清| 色94色欧美sute亚洲线路二| 国产精品成人一区二区艾草| 日韩av不卡在线观看| 精品免费日韩av| 国产一区二区精品久久91| 亚洲精品一区在线观看| 毛片av中文字幕一区二区| 久久久国产精品不卡| av亚洲精华国产精华| 亚洲激情第一区| 欧美日韩高清一区二区| 亚洲亚洲精品在线观看| 欧美精选午夜久久久乱码6080| 青青草视频一区| 日本一区二区免费在线| 欧美日韩国产免费一区二区| 日本不卡不码高清免费观看| 国产三级精品在线| 欧美性高清videossexo| 激情综合网av| 亚洲欧美偷拍三级| 久久夜色精品国产噜噜av| 色哟哟日韩精品| www.视频一区| 日韩av电影免费观看高清完整版| 亚洲情趣在线观看| 久久精品综合网| 欧美日韩精品一区二区| 国产精品1区2区3区在线观看| 性感美女久久精品| 亚洲免费高清视频在线| 国产午夜精品福利| 日韩美女在线视频| 欧美精品乱码久久久久久按摩| 成人中文字幕合集| 国产在线播放一区| 水野朝阳av一区二区三区| 欧美国产亚洲另类动漫| 国产精品色婷婷| 中文av一区特黄| 亚洲私人黄色宅男| 伊人一区二区三区| 亚洲午夜免费视频|