欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標(biāo)題:
單片機(jī)多功能數(shù)字鐘 匯編程序
[打印本頁(yè)]
作者:
daniu
時(shí)間:
2014-12-27 17:06
標(biāo)題:
單片機(jī)多功能數(shù)字鐘 匯編程序
;張培
;本程序?qū)崿F(xiàn)外控控?cái)?shù)字鐘
;功能:1.計(jì)時(shí)
; 2.3種顯示模式
; 時(shí)間顯示模式
; 月日顯示模式
; 溫度顯示模式
;******************************************************
;字節(jié)單元定義
TEMPER_L EQU 29H;用于保存讀出溫度的低8位
TEMPER_H EQU 28H;用于保存讀出溫度的高8位
FLAG1 EQU 38H;是否檢測(cè)到DS18B20標(biāo)志位
a_bit EQU 20H;數(shù)碼管個(gè)位數(shù)存放內(nèi)存位置
b_bit EQU 21H;數(shù)碼管十位數(shù)存放內(nèi)存位置
PIANXUAN EQU P3 ;P3為片選口
SHUCHU EQU P2 ;P2為輸出
MIAO EQU 30H;秒存儲(chǔ)單元
FEN EQU 31H;分存儲(chǔ)單元
SHI EQU 32H;時(shí)存儲(chǔ)單元
SHUZI EQU 33H;中轉(zhuǎn)存儲(chǔ)單元
YUE EQU 34H;月存儲(chǔ)單元
CRI EQU 35H;日存儲(chǔ)單元
DAIMAZHI EQU 36H;代碼存儲(chǔ)單元
LINGSHI EQU 37H;鬧鈴時(shí)存儲(chǔ)單元
LINGFEN EQU 50H;鬧鈴分存儲(chǔ)單元
KONGSHI EQU 39H;外部控制時(shí)存儲(chǔ)單元
KONGFEN EQU 61H;外部控制時(shí)存儲(chǔ)單元
QIEHUAN BIT 22H.0;切換標(biāo)志位
ANJIAN BIT 22H.1;按鍵1標(biāo)志位
ANJIAN1 BIT 22H.2;按鍵2標(biāo)志位
ANJIAN2 BIT 22H.3;按鍵3標(biāo)志位
ANJIAN3 BIT 22H.4;按鍵4標(biāo)志位
ANJIAN4 BIT 22H.5
ANJIAN5 BIT 23H.2
WENDU BIT 22H.6;溫度標(biāo)志位
GONG BIT 22H.7
C_0 BIT 23H.0;20MS的標(biāo)志位
SHANSHUO BIT 23H.1
;**********************************************************
;**************************主程序**************************
ORG 0000H
JMP START
ORG 000BH
JMP TT0
ORG 0030H
START: CALL CHUSHIHUA
MAIN: JNB C_0,MAIN ;節(jié)拍等待
CLR C_0
CALL JIACHULI ;計(jì)算時(shí)間
CALL SHJIAN_GN ;判斷時(shí)間鬧鈴及控制功能
CALL PANWENDU ;溫度按鍵判斷
JNB WENDU,NEXT0 ;
CALL XIANSHIWENDU ;溫度標(biāo)志位為1就顯示溫度
JMP MAIN
NEXT0:CALL PANGONGNENG ;判斷功能鍵
JNB GONG,NEXT1 ;沒(méi)有功能鍵按下顯示時(shí)間
CALL CANSHU ;代碼加一
CALL XIANSHIMA ;有功能鍵按下,則顯示功能代碼
CALL SHEZHI ;根據(jù)代碼設(shè)置相應(yīng)的功能
JMP MAIN ;返回
NEXT1:CALL PANANJIAN ;切換月日、時(shí)間顯示
JNB QIEHUAN,NEXT ;沒(méi)有按鍵按下,則顯示時(shí)間
CALL XIANSHI2 ;顯示月日
JMP MAIN ;返回
NEXT:CALL XIANSHI1 ;顯示時(shí)間
DEC 66H
MOV A,66H
CJNE A,#00,NEXT5
MOV 66,#50
CPL P2.7
NEXT5:JMP MAIN ;返回
;========================設(shè)置子程序========================
SHEZHI:MOV A,DAIMAZHI
MOV DPTR,#TAB1
JMP @A+DPTR
TAB1:AJMP SUB0
AJMP SUB1
AJMP SUB2
AJMP SUB3
AJMP SUB4
AJMP SUB5
AJMP SUB6
AJMP SUB7
;========================設(shè)置月份===========================
SUB0:MOV SHUZI,YUE
CALL XIANSHI3
JB P1.3,PAN
JB ANJIAN2,PAN
SETB ANJIAN2
INC YUE
MOV R1,YUE
CJNE R1,#13,PAN
MOV YUE,#01
PAN:JNB P1.3,PANJIAN1
CLR ANJIAN2
PANJIAN1:JB P1.4,TAIQI3
JB ANJIAN3,TAIQI3
SETB ANJIAN3
DEC YUE
MOV R1,YUE
CJNE R1,#00,TAIQI3
MOV YUE,#12
TAIQI3:JNB P1.4,OUT7
CLR ANJIAN3
OUT7:RET
;=========================設(shè)置日=============================
SUB1:MOV SHUZI,CRI
CALL XIANSHI3
JB P1.3,TAIQI4
JB ANJIAN2,TAIQI4
SETB ANJIAN2
INC CRI
MOV R1,CRI
CJNE R1,#32,TAIQI4
MOV CRI,#01
TAIQI4:JNB P1.3,PANJIAN2
CLR ANJIAN2
PANJIAN2:JB P1.4,TAIQI5
JB ANJIAN3,TAIQI5
SETB ANJIAN3
DEC CRI
MOV R1,CRI
CJNE R1,#00,TAIQI5
MOV CRI,#32
TAIQI5:JNB P1.4,OUT8
CLR ANJIAN3
OUT8:RET
;==========================設(shè)置分=============================
SUB2:MOV SHUZI,FEN
CALL XIANSHI3
JB P1.3,TAIQI8
JB ANJIAN2,TAIQI8
SETB ANJIAN2
INC FEN
MOV R1,FEN
CJNE R1,#60,TAIQI8
MOV FEN,#01
TAIQI8:JNB P1.3,PANJIAN4
CLR ANJIAN2
PANJIAN4:
JB P1.4,TAIQI9
JB ANJIAN3,TAIQI9
SETB ANJIAN3
DEC FEN
MOV R1,FEN
CJNE R1,#00,TAIQI9
MOV FEN,#59
TAIQI9:JNB P1.4,OUT10
CLR ANJIAN3
OUT10:RET
;==========================設(shè)置時(shí)===========================
SUB3:MOV SHUZI,SHI
CALL XIANSHI3
JB P1.3,TAIQI6
JB ANJIAN2,TAIQI6
SETB ANJIAN2
INC SHI
MOV R1,SHI
CJNE R1,#24,TAIQI6
MOV SHI,#00
TAIQI6:JNB P1.3,PANJIAN3
CLR ANJIAN2
PANJIAN3:JB P1.4,TAIQI7
JB ANJIAN3,TAIQI7
SETB ANJIAN3
DEC SHI
MOV R1,SHI
CJNE R1,#00,TAIQI7
MOV SHI,#23
TAIQI7:JNB P1.4,OUT9
CLR ANJIAN3
OUT9:RET
;==========================設(shè)置鬧鈴時(shí)===========================
SUB4:MOV SHUZI,LINGSHI
CALL XIANSHI3
JB P1.3,TAIQI10
JB ANJIAN2,TAIQI10
SETB ANJIAN2
INC LINGSHI
MOV R1,LINGSHI
CJNE R1,#24,TAIQI10
MOV LINGSHI,#00
TAIQI10:JNB P1.3,PANJIAN5
CLR ANJIAN2
PANJIAN5:JB P1.4,TAIQI11
JB ANJIAN3,TAIQI11
SETB ANJIAN3
DEC LINGSHI
MOV R1,LINGSHI
CJNE R1,#00,TAIQI11
MOV LINGSHI,#23
TAIQI11:JNB P1.4,OUT11
CLR ANJIAN3
OUT11:RET
;==========================設(shè)置鬧鈴分===========================
SUB5:MOV SHUZI,LINGFEN
CALL XIANSHI3
JB P1.3,TAIQI12
JB ANJIAN2,TAIQI12
SETB ANJIAN2
INC LINGFEN
MOV R1,LINGFEN
CJNE R1,#60,TAIQI12
MOV LINGFEN,#01
TAIQI12:JNB P1.3,PANJIAN6
CLR ANJIAN2
PANJIAN6:JB P1.4,TAIQI13
JB ANJIAN3,TAIQI13
SETB ANJIAN3
DEC LINGFEN
MOV R1,LINGFEN
CJNE R1,#00,TAIQI13
MOV LINGFEN,#59
TAIQI13:JNB P1.4,OUT12
CLR ANJIAN3
OUT12:RET
;==========================設(shè)置控制時(shí)===========================
SUB6:MOV SHUZI,KONGSHI
CALL XIANSHI3
JB P1.3,TAIQI14
JB ANJIAN2,TAIQI14
SETB ANJIAN2
INC KONGSHI
MOV R1,KONGSHI
CJNE R1,#24,TAIQI14
MOV KONGSHI,#00
TAIQI14:JNB P1.3,PANJIAN7
CLR ANJIAN2
PANJIAN7:JB P1.4,TAIQI15
JB ANJIAN3,TAIQI15
SETB ANJIAN3
DEC KONGSHI
MOV R1,KONGSHI
CJNE R1,#00,TAIQI15
MOV KONGSHI,#23
TAIQI15:JNB P1.4,OUT13
CLR ANJIAN3
OUT13:RET
;==========================設(shè)置控制分===========================
SUB7:MOV SHUZI,KONGFEN
CALL XIANSHI3
JB P1.3,TAIQI16
JB ANJIAN2,TAIQI16
SETB ANJIAN2
INC KONGFEN
MOV R1,KONGFEN
CJNE R1,#60,TAIQI16
MOV KONGFEN,#01
TAIQI16:JNB P1.3,PANJIAN8
CLR ANJIAN2
PANJIAN8:JB P1.4,TAIQI17
JB ANJIAN3,TAIQI17
SETB ANJIAN3
DEC KONGFEN
MOV R1,KONGFEN
CJNE R1,#00,TAIQI17
MOV KONGFEN,#59
TAIQI17:JNB P1.4,OUT14
CLR ANJIAN3
OUT14:RET
;=======================鬧鈴與外部控制子程序====================
SHJIAN_GN:MOV A,SHI
CJNE A,LINGSHI,NEXT2
MOV A,FEN
CJNE A,LINGFEN,NEXT4
SETB P1.6
JMP NEXT2
NEXT4:CLR P1.6
NEXT2:MOV A,KONGSHI
CJNE A,KONGSHI,NEXT3
MOV A,FEN
CJNE A,KONGFEN,NEXT3
NEXT3:RET
;===============溫度時(shí)間顯示切換判斷子程序=================
PANWENDU:JB P1.5,TAIQI0
JB ANJIAN4,TAIQI0
SETB ANJIAN4
CPL WENDU
TAIQI0:JNB P1.5,KK
CLR ANJIAN4
KK:RET
;==========================顯示3子程序==========================
XIANSHI3:CALL JISUAN
MOV DPTR,#TAB
MOVC A,@A+DPTR
MOV SHUCHU,A
MOV PIANXUAN,#04H;顯示十位
CALL DELAY
MOV PIANXUAN,#00H;關(guān)片選
MOV A,B
MOVC A,@A+DPTR
MOV SHUCHU,A
MOV PIANXUAN,#08H;顯示個(gè)位
CALL DELAY
MOV PIANXUAN,#00H;關(guān)片選
MOV SHUCHU,#0BFH
MOV PIANXUAN,#02H;
CALL DELAY
MOV PIANXUAN,#00H;關(guān)片選
RET
;=======================參數(shù)鍵判斷子程序========================
CANSHU:JB P1.2,TAIQI2
JB ANJIAN5,TAIQI2
SETB ANJIAN5
CALL DAIMA ;設(shè)置代碼
TAIQI2:JNB P1.2,OUT5
CLR ANJIAN5
OUT5:RET
;========================代碼子程序=============================
DAIMA:INC DAIMAZHI
MOV R7,DAIMAZHI
CJNE R7,#08,PP
MOV DAIMAZHI,#00
PP:RET
;========================顯示代碼===============================
XIANSHIMA:MOV A,DAIMAZHI
MOV DPTR,#TAB
MOVC A,@A+DPTR
MOV SHUCHU,A
MOV PIANXUAN,#01H
CALL DELAY
MOV PIANXUAN,#00
RET
;=======================功能鍵判斷子程序========================
PANGONGNENG:JB P1.1,TAIQI1
JB ANJIAN1,TAIQI1
SETB ANJIAN1
CPL GONG
TAIQI1:JNB P1.1,OUT4
CLR ANJIAN1
OUT4:RET
;=========================按鍵判斷子程序========================
PANANJIAN:JB P1.0,TAIQI
JB ANJIAN,TAIQI
SETB ANJIAN
CPL QIEHUAN
TAIQI:JNB P1.0,OUT1
CLR ANJIAN
OUT1:RET
;***********************溫度顯示子程序*********************************
; 輸入:
; 輸出:
;實(shí)現(xiàn)功能:實(shí)現(xiàn)溫度的顯示
XIANSHIWENDU:
LCALL GET_TEMPER;調(diào)用讀溫度子程序
;進(jìn)行溫度顯示
;顯示范圍00到99度,顯示精度為1度
;因?yàn)?2位轉(zhuǎn)化時(shí)每一位的精度為0.0625度,我們不要求顯示小數(shù)所以可以拋棄29H的低4位
;將28H中的低4位移入29H中的高4位,這樣獲得一個(gè)新字節(jié),這個(gè)字節(jié)就是實(shí)際測(cè)量獲得的溫度
MOV A,29H
MOV C,40H;將28H中的最低位移入C
RRC A
MOV C,41H
RRC A
MOV C,42H
RRC A
MOV C,43H
RRC A
MOV 29H,A
LCALL DISPLAY;調(diào)用數(shù)碼管顯示子程序
RET
; 這是DS18B20復(fù)位初始化子程序
INIT_1820:
SETB P3.5
NOP
CLR P3.5
;主機(jī)發(fā)出延時(shí)537微秒的復(fù)位低脈沖
MOV R1,#3
TSR1:
MOV R0,#107
DJNZ R0,$
DJNZ R1,TSR1
SETB P3.5;然后拉高數(shù)據(jù)線
NOP
NOP
NOP
MOV R0,#25H
TSR2:
JNB P3.5,TSR3;等待DS18B20回應(yīng)
DJNZ R0,TSR2
LJMP TSR4 ; 延時(shí)
TSR3:
SETB FLAG1 ; 置標(biāo)志位,表示DS1820存在
LJMP TSR5
TSR4:
CLR FLAG1 ; 清標(biāo)志位,表示DS1820不存在
LJMP TSR7
TSR5:
MOV R0,#117
TSR6:
DJNZ R0,TSR6 ; 時(shí)序要求延時(shí)一段時(shí)間
TSR7:
SETB P3.5
RET
; 讀出轉(zhuǎn)換后的溫度值
GET_TEMPER:
SETB P3.5
LCALL INIT_1820 ;先復(fù)位DS18B20
JB FLAG1,TSS2
RET ; 判斷DS1820是否存在,若DS18B20不存在則返回
TSS2:
MOV A,#0CCH ; 跳過(guò)ROM匹配
LCALL WRITE_1820
MOV A,#44H ; 發(fā)出溫度轉(zhuǎn)換命令
LCALL WRITE_1820
;這里通過(guò)調(diào)用顯示子程序?qū)崿F(xiàn)延時(shí)一段時(shí)間,等待AD轉(zhuǎn)換結(jié)束,12位的話750微秒
LCALL DISPLAY
LCALL INIT_1820 ;準(zhǔn)備讀溫度前先復(fù)位
MOV A,#0CCH ; 跳過(guò)ROM匹配
LCALL WRITE_1820
MOV A,#0BEH ; 發(fā)出讀溫度命令
LCALL WRITE_1820
LCALL READ_18200 ; 將讀出的溫度數(shù)據(jù)保存到35H/36H
RET
;寫DS18B20的子程序(有具體的時(shí)序要求)
WRITE_1820:
MOV R2,#8;一共8位數(shù)據(jù)
CLR C
WR1:
CLR P3.5
MOV R3,#6
DJNZ R3,$
RRC A
MOV P3.5,C
MOV R3,#23
DJNZ R3,$
SETB P3.5
NOP
DJNZ R2,WR1
SETB P3.5
RET
; 讀DS18B20的程序,從DS18B20中讀出兩個(gè)字節(jié)的溫度數(shù)據(jù)
READ_18200:
MOV R0,#2 ; 將溫度高位和低位從DS18B20中讀出
MOV R1,#29H ; 低位存入29H(TEMPER_L),高位存入28H(TEMPER_H)
RE00:
MOV R2,#8;數(shù)據(jù)一共有8位
RE01:
CLR C
SETB P3.5
NOP
NOP
CLR P3.5
NOP
NOP
NOP
SETB P3.5
MOV R3,#9
RE10:
DJNZ R3,RE10
MOV C,P3.5
MOV R3,#23
RE20:
DJNZ R3,RE20
RRC A
DJNZ R2,RE01
MOV @R1,A
DEC R1
DJNZ R0,RE00
RET
;**********************顯示子程序*****************************
display:
mov a,29H ;將29H中的十六進(jìn)制數(shù)轉(zhuǎn)換成10進(jìn)制
mov b,#10 ;10進(jìn)制/10=10進(jìn)制
div ab
mov b_bit,a ;十位在a
mov a_bit,b ;個(gè)位在b
mov dptr,#numtab ;指定查表啟始地址
mov r0,#8
dpl1:
mov r1,#255 ;顯示1000次
dplop:
mov a,a_bit ;取個(gè)位數(shù)
MOVC A,@A+DPTR ;查個(gè)位數(shù)的7段代碼
mov p2,a ;送出個(gè)位的7段代碼
SETB p3.3 ;開個(gè)位顯示
acall d1ms ;顯示1ms
CLR p3.3
mov a,b_bit ;取十位數(shù)
MOVC A,@A+DPTR ;查十位數(shù)的7段代碼
mov p2,a ;送出十位的7段代碼
SETB p3.2 ;開十位顯示
acall d1ms ;顯示1ms
CLR p3.2
djnz r1,dplop ;250次沒(méi)完循環(huán)
djnz r0,dpl1 ;4個(gè)250次沒(méi)完循環(huán)
ret
;*************************延時(shí)子程序***************************
; 輸入:
; 輸出:
;實(shí)現(xiàn)功能:1MS延時(shí)(按12MHZ算)
;**************************************************************
D1MS:
MOV R7,#80
DJNZ R7,$
RET
;************************查表代碼*******************************
numtab:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
;************************顯示時(shí)分子程序*************************
; 輸入:FEN,YUE
; 輸出:A
;實(shí)現(xiàn)功能:實(shí)現(xiàn)時(shí)分的顯示
XIANSHI1:
MOV SHUZI,FEN
CALL JISUAN
MOV DPTR,#TAB
MOVC A,@A+DPTR
MOV SHUCHU,A
MOV PIANXUAN,#04H;顯示分的十位
CALL DELAY
MOV PIANXUAN,#00H;關(guān)片選
MOV A,B
MOVC A,@A+DPTR
MOV SHUCHU,A
MOV PIANXUAN,#08H;顯示分的個(gè)位
CALL DELAY
MOV PIANXUAN,#00H;關(guān)片選
MOV SHUZI,SHI
CALL JISUAN
MOVC A,@A+DPTR
MOV SHUCHU,A
MOV PIANXUAN,#01H;顯示時(shí)的十位
CALL DELAY
MOV PIANXUAN,#00H;關(guān)片選
MOV A,B
MOVC A,@A+DPTR
MOV SHUCHU,A
MOV PIANXUAN,#02H;顯示時(shí)的個(gè)位
CALL DELAY
MOV PIANXUAN,#00H;關(guān)片選
RET
;************************顯示月日子程序*************************
; 輸入:CRI,YUE
; 輸出:A
;實(shí)現(xiàn)功能:實(shí)現(xiàn)月日的顯示
XIANSHI2:
MOV SHUZI,CRI
CALL JISUAN
MOV DPTR,#TAB
MOVC A,@A+DPTR
MOV SHUCHU,A
MOV PIANXUAN,#04H;顯示日的十位
CALL DELAY
MOV PIANXUAN,#00H;關(guān)片選
MOV A,B
MOVC A,@A+DPTR
MOV SHUCHU,A
MOV PIANXUAN,#08H;顯示日的個(gè)位
CALL DELAY
MOV PIANXUAN,#00H;關(guān)片選
MOV SHUZI,YUE
CALL JISUAN
MOVC A,@A+DPTR
MOV SHUCHU,A
MOV PIANXUAN,#01H;顯示月的十位
CALL DELAY
MOV PIANXUAN,#00H;關(guān)片選
MOV A,B
MOVC A,@A+DPTR
MOV SHUCHU,A
MOV PIANXUAN,#02H;顯示月的個(gè)位
CALL DELAY
MOV PIANXUAN,#00H;關(guān)片選
RET
JIACHULI:
DJNZ R4,OUT3;判斷是否到一秒
MOV R4,#50
INC MIAO ;到一秒后秒位加1
MOV R7,MIAO
CJNE R7,#60,OUT3;判斷是否到60秒
MOV MIAO,#00
INC FEN
MOV R7,FEN
CJNE R7,#60,OUT3;判斷是否到60分
MOV FEN,#00
INC SHI
MOV R7,SHI
CJNE R7,#24,OUT3;判斷是否都24小時(shí)
MOV SHI,#00
INC CRI;到24小時(shí)后把日加一
MOV R7,CRI
MOV R4,YUE
CJNE R4,#01,JIXU1
CJNE R7,#32,OUT3
INC YUE
MOV CRI,#00
OUT3:JMP OUT2
JIXU1:CJNE R4,#02,JIXU2
CJNE R7,#29,OUT3
INC YUE
MOV CRI,#00
JMP OUT2
JIXU2:CJNE R4,#03,JIXU3
CJNE R7,#32,OUT2
INC YUE
MOV CRI,#00
JMP OUT2
JIXU3:CJNE R4,#04,JIXU4
CJNE R7,#31,OUT2
INC YUE
MOV CRI,#00
JMP OUT2
JIXU4:CJNE R4,#05,JIXU5
CJNE R7,#32,OUT2
INC YUE
MOV CRI,#00
JMP OUT2
JIXU5:CJNE R4,#06,JIXU6
CJNE R7,#31,OUT2
INC YUE
MOV CRI,#00
JMP OUT2
JIXU6:CJNE R4,#07,JIXU7
CJNE R7,#32,OUT2
INC YUE
MOV CRI,#00
JMP OUT2
JIXU7:CJNE R4,#08,JIXU8
CJNE R7,#32,OUT2
INC YUE
MOV CRI,#00
JMP OUT2
JIXU8:CJNE R4,#09,JIXU9
CJNE R7,#31,OUT2
INC YUE
MOV CRI,#00
JMP OUT2
JIXU9:CJNE R4,#10,JIXU10
CJNE R7,#32,OUT2
INC YUE
JMP OUT2
JIXU10:CJNE R4,#11,JIXU11
CJNE R7,#31,OUT2
INC YUE
MOV CRI,#00
JMP OUT2
JIXU11:CJNE R4,#12,OUT2
CJNE R7,#32,OUT2
MOV YUE,#01
MOV CRI,#00
OUT2:RET
;**********************初始化子程序*************************
CHUSHIHUA:MOV SP,#7FH
MOV TMOD,#01H;T0工作方式1
MOV TH0,#0B1H;20MS的初值
MOV TL0,#0E0H
SETB ET0;開啟中斷TO
SETB EA ;開啟中斷總開關(guān)
SETB TR0;定時(shí)器溢出標(biāo)志位
CLR QIEHUAN
CLR ANJIAN
CLR ANJIAN1
CLR ANJIAN2
CLR ANJIAN3
CLR ANJIAN4
CLR ANJIAN5
CLR WENDU ;顯示溫度標(biāo)志位清0
CLR SHANSHUO
CLR GONG
CLR P1.6
SETB C_0
MOV MIAO,#55
MOV FEN,#59
MOV SHI,#21
MOV YUE,#06
MOV CRI,#23
MOV DAIMAZHI,#00
MOV LINGSHI,#00
MOV LINGFEN,#00
MOV KONGSHI,#00
MOV KONGFEN,#00
MOV DPTR,#TAB
MOV R4,#50
MOV 66H,#50
RET
;///////計(jì)算子程序///////////////////////
;輸入:"30H"
;輸出:"A,B"
;實(shí)現(xiàn)的功能:查A在TAB位置的數(shù)
JISUAN:
MOV A,SHUZI
MOV B,#10
DIV AB
RET
;/////////////////中斷到來(lái)重置初值程序/////////////////////////
;輸入;無(wú)
;輸出: 無(wú)
;實(shí)現(xiàn)的功能中斷到來(lái)重置初值
TT0:
MOV TH0,#0B1H
MOV TL0,#0E0H
SETB C_0
RETI
;//////////////////////////延時(shí)程序/////////////////////////
;輸入;無(wú)
;輸出: 無(wú)
;實(shí)現(xiàn)的功能:延時(shí)一段時(shí)間
DELAY:
MOV R5,#20H
L8: MOV R6,#20H
DJNZ R6,$
DJNZ R5,L8
RET
TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
;///////結(jié)束//////////////////////////////
END
復(fù)制代碼
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1