導航:首頁 > 操作系統 > 單片機控制陽極

單片機控制陽極

發布時間:2023-01-01 14:39:16

㈠ 用51單片機怎麼驅動12V共陽數碼管

用ULN2803接數碼管的陰極。

將PNP三極體8550接入陽極。

--發射極接+12V,

--集電極接數碼管公共陽極,

--基極用I/O口進行控制。

但是,這時基極需要的控制電壓,超出了單片機I/O口的輸出能力。

所以,基極和I/O口之間,還應該接入一個NPN型的三極體,或者用ULN2803也可。

電路如下,本人已經使用多年,效果良好。

㈡ 單片機控制兩位共陽極數碼管顯示數字20

連接錯誤。在使用的單片機控制兩位共陽極數碼管時,連接錯誤會導致顯示數字20,提醒使用者進行更改。數碼管,也稱作輝光管,是一種可以顯示數字和其他信息的電子設備。玻璃管中包括一個金屬絲網製成的陽極和多個陰極。

㈢ 發光二極體的陰極或陽極引腳都可以和單片機引腳相連

當然都可以,接陽極時,單片機的I/O口是輸出驅動電流,高電平時亮;接陰極時,單片機的I/O口是灌入驅動電流,低電平時亮。根據需要選擇。但對於51單片機,一般I/O口屬於集電極輸出,所以灌電流可以比較大,比如可達35mA左右,而輸出(拉電流)電流比較小,一般小於10mA,所以通常使用陰極接單片機方式,可獲得較大電流和較高亮度。

㈣ 51單片機控制的共陽4*4*4光立方的程序

1、P0和P1連接16個LED陰極,一共64個燈。假設每豎著4個接一個管腳。
2、假設P0.3控制一豎排4個燈。先讓除第三層陽極其餘都輸出低電平,除P0.3之外所有陰極輸出高電平。這時除要控制的燈,其他都熄滅了。
3、讓第三層輸出高電平,P0.3輸出低電平。你要控制的燈就量了。

㈤ 單片機控制led燈的創新點是什麼

單片機控制led燈的創新點是,LED的陽極全部接到了正極(電源),當負極接到LED的陰極時就會發光,因為LED的陰極與單片機的P2口相接,如果你想點亮那一個LED就把單片機相應的引腳賦值為低電平。具體如下:1、LED基礎知識
LED是發光二極體的一種,它具有單向導電的特點,在51開發板上使用的是貼片式發光二極體,正向導電電壓在1.8-2.2v之間,工作時的電流在1-20mA。當電流在1-5mA之間變化時,肉眼可以觀測到亮度的變化,但是當電流在5-20mA之間變化時,亮度變化不太明顯。如果電流一直增大二極體可能會燒壞。其餘LED知識就不再進行敘述,其中LED原理圖如下圖所示。
LED原理圖

2、點亮第一個LED燈
由原理圖可知,LED的陽極全部接到了正極(電源),當負極接到LED的陰極時才會發光,因為LED的陰極與單片機的P2口相接,如果你想點亮那一個LED就把單片機相應的引腳賦值為低電平,具體程序如下:

#include "reg52.h" //此文件中定義了單片機的一些特殊功能寄存器

sbit led=P2^0; //將單片機的P2.0埠定義為led

void main()
{

while(1)
{
led=0;//P2.0埠設置為低電平
}
}
1
2
3
4
5
6
7
8
9
10
11
12
1
2
3
4
5
6
7
8
9
10
11
12
3、LED閃爍
如果想讓LED進行閃爍就要涉及到延時,針對單片機進行延時的方法有很多,在此向大家推薦一種比較簡單的程序助手—單片機小精靈,可以直接進行設置時間,並且生成相應的代碼。
將P2^0引腳的LED進行間隔一秒閃爍的程序如下:

#include "reg52.h" //此文件中定義了單片機的一些特殊功能寄存器
#include "intrins.h" //頭文件

sbit led=P2^0; //將單片機的P2.0埠定義為led

void delay1s() //延時1s,誤差 0us
{
unsigned char a,b,c;
for(c=46;c>0;c--)
for(b=152;b>0;b--)
for(a=70;a>0;a--);
_nop_(); //if Keil,require use intrins.h
}

void main()//主程序
{

while(1)
{
led=0;//P2.0埠設置為低電平
delay1s();//調用延時函數
led=1;//P2.0埠設置為低電平
delay1s();
}
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
為了使程序更好的進行表達,使用16進制進行表述,程序如下:

#include "reg52.h" //此文件中定義了單片機的一些特殊功能寄存器
#include "intrins.h" //頭文件

void delay1s() //延時1s,誤差 0us
{
unsigned char a,b,c;
for(c=46;c>0;c--)
for(b=152;b>0;b--)
for(a=70;a>0;a--);
_nop_(); //if Keil,require use intrins.h
}

void main()//主程序
{

while(1)
{
P2=0xFE;//P2.0埠設置為低電平
delay1s();//調用延時函數
P2=0xFF;//P2.0埠設置為低電平
delay1s();
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
上面是針對一個LED燈進行的設計,下面針對8個LED燈依次閃爍進行設計,具體程序如下:

#include "reg52.h" //此文件中定義了單片機的一些特殊功能寄存器
#include "intrins.h" //頭文件

void delay1s() //延時1s,誤差 0us
{
unsigned char a,b,c;
for(c=46;c>0;c--)
for(b=152;b>0;b--)
for(a=70;a>0;a--);
_nop_(); //if Keil,require use intrins.h
}

void main()//主程序
{

while(1)
{
P2=0xFE;//1111 1110
delay1s();//調用延時函數
P2=0xFD;//1111 1101
delay1s();
P2=0xFB;//1111 1011
delay1s();
P2=0xF7;//1111 0111
delay1s();
P2=0xEF;//1110 1111
delay1s();
P2=0xDF;//1101 1111
delay1s();
P2=0xBF;//1011 1111
delay1s();
P2=0x7F;//0111 1111
delay1s();
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
4、LED左右移動
上面進行描述的是利用延時並對P2口引腳進行賦值設計LED燈的閃爍,這樣程序較為繁雜,下面將利用「左移」和「右移」進行設計,crol(a,b),左循環,a是左移的值,b是左移的位數;cror(a,b),右循環,a是右移的值,b是右移的位數。包含在instrins.h庫函數中。具體程序如下:

#include "reg52.h" //此文件中定義了單片機的一些特殊功能寄存器
#include "intrins.h" //頭文件,包含延時(_nop_ )和函數循環

typedef unsigned int u16;//聲明新類型名
typedef unsigned char u8;//聲明新類型名

#define led P2//宏定義

void delay1s() //延時1s,誤差 0us
{
u8 a,b,c;
for(c=46;c>0;c--)
for(b=152;b>0;b--)
for(a=70;a>0;a--);
_nop_(); //if Keil,require use intrins.h
}

void main()//主程序
{
u8 i;//定義i的類型
led=0xFE;
delay1s() ;
while(1)
{
for(i=0;i<7;i++)//左移
{
led=_crol_(led,1);
delay1s() ;
}
for(i=0;i<7;i++)//右移
{
led=_cror_(led,1);
delay1s() ;
}

}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
5、總結
以上程序均進行了實驗驗證,完全正確。針對LED燈的控制,可以和按鍵進行聯合設計,實現更多的功能,後面會進行更新。對於沒有單片機開發板的小夥伴可以利用proteus模擬軟體進行設計。

㈥ 什麼是單片機LED數碼管共陽極和共陰極

LED數碼管指的是七段數碼管,有共陽極和共陰極之分;

(順便說 數碼管可不是因單片機而生,所以不是單片機的數碼管,是互不相乾的不同元器件)

共陽極就是把二極體的正極連接在一起,那麼共陰極就是把二極體負極連接在一起;

共陽極數碼管,要點亮LED就需要輸入端信號為低電平,反之共陰極就需要輸入高電平信號;

結果輸出的七段碼就有正反兩種了;

㈦ 在單片機中,怎樣判斷數碼管的陰陽極

1、檢查數碼管是共陰還是共陽,A表示共陽,K表示共陰。或者直接給公共端接高電平或者低電平,段碼端一部分接高電平,一部分接低電平,這樣數碼管亮的話看公共端接的是高還是低電平就可以判斷了。
2、看你接的限流電阻是不是太大,大於1K的值有可能不亮,最好不要接限流電阻。做實際的實物電路再加上470歐姆。
3、是不是接到51單片機的P0口了,接到P0口必須加上拉電阻,否則不會亮。
4、如果是程序控制數碼管,注意延時時間的長短,太短會看不到亮。

㈧ 單片機里數碼管的共陰極和共陽極是怎麼回事

數碼管是共陰極,意思是幾段數碼管的陰極都接在一起。這樣只要給陰極一個高電平,所有的段碼都不會亮,如果給低電平,則看對應陽極的電平高低,所以共陰極就是位選,只有它為低電平(選中這位)才能對該數碼管操作。

㈨ 單片機怎麼控制共陽極數碼管電路。

三極體是常用的基本的電子器件,你要知道它的工作原理,如果它的基極流過小電流,發射極到集電極就導通,可流過大電流,這就是電流放大作用

電流是從高電位到低電位流通的,對於圖中的三極體叫PNP管箭頭所指方向是電流正方向,它的一端接VCC,另一端接低電平時,兩端就有有正向電位差,基極就有電流流過,發射極就有更大電流過,驅動喇叭發聲如果單片機端也接高電平,兩端沒電位差(或電位差相反),電流就不能按箭頭方向流通,所以喇叭中也沒有電流流過象你的喇叭接法也不對,應該接在地和另一個電極之間

至於計算,要等你弄懂基本工作原理後再說

閱讀全文

與單片機控制陽極相關的資料

熱點內容
解壓做食物的小視頻 瀏覽:756
pdf怎麼單獨設置文件夾 瀏覽:472
業務邏輯程序員 瀏覽:657
addto新建文件夾什麼意思 瀏覽:160
有伺服器地址怎麼安裝軟體 瀏覽:659
安卓如何完全清除數據 瀏覽:690
安卓安卓證書怎麼信任 瀏覽:53
伺服器被攻擊如何解決 瀏覽:221
學霸變成程序員 瀏覽:881
c語言編譯錯誤fatalerror 瀏覽:441
ipv4內部伺服器地址怎麼分配 瀏覽:463
java線程安全的方法 瀏覽:950
重復命令畫梯形 瀏覽:164
在疫情就是命令 瀏覽:328
自己搭建一個什麼伺服器好玩 瀏覽:253
java基礎馬士兵 瀏覽:823
完美世界手游如何查看伺服器 瀏覽:859
光遇安卓與ios什麼時候互通 瀏覽:598
js如何運行時編譯 瀏覽:918
引力app在哪裡下載 瀏覽:609