導航:首頁 > 操作系統 > 單片機接三個四段數碼管

單片機接三個四段數碼管

發布時間:2022-09-06 19:26:33

『壹』 如何利用單片機讓4位數碼管顯示

程序如下(用的是STC89C52晶元):

#include<reg52.h>//52系列單片機頭文件

#defineucharunsignedchar

#defineuintunsignedint

uintx,y;

ucharcodetable[]={

0x3f,0x06,0x5b,0x4f,

0x66,0x6d,0x7d,0x07,

0x7f,0x6f,0x77,0x7c,

0x39,0x5e,0x79,0x71};//共陰極數碼管編碼

voiddisplay(uchar,uchar,uchar,uchar);//聲明子函數

voiddelay(int);//聲明子函數

voidmain()

{

while(1)

{

display(1,2,3,4);//主程序始終調用數碼管顯示子程序

}

}

voiddisplay(uchara,ucharb,ucharc,uchard)

{

P2=0xef;

P0=table[a];//給第一個數碼管送"a"

delay(1);//延時1ms

P2=0xdf;

P0=table[b];//給第二個數碼管送"b"

delay(1);//延時1ms

P2=0xbf;

P0=table[c];//給第三個數碼管送"c"

delay(1);//延時1ms

P2=0x7f;

P0=table[d];//給第三個數碼管送"d"

delay(1);//延時1ms

}

voiddelay(uintz)//延時子函數

{

uintx,y;

for(x=z;x>0;x--)

for(y=110;y>0;y--);

}

(1)單片機接三個四段數碼管擴展閱讀

led數碼管是由多個發光二極體封裝在一起組成「8」字型的器件,引線已在內部連接完成,只需引出它們的各個筆劃,公共電極。led數碼管常用段數一般為7段有的另加一個小數點,還有一種是類似於3位「+1」型。

位數有半位,1,2,3,4,5,6,8,10位等等,led數碼管根據LED的接法不同分為共陰和共陽兩類,了解LED的這些特性,對編程是很重要的,因為不同類型的數碼管,除了它們的硬體電路有差異外,編程方法也是不同的。

『貳』 單片機中LED顯示電路用三極體驅動電路怎麼連接啊四個數碼管。

//單片機中LED顯示電路用三極體驅動電路四個數碼管。可以參考一下

#include<reg52.h>

sbit led0=P3^2;

sbit led1=P3^3;

sbit led2=P3^4;

sbit led3=P3^5;

sbit ledd=P3^7;

unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};

unsigned char g,s,b,d,a;

unsigned int num;

void delay(unsigned char x)

{

unsigned char i,j;

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

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

}

void display()

{

P1=table[d];

led3=0;

delay(5);

led3=1;

P1=table[b];

led2=0;

delay(5);

led2=1;

P1=table[s];

led1=0;

delay(5);

led1=1;

P1=table[g];

led0=0;

delay(5);

led0=1;

}

void ont()

{

num=0;

TMOD=0x01;

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

EA=1;

ET0=1;

TR0=1;

}

void main()

{

ont();

while(1)

{

if(a==20)

{

a=0;

ledd=~ledd;

num++;

d=num/1000;

b=num%1000/100;

s=num%100/10;

g=num%10;

}

display();

if(num==10000)

{

num=0;

}

} }

void time_0() interrupt 1

{

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

a++;

}

『叄』 AT89C51單片機怎麼用匯編語言讓4個數碼管同時顯示1234

1、首先我們先打開keil。

『肆』 求四位共陽數碼管接法,接在單片機上。。。

不知道您使用的是什麼單片機,告訴你使用89C51的接法。

用200歐姆的電阻串聯在數碼管的筆畫引腳上然後直接接在P0引腳就可以了,共陽極引腳直接接5V,對P0寫0就可以點亮了,而且電流不至於燒毀數碼管。

動態顯示 需要在共陽極上接PNP三極體,三極體基極串聯1K電阻接單片機口,低電平有效。

希望我的回答對您有幫助。

『伍』 c51單片機如何連接4個數碼管 來進行計數 要求用T0中斷來編程 求大蝦們支招

#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
uchar temp,aa,miao,fen,shi;
sbit m=P3^0;
sbit n=P3^1;
uchar code table[]={ //數碼管編碼表
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f};
void display(uchar miao,uchar fen,uchar shi);
void delay(uint z);
void init();
void main()
{
init();//初始化子程序
miao=0;
shi=0;
fen=0;
while(1)
{
display(miao,fen,shi);
}
}void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}void display(uchar miao,uchar fen,uchar shi) // 顯示子函數
{
P0=0x00;
P0=table[miao%10];
P2=0x7f;
delay(1);

P0=0x00;
P0=table[miao/10];
P2=0xbf;
delay(1); P0=0x00;
P0=table[fen%10];
P2=0xdf;
delay(1);

P0=0x00;
P0=table[fen/10];
P2=0xef;
delay(1);

P0=0x00;
P0=table[shi%10];
P2=0xf7;
delay(1); P0=0x00;
P0=table[shi/10];
P2=0xfb;
delay(1);
}void init() // 初始化子函數
{
temp=0;
TMOD=0x01;
TH0=(65536-45872)/256;
TL0=(65536-45872)%256; //定時器初值,定時50ms(12M晶振),由於考慮MCU指令處理時間,此處賦初值位45872
EA=1;
ET0=1;
TR0=1;
}void timer0() interrupt 1 //定時計數器中斷
{
TH0=(65536-45872)/256;
TL0=(65536-45872)%256; 、
aa++;
if(aa==20) //中斷2次位1S,秒加1
{
miao++;
aa=0;
if(miao==60)
{
fen++; // 滿60S, 分加1,秒清0
miao=0;
if(fen==60)
{
shi++; // 小時加1
fen=0;
if(shi==24) shi=0; //小時滿
}
}
}
if(m==0) // 調分
{
delay(2);
if(m==0) fen++;
if(fen==60) fen=0;
delay(2);
while(!m);
}
if(n==0) // 調小時
{
delay(2);
if(n==0) shi++;
if(shi==24) shi=0;
delay(2);
while(!n);
}
}

『陸』 4位或3位數碼管顯示,用單片機如何實現

4位或3位數碼管顯示,用單片機如何實現?這是單片機最基本的最典型的應用了,不論模擬還是實物,都離不開數碼管顯示呀,別說3,4位,再多也沒問題,太簡單太容易了。
下圖是4位數碼管顯示電路。

『柒』 單片機與數碼管的連接

如果22位數碼管共用7段來驅動,顯示效果很差,太暗!而且單片機直接驅動運行起來也費力。你可以計算一下就知道了:如果想顯示沒有閃爍感,顯示刷新周期就要超過50HZ,也就是每20mS這22位數碼管都要顯示一次,那麼每個數碼管每次只能顯示20mS÷22=0.91mS,而且單片機在這么短的時間內就沒有太多的時間處理其它的任務了。
要解決這個問題,你必須用專用的LED顯示驅動IC,而且要保證每個數碼管顯示的占空比要超過1/8才會有足夠的亮度,如果是室外使用最好是1/4或1/3。
如果占空比選用1/6,那麼你要在同一時間每次點亮22/6(4)個數碼管,你可以看看TM1629A、B、C、D顯示驅動IC,可以用2塊驅動IC,每個IC同時點亮2個數碼管,每個IC驅動11個數碼管。
用這種IC比用74系列的晶元的好處是:只有在需要改變顯示內容時,單片機才發送數據到驅動IC,平時不必發送數據,這樣MCU就可以把時間用於處理其它任務了。
具體的電路你看IC資料就行了。

『捌』 四位數碼管連接如何連接單片機

1、最開始,先打開keil。

『玖』 用單片機的IO口接四位數碼管,需要多大的排阻。

用單片機的IO口接四位數碼管,需要多大的排阻。
這看似簡單的問題,還真需要啰嗦幾句才行。
1、LED數碼管有普通亮度和高亮度之分,簡單說就是發光效率不同。
2、出於成本和實用性考慮,單片機驅動LED數碼管沒有採用恆流驅動。
3、單片機驅動LED數碼管有靜態和動態之分。
4、電源電壓不同,同樣的排阻阻值,LED數碼管亮度不同。
上面這四種情況一組合,一句半句說不清。
如果不介意亮度問題,你這個問題好回答,用470歐姆到1K排阻都行。
稍微較點真兒,最好計算一下,每個段的平均電流3-5毫安。
數碼管常用型號基本是0.56英寸的(用量大就便宜)。單片機IO如果推挽輸出能力,共陰極還是共陽極都一樣,沒有推挽輸出用共陽極有利於簡化電路設計。

型號各廠家規定不一樣,買數碼管基本都淘寶吧,上面減少很清楚。

『拾』 4位數碼管怎麼與單片機連接

數碼管封裝很多,引腳排列
都不一樣,沒法告訴你接線,你只要找出段和位就可以了,七個段碼和小數點可以通過74hc595直接連接到單片機口上,或者還有cd4511等的bcd解碼晶元,共陰或共陽都是可以通過萬用表測出來的

閱讀全文

與單片機接三個四段數碼管相關的資料

熱點內容
python拼音轉換文字 瀏覽:562
動畫遺傳演算法 瀏覽:63
php如何解析xml文件 瀏覽:702
如何改變appstore的語言 瀏覽:462
javahtmlxml 瀏覽:34
單片機啟動文件 瀏覽:811
橙app如何開啟聊天 瀏覽:899
訪問伺服器公網地址 瀏覽:666
pdf列印底色去掉 瀏覽:463
java快遞介面 瀏覽:397
哪個app可以教新爸爸 瀏覽:210
如何查看伺服器系統版本信息 瀏覽:524
成都市土地出讓金演算法 瀏覽:703
鋼筋加密標記 瀏覽:578
ps中擴展功能在文件夾的什麼位置 瀏覽:905
雙極壓縮機為什麼要先高壓 瀏覽:529
蘋果手機伺服器填什麼 瀏覽:833
android移動動畫效果 瀏覽:693
電子和伺服器是什麼意思 瀏覽:694
phpurl中文亂碼問題 瀏覽:894