AT89C51微控制器60 00到00 00倒計時程式4位數

時間 2022-02-08 18:15:52

1樓:匿名使用者

at89c51微控制器60.00到00.00倒計時程式 4位數碼管顯示 c語...

黃鶯鳴翠柳 紫燕剪春風 鶯歌燕舞 一年四季春常在 萬紫千紅永開花 喜迎新春

求組合語言 at89c51微控制器 4位數碼管顯示倒計時 倒計時的時間可以調節 求大神啊 15

2樓:匿名使用者

四位數碼管的段控和位控用哪個並行口了呀,什麼條件不給,怎麼給你寫程式,還是隨便寫一個,你去應付差事,那你就上網隨便找一個程式去應付差事就好了。

3樓:

動態還是靜態的,要有原理圖

at89c51微控制器怎麼用組合語言讓4個數碼管同時顯示1234?

4樓:大野瘦子

org 00h

ajmp main

org 30h

main: lcall disp

mov 20h,#1

mov 21h,#2

mov 22h,#3

mov 23h,#4

ajmp main

disp: mov a,20h

acall seg7

mov p0,a

setb p2.0

acall dly

clr p2.0

mov a,21h

acall seg7

mov p0,a

setb p2.1

acall dly

clr p2.1

mov a,22h

acall seg7

mov p0,a

setb p2.2

acall dly

clr p2.2

mov a,23h

acall seg7

mov p0,a

setb p2.3

acall dly

clr p2.3

retdly: mov r7,#2

d1: mov r6,#40

djnz r6,$

djnz r7,d1

retseg7: inc a

movc a,@a+pc

retdb        0c0h;0

db        0f9h;1

db        0a4h;2

db        0b0h;3

db        099h;4

db        092h;5

db        082h;6

db        0f8h;7

db        080h;8

db        090h;9end

5樓:

自己要學會仿製寫程式,懂了原理之後就容易理解了,我說一下原理吧:

數碼管動態顯示介面是微控制器中應用最為廣泛的一種顯示方式之一,動態驅動是將所有數碼管的8個顯示筆劃"a,b,c,d,e,f,g,dp"的同名端連在一起,另外為每個數碼管的公共極com增加位選通控制電路,位選通由各自獨立的i/o線控制,當微控制器輸出字形碼時,所有數碼管都接收到相同的字形碼,但究竟是那個數碼管會顯示出字形,取決於微控制器對位選通com端電路的控制,所以我們只要將需要顯示的數碼管的選通控制開啟,該位就顯示出字形,沒有選通的數碼管就不會亮。通過分時輪流控制各個數碼管的的com端,就使各個數碼管輪流受控顯示,這就是動態驅動。在輪流顯示過程中,每位數碼管的點亮時間為1~2ms,由於人的視覺暫留現象及發光二極體的餘輝效應,儘管實際上各位數碼管並非同時點亮,但只要掃描的速度足夠快,給人的印象就是一組穩定的顯示資料,不會有閃爍感。

6樓:匿名使用者

通常的辦法是掃描顯示,這樣的話,用12個io口就可以實現了,8位段碼加上4位位碼。程式如下:

dat equ 30h

scanled equ 34h

org 0000h

ljmp main

org 000bh

ljmp t0isr

org 0030h

main:

mov sp,#5fh

mov tmod,#01h

mov th0,#0f4h

mov tl0,#048h

mov p2,#00h

mov scanled,#0

mov 30h,#1

mov 31h,#2

mov 30h,#3

mov 31h,#4

setb ea

setb et0

setb tr0

sjmp $

;--------------------t0isr:

clr tr0

mov th0,#0f4h

mov tl0,#048h

setb tr0

mov dptr,#ledtab

mov r0,#dat

mov a,scanled

add a,r0

mov r0,a

mov a,scanled

jnz t001

mov p2,#01h

sjmp t0dis

t001:

dec a

jnz t002

mov p2,#02h

sjmp t0dis

t002:

dec a

jnz t003

mov p2,#04h

sjmp t0dis

t003:

mov p2,#08h

t0dis:

mov a,@r0

movc a,@a+dptr

cpl a

mov p0,a

inc scanled

mov a,scanled

anl a,#03h

mov scanled,a

pop acc

reti

;--------------------ledtab:

db 0c0h ;"0" 00h

db 0f9h ;"1" 01h

db 0a4h ;"2" 02h

db 0b0h ;"3" 03h

db 99h ;"4" 04h

db 92h ;"5" 05h

db 82h ;"6" 06h

db 0f8h ;"7" 07h

db 80h ;"8" 08h

db 90h ;"9" 09h

;--------------------end

7樓:軍初瑤

動態顯示,先顯示1,再顯示2,3,4輪流。

at89c51微控制器用4位數碼管做秒錶,要求用動態掃描做,組合語言

8樓:墨汁諾

4位數碼管動態掃描的電路,並程式設計實現6位數碼管同時顯示"135。

strt equ p1.0

clrr equ p1.1

org 00h

ajmp main

org 0bh

ajmp t0int0

org 30h

main:

mov sp,#60h

mov r4,#20

mov tmod,#01h

mov th0,#3ch;12m晶振時定時初值取#3cb0h,還可細調如 tl=#0b7h,可以更準

mov tl0,#0b0h

setb et0

setb ea

9樓:匿名使用者

重賞之下心有勇夫^_^

;彙編時鐘程式。4位共陽管。p0口段碼,p2.0~p2.3位碼。顯示毫秒和秒。三個按鍵一個控制時鐘開始走,一個控制暫停和繼續。。。一個按鍵清0

;12m晶振 2011 04 20 除錯完成strt equ p3.2

stp equ p3.3

clrr equ p3.5

org 00h

sjmp main

org 0bh

ajmp t0int

org 30h

main: mov  sp,#60h

mov r3,#10

mov r4,#20

mov tmod,#01h ;定時器t0工作方式1mov  th0,#0d8h ;10ms定時初值mov  tl0,#0f0h

setb et0

setb ea

k1: lcall disp

jb strt,k2

lcall disp

jnb strt,$-3

ajmp start

k2: lcall disp

jb stp,k3

lcall disp

jnb stp,$-3

ajmp ss

k3: lcall  disp

jb clrr,k1

lcall disp

jnb clrr,$-3

ajmp clear

start: setb tr0

clr f0  ;如無此條,暫停後,不是按繼續鍵,而是按開始鍵繼續走時,下次按暫停鍵時,不能暫停

ajmp k1

ss: cpl f0

jnb f0,start

stop: clr tr0

ajmp k2

clear: clr     tr0

mov a,#0

mov 20h,a

mov 21h,a

mov 22h,a

mov 23h,a

mov 24h,a

mov 25h,a

ajmp k3

disp: mov a,24h

mov b,#10

div ab

mov 20h,b  ;餘數(ms個位數)mov 21h,a  ;商(ms十位數)

mov a,25h

mov b,#10

div ab

mov 22h,b  ;餘數(s個位數)

mov 23h,a  ;商(s十位數)

mov a,20h  ;ms個位

acall seg7

mov p0,a

setb p2.4

acall dly

clr p2.4

mov a,21h  ;ms十位

acall seg7

mov p0,a

setb p2.5

acall dly

clr p2.5

mov a,22h  ;s個位

acall seg7

mov p0,a

clr p0.7

setb p2.6

acall dly

clr p2.6

mov a,23h  ;s十位

acall seg7

mov p0,a

setb p2.7

acall dly

clr p2.7

rett0int: mov  th0,#0d8hmov  tl0,#0f0h

inc 24h

mov a,24h

cjne a,#99,t0intr

mov 24h,#0

inc 25h

mov a,25h

cjne a,#60,t0intr

mov 25h,#0

t0intr: reti

dly: mov r7,#10

d1: mov r6,#50

djnz r6,$

djnz r7,d1

retseg7: inc a

movc a,@a+pc

retdb        0c0h;0

db        0f9h;1

db        0a4h;2

db        0b0h;3

db        099h;4

db        092h;5

db        082h;6

db        0f8h;7

db        080h;8

db        090h;9end

10樓:

呵呵,剛剛把工程檔案發給你了。

**的話,自己好好讀一讀,其實很簡單的。

用at89c51微控制器實現四位數碼管顯示1234 c語言 5

at89c51微控制器實現4*4撥號輸入,並用6位數碼管顯示,從右往左依次顯示,求大神c語言指教,如 50

求at89c51微控制器和adc0809 AD轉換器的連線方法

塞千山 把8031直接換成8951就行啦 管腳是一樣的 電路如圖 程式如下 include define uint unsigned int define uchar unsigned charuchar code leddata 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d...

STC89C51微控制器復位,51微控制器復位後各暫存器狀態是怎樣的

該微控制器正常工作時復位端電壓應保持低電平狀態,復位時給復位端加上一個短暫的高電平即可使微控制器程式復位。該復位電路的工作原理是,電源通過電解電容再通過電阻串聯到地,電容兩段並聯一按鍵開關,正常工作時電容隔斷電源電壓,微控制器復位端相當於通過電阻接地。因電路中無電流,所以復位端電壓為0伏。當執行過程...

用AT89C51微控制器的P2口控制Led的流水燈的C程式看不懂

緱淑蘭印醜 include void delay1ms unsigned intcount 延時函式,延遲時間為count 1ms 由佑平仇鸞 1000 0000右移ledindex位,延遲時間為count 1ms j 點亮一個led 把leddirection取反 延時函式 regx52 ledi...