導航:首頁 > 操作系統 > 存儲器單片機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秒電路圖相關的資料

熱點內容
安卓怎麼關許可權保護隱私 瀏覽:386
海牛微視app怎麼用 瀏覽:70
單片機怎樣選變壓器 瀏覽:829
癌症pdf 瀏覽:725
雲伺服器鏡像批量部署環境 瀏覽:683
安卓手機瀏覽器能訪問什麼網站 瀏覽:254
找不到網站的伺服器ip地址該如何解決 瀏覽:743
演算法十個數降序排列 瀏覽:95
基於單片機的老年人健康監測系統 瀏覽:706
python入門經典pdf下載 瀏覽:17
東芝變頻2p空調壓縮機 瀏覽:227
自家wifi怎麼能加密 瀏覽:644
紅米k40加密門禁卡 瀏覽:847
什麼樣的源碼好看 瀏覽:156
手機主伺服器有什麼用 瀏覽:612
程序編寫命令 瀏覽:597
android發送心跳包 瀏覽:385
指標源碼和原理 瀏覽:700
汽車空調壓縮吸盤 瀏覽:208
崽崽因app版本不同不能邀請怎麼辦 瀏覽:686