導航:首頁 > 操作系統 > 存儲器單片機99秒電路圖

存儲器單片機99秒電路圖

發布時間:2023-03-15 07:47:17

1. 如何用單片機做一個簡單的倒計時器

一般我們用定時器來做計時器,實現時間得加。每次中斷發生,用一個變數自增來判斷時間是否到1S,到了之後清零這個變數,另一個時間變數自增來作時間得增加。現在就是要把這個自增的時間變數改為自減,判斷當小於0時,又賦初值,然後繼續自減判斷。

2. 幫忙解讀一下51單片機99秒倒計時程序。

大概是下面這樣的
ORG 00H ;復位後主程序入口
JMP START ;轉移至主程序
ORG 0BH ;中斷服務程序入口
JMP TIMER ,轉移至中斷
START: MOV TMOD,#01H ;選擇定時器工作方式1
MOV TH0,#0BDH ;定時器0高8位給初始值
MOV TL0,#0C0H ;定時器0給低八位初始值
MOV IE,#82H
MOV 20H,#10 ;地址位20H的寄存器賦值
MOV 21H,#10 ;同上
MOV R7,#16 ;同上
CLR TR0
A4: MOV P2,#19H
CALL DELAY ;調用延時子程序
ANL P2,#00H ;與p2口數據進行與運算
MOV P2,#29H
CALL DELAY ;調用延時子程序
ORL P2,#00H
JB P1.0,A4
SETB TR0 ;打開定時器0
A1: MOV A,20H
MOV DPTR,#TABLE
MOVC A,@A+DPTR
ADD A,#10H
MOV P2,A
CALL DELAY
ANL P2,#00H
MOV A,21H
MOV DPTR,#TABLE
MOVC A,@A+DPTR
ADD A,#20H
MOV P2,A
CALL DELAY
ANL P2,#00H
MOV A,#01H
CJNE A,21H,A1 ;判斷是否到10
MOV A,#01
CJNE A,20H,A1 ;判斷是否到10
JMP START ;跳入主程序
TIMER: DJNZ R7,A2
MOV TH0,#0BDH
MOV TL0,#0C0H
MOV R7,#16
DJNZ 20H,A2
MOV 20H,#10
DJNZ 21H,A2
MOV 21H,#10
A2: RETI
DELAY: MOV R6,#248
DJNZ R6,$
RET
TABLE: DB 00H,00H,01H,02H,03H,04H ;定義表
DB 05H,06H,07H,08H,09H
END;結束

o(∩_∩)o...,給分吧

3. 編一個AT89C51單片機00 —99 秒的匯編程序,要求有循環和暫停,用兩個獨立數碼管顯示

;利用中斷的99秒計時器,動態掃描兩位數碼管

;P0口接J3,數據埠

;P2.2接J2B端子,表示段碼鎖存

;P2.3接J2A端子,標志位碼鎖存

LATCH1BITP2.2

LATCH2BITP2.3

ORG00H

JMPSTART

ORG0BH

JMPTIM0

START:MOVR3,#00;中斷循環次數

MOVR4,#0;時間初值

MOVDPTR,#TABLE

MOVSP,#40H

MOVTMOD,#01H;定時器工作方式

MOVTH0,#HIGH(65536-3800)

MOVTL0,#LOW(65536-3800);初值4MS

SETBTR0

MOVIE,#82H;開中斷

TIM0:

MOVTH0,#HIGH(65536-3800)

MOVTL0,#LOW(65536-3800)

INCR3

CJNER3,#250,X1;1S

MOVR3,#0

MOVA,R4;十進制轉換

MOVB,#10

DIVAB

MOV20H,B;個位

MOV21H,A;十位

INCR4

CJNER4,#100,LEDSCAN;到100則清零

MOVR4,#0

LEDSCAN:CALLSCAN;調用數碼管掃描

X1:PUSHACC

PUSHPSW

CALLSCAN

POPPSW

POPACC

RETI

SCAN:

MOVA,21H

MOVCA,@A+DPTR

MOVP0,A

SETBLATCH1

CLRLATCH1

MOVP0,#11111110B;掃描子程序

SETBLATCH2

CLRLATCH2

CALLDELAY1

MOVA,20H

MOVCA,@A+DPTR

MOVP0,A

SETBLATCH1

CLRLATCH1

MOVP0,#11111101B;0代表選通該位數碼管

SETBLATCH2

CLRLATCH2

CALLDELAY1

RET

DELAY:MOVR5,#50;典型延時程序

D1:MOVR6,#40

D2:MOVR7,#248

CALLSCAN

DJNZR7,$

DJNZR6,D2

DJNZR5,D1

RET

DELAY1:MOVR6,#4;掃描延時

D3:MOVR7,#248

DJNZR7,$

DJNZR6,D3

RET

TABLE:DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH;共陰字碼表

是用動態掃描的方法顯示的,用了2個鎖存器,8個數碼管的。

附上電路圖

閱讀全文

與存儲器單片機99秒電路圖相關的資料

熱點內容
優信二手車解壓後過戶 瀏覽:61
Windows常用c編譯器 瀏覽:778
關於改善國家網路安全的行政命令 瀏覽:833
安卓如何下載網易荒野pc服 瀏覽:654
javainetaddress 瀏覽:104
蘋果4s固件下載完了怎麼解壓 瀏覽:1002
命令zpa 瀏覽:285
python編譯器小程序 瀏覽:944
在app上看視頻怎麼光線調暗 瀏覽:540
可以中文解壓的解壓軟體 瀏覽:592
安卓卸載組件應用怎麼安裝 瀏覽:912
使用面向對象編程的方式 瀏覽:339
程序員項目經理的年終總結範文 瀏覽:929
內衣的加密設計用來幹嘛的 瀏覽:432
淮安數據加密 瀏覽:292
魔高一丈指標源碼 瀏覽:982
松下php研究所 瀏覽:168
c回調java 瀏覽:399
夢幻端游長安地圖互通源碼 瀏覽:745
電腦本地文件如何上傳伺服器 瀏覽:313