導航:首頁 > 操作系統 > 單片機使數碼管顯示0099

單片機使數碼管顯示0099

發布時間:2022-11-01 21:06:46

❶ AVR單片機數碼管顯示00-99

這個和你的硬體環境有關,共陰共陽,使用串列還是並行顯示。還有avr單片機種類很多的,我用過8位的用過32位的。寫這類驅動軟體一定要了解硬體環境的。

一定要使用匯編么,C同樣可以完成,免費的AVR C編譯器可以使用 GCC。

❷ 用單片機控制兩個led數碼管採用靜態連接方式要求兩個數碼管顯示00-99,

程序是剛做的,沒測試過,你試試,能用再給分吧。P0口是位選,P2口段選。#includeunsignedintbittime=0;unsignedcharbitdisplay=0;unsignedcharmg=0,ms=0;unsignedcharTab[]={0xFC,0x60,0xDA,0xF2,0x66,0xB6,0xBE,0xE0,0xFE,0xF6,0xEE,0x3E,0x9C,0x7A,0x9E,0x8E,0x00};voidtimer0(void)interrupt1{TH0=0xF0;TL0=0x60;switch(bitdisplay){case0:P2=Tab[mg];P0=0xFE;break;case1:P2=Tab[ms];P0=0xFD;break;}bitdisplay++;bittime++;if(bitdisplay>=2)bitdisplay=0;if(bittime>=500){bittime=0;mg++;if(mg>9){mg=0;ms++;}if(ms>9)ms=0;}}voidmain(void){TMOD=0x01;TH0=0xF0;TL0=0x60;TR0=1;EA=1;while(1);}

❸ 求單片機採用外部中斷0和1控制數碼管進行00到99的計數c語言程序

程序是剛做的,沒測試過,你試試,能用再給分吧。P0口是位選,P2口段選。
#include<reg52.h>
unsigned
int
bittime=0;
unsigned
char
bitdisplay
=
0;
unsigned
char
mg=0,ms=0;
unsigned
char
Tab[]={0xFC,0x60,0xDA,0xF2,0x66,0xB6,0xBE,0xE0,0xFE,
0xF6,0xEE,0x3E,0x9C,0x7A,0x9E,0x8E,0x00};
void
timer0(void)
interrupt
1
{
TH0=0xF0;
TL0=0x60;
switch(bitdisplay)
{
case
0:P2=Tab[mg];P0=0xFE;break;
case
1:P2=Tab[ms];P0=0xFD;break;
}
bitdisplay++;
bittime++;
if(bitdisplay>=2)
bitdisplay=0;
if(bittime>=500)
{
bittime=0;
mg++;
if(mg>9)
{mg=0;ms++;}
if(ms>9)
ms=0;
}
}
void
main(void)
{
TMOD=0x01;
TH0=0xF0;
TL0=0x60;
TR0=1;
EA=1;
while(1);
}

❹ 單片機控制四位數碼管顯示0000-9999

首先告訴你,AT89C51已基本上沒人用了,代替它的是AT89S51。
共陽數碼管,OK,單片機設計多數使用共陽數碼管。
單片機控制四位數碼管顯示0000-9999
我給你提供一個每秒自動加1的四位數碼管循環顯示0000~9999的程序。
D0 equ 0c0h ; 11000000B
D1 equ 0F9h ; 11111001B
D2 equ 0A4h ; 10100100B
D3 equ 0B0h ; 10110000B
D4 equ 99h ; 10011001B
D5 equ 92h ; 10010010B
D6 equ 82h ; 10000010B
D7 equ 0F8h ; 11111000B
D8 equ 80h ; 10000000B
D9 equ 90h ; 10010000B

org 0000h
jmp start
org 0030h
start:
mov dptr,#data0
mov r2,#0
mov r3,#0
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
next: call display
inc r2
cjne r2,#100,next
mov r2,#0
inc r3
cjne r3,#100,next
mov r3,#0
jmp next

display:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
mov r4,#250
lpr4: mov p2,#0ffh
mov a,r3
mov b,#10
div ab
movc a,@a+dptr
mov p0,a
clr p2.0
call t1ms

mov p2,#0ffh
mov a,b
movc a,@a+dptr
mov p0,a
clr p2.1
call t1ms

mov p2,#0ffh
mov a,r2
mov b,#10
div ab
movc a,@a+dptr
mov p0,a
clr p2.2
call t1ms

mov p2,#0ffh
mov a,b
movc a,@a+dptr
mov p0,a
clr p2.3
call t1ms
djnz r4,lpr4
ret
data0: db d0,d1,d2,d3,d4,d5,d6,d7,d8,d9
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

t1ms:
mov r7,#250
djnz r7,$
mov r7,#250
djnz r7,$
ret

jmp $
end

❺ 單片機用匯編寫兩個數碼管顯示0到99循環的程序

1、新建項目,做好准備。

❻ 單片機數碼管顯示0到9

#include<reg51.h>

sbitk1=P1^0;

#define uint16 unsigned int

#define uchar unsigned char

uchar code shuzu[ ]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

void delay(){

uint16 i=1000;

while(i--);}

void main()

{

uchar n ;

P2=0xfe;

P1=0xff;

while(1)

{

if(k1==0){

if(n>=9) n=0;

else n++;

P0=shuzu[n];

while(!k1);

delay();

while(!k1);

}

}

}

(6)單片機使數碼管顯示0099擴展閱讀:

51單片機的功能特性

1,可以模擬63K程序空間,接近64K 的16位地址空間;

2,可以模擬64Kxdata 空間,全部64K 的16位地址空間;

3,可以真實模擬全部32 條IO腳;

4,完全兼容keilC51 UV2 調試環境,可以通過UV2 環境進行單步,斷點, 全速等操作;

5,可以使用C51語言或者ASM匯編語言進行調試 ;

6,可以非常方便地進行所有變數觀察,包括滑鼠取值觀察,即滑鼠放在某 變數上就會立即顯示出它此的值;

7,可選 使用用戶晶振,支持0-40MHZ晶振頻率;

8,片上帶有768位元組的xdata,您可以在模擬時選 使用他們,進行xdata 的模擬;

9,可以模擬雙DPTR 指針;

10,可以模擬去除ALE 信號輸出. ;

11,自適應300-38400bps 的所有波特率通訊;

12,體積非常細小,非常方便插入到用戶板中.插入時緊貼用戶板,沒有連接電纜,這樣可以有效地減少運行中的干擾,避免模擬時出現莫名其妙的故障;

13,模擬插針採用優質鍍金插針,可以有效地防止日久生銹,選擇優質園腳IC插座,保護模擬插針,同時不會損壞目標板上的插座. ;

14,模擬時監控和用戶代碼分離,不可能產生不能模擬的軟故障;

15,RS-232介面不計成本採用MAX202集成電路,串列通訊穩定可靠,絕非一般三極體的簡易電路可比。

❼ 單片機 數碼管動態顯示 0-99

你說的總是先亮第一個,是哪一個??有個位,還是十位?還有你說的一秒是指數字增一,延遲一秒?如果是,那你在MAIN WHILE中加個delayms延遲。具體是延遲多少,就要看你的晶振了。

❽ 51單片機數碼管顯示0-99的問題

那個lalala有什麼用?看程序是在P0口接一個共陽數碼管。那同樣在P2口再接一個數碼管。這樣,P0口的數碼管顯示十位數,P2口的數碼管顯示個位數。或在P2,P3口各接一個數碼管。見下圖。


這種接法屬於靜態顯示電路。這個學會後,再練習動態顯示電路。

❾ 求用單片機驅動數碼二級管的C語言程序,要求二級管顯示00~99

兩位數碼管顯示00~99,無需採用數碼管掃描,通常採用靜態顯示。

給你提供一個兩位數碼管00~99循環加法計數的CC語言程序。

程序中,採用了軟體延時的方法,每半秒自動加1。

#include<reg52.h>

unsignedcharcount=0;

unsignedcharcodetable[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};//段碼

voiddelay500ms(); //延時子程序聲明

voiddisplay(unsignedcharX); //顯示子程序聲明

voidmain()

{

while(1)

{

delay500ms();

count++;

if(count>=100)count=0;

display(count);

}

}

voiddelay500ms()

{

unsignedchari,j,k;

for(i=5;i>0;i--)

for(j=200;j>0;j--)

for(k=248;k>0;k--);

}

voiddisplay(unsignedcharX)

{

P0=table[X/10];

P2=table[X%10];

}

閱讀全文

與單片機使數碼管顯示0099相關的資料

熱點內容
怎麼批量有順序的命名文件夾 瀏覽:209
杭州程序員健身 瀏覽:17
dvd光碟存儲漢子演算法 瀏覽:758
蘋果郵件無法連接伺服器地址 瀏覽:963
phpffmpeg轉碼 瀏覽:672
長沙好玩的解壓項目 瀏覽:145
專屬學情分析報告是什麼app 瀏覽:564
php工程部署 瀏覽:833
android全屏透明 瀏覽:737
阿里雲伺服器已開通怎麼辦 瀏覽:803
光遇為什麼登錄時伺服器已滿 瀏覽:302
PDF分析 瀏覽:486
h3c光纖全工半全工設置命令 瀏覽:143
公司法pdf下載 瀏覽:383
linuxmarkdown 瀏覽:350
華為手機怎麼多選文件夾 瀏覽:683
如何取消命令方塊指令 瀏覽:350
風翼app為什麼進不去了 瀏覽:779
im4java壓縮圖片 瀏覽:362
數據查詢網站源碼 瀏覽:151