51的微控制器中,P0口作為段選,而P2口作為位選,需要挺多數碼管顯示的。不夠用,如何擴充套件

時間 2021-09-01 18:47:16

1樓:樑絲祺

親,只能選用擴充套件方案。但138太麻煩了。建議你選用74154,是一個4-16線的譯碼器。

這是他的資料手冊。你的數碼管一共都加起來是12位,也就是只要能提供出去12個訊號就行了。

74154的4個輸入端a0a1a2a3可以分別連線微控制器的32腳,21腳,22腳,23腳,但你原來和第一個數碼管連線的微控制器的線要去掉,就是原來的21 23 24的連線要去掉。然後y0到y11分別接一個位選,

ok,就這樣就搞定了。另外兩個使能端e0和e1直接下拉到地。推薦你沒事了多逛逛微控制器吧。

哥們多給點分吧。實在是急用啊~~~~~~~

2樓:匿名使用者

位選使用譯碼器就可以了,兩個74ls138用6位,或者cd4514用4位,io就可以輸出控制16個數碼管

3樓:

一般通過加鎖存器,或者加個串轉並的晶片,就是用一兩個io口取代多個io,你查查相關資料!

利用51微控制器,4個數碼管設計一個計時器,要求在數碼管上顯示的資料從0開始每1秒鐘加1。

4樓:匿名使用者

我正好也寫了那麼一個程式,我說一下自己的思路吧,我也剛學。

先做一個段選表和位選表,用兩個陣列儲存,如果有八個燈,位選就有8個。然後再定義一個陣列

digit[8] 裡面儲存 個位十位百位等數位。然後再定時器中斷函式裡,用一個switch語句,分別表明位選在01234567的情況。 我把它貼出來吧。

switch (num_we) //控制每一次位選的數碼管顯示

上面ledcode 是段選表 wecode 是位選表 。 num_we是位選標誌,表示選到了第幾個數碼管。

然後在除錯差不多掃描幾回為1秒,每到了一定的回數,個位數字就+1,個位數字到10,個位清零,十位+1,,以此類推。

5樓:絕種好風

那得看你的數碼管是怎麼接的,其實重要的是51微控制器定時器的使用,兩個,t0和t1,隨便選一個,就行了,只是提醒下,

運用51微控制器實現2位8段數碼管顯示00-99,數碼管的段選擇資料由p0口控制,位選擇由p2口控制

6樓:匿名使用者

#include

int i,j;

void zhongduanini(void)void time_1s (void) interrupt 1}char table[10]=;

void main(void)}

7樓:販辛穩硦浦皚

絕地求生 (戰術競技遊戲) 編輯

《絕地求生》(pubg) 是一款戰術競技型射擊類沙盒遊戲。 [1] 。

該遊戲中,玩家需要在遊戲地圖上收集各種資源,並在不斷縮小的安全區域內對抗其他玩家,讓自己生存到最後。 [2] 遊戲《絕地求生》除獲得g-star最高獎項**獎以及其他五項大獎 [3] ,還打破了7項吉尼斯紀錄。

2023年8月9日,《絕地求生》官方宣佈,將開啟「百日行動」,進行持續數月的自查運動,為玩家提供一個更好的遊戲體驗 [4] 。

8樓:戸佐健一

隨著幼兒教育的不斷改革,我們教研活動的不斷研究、實踐,認為在大班集體教學活動中,教師的迴應對幼兒有很重要的目的和作用:一是給予肯定,鼓勵幼兒再次激發幼兒回答問題的興趣;二是啟發引導,提供幼兒一個思考的方向;三是反問、追問、遞進問,引導幼兒發散思維,從多角度思考問題;四是理答,

幫助幼兒及時進行梳理,突出重點,提升幼兒經驗,與目標掛鉤。

9樓:

2023年是中國的電競大年,ig戰隊經過了激烈的鏖戰拿下了英雄聯盟s8的冠軍,也打破了lpl賽區一直沒有s賽冠軍的尷尬,再加上rng戰隊拿下的msi季中賽冠軍,還有亞運會英雄聯盟比賽的冠軍,整整一年中國的戰隊完成了大滿貫的神蹟

10樓:匿名使用者

作用51微控制器原理實現夢想紅東小時哦小時90數碼寶貝哦子控制

我後嗯哼友夜市迪恩

當然 所以行為他是嗯喜

11樓:tiu丶小銀子

運用51微控制器實現2位8段數碼管顯示00-99,數碼管的段選擇資料由p0口控制,位選擇由p2口控制運用51微控制器實現2位8段數碼管顯示00-99,數碼管的段選擇資料由p0口控制,位選擇由p2口控制運用51微控制器實現2位8段數碼管顯示00-99,數碼管的段選擇資料由p0口控制,位選擇由p2口控制運用51微控制器實現2位8段數碼管顯示00-99,數碼管的段選擇資料由p0口控制,位選擇由p2口控制

12樓:發過火v吃v哈哈

寫日記額吃遍天下幾個陳科睿v過時不候過巨大;更多gdvygvhtvgntdntdk發酒瘋打不通如果 福特付紅哦開國大典多大出差耿耿於懷基本不吃得呃呃吃vv近近景近景快快快吃的

13樓:匿名使用者

有一天我閒著沒事就讓言和講個笑話 那貨張嘴還沒說話自己開始笑 哈哈哈哈哈哈哈哈 真不是我笑點太低,我的笑話太牛b 把它講完深呼吸,回頭看天依 哈哈哈哈哈哈哈哈 後來我們翻譯了一下 它變成了日本笑話 講給我的朋友們 再聽著他們笑 哈哈哈哈哈哈哈哈 大家聽完這個笑話 決定把它講給朋友

怎樣用51微控制器實現累加計時和倒計時,並用六個共陰極數碼管顯示出來。用兩個按鍵分別切換。

14樓:匿名使用者

剛開始上電時, system_mode不是1 也不是2,不知你初始化時是否給它賦值?另外你的按鍵檢測程式沒加入到迴圈程式中,剛上電時若沒有按鍵按下,則很快跳過兩個按鍵檢測語句,然後進入迴圈顯示程式中,這是一個死迴圈,只有中斷才可打斷其執行,所以再按什麼鍵也沒反應了,建議把按鍵檢測放入顯示迴圈中,它對顯示效果不會有什麼影響,或在初始化後加一個迴圈,若兩個按鍵都沒有按下,一直檢測按鍵

微控制器中如何用p0一個口同時控制數碼管的位選與段選?

15樓:九頂冒陽山

一個口8位可能不夠既控制數碼管的位選和段選,需要增加驅動晶片,例如hc59等

16樓:匿名使用者

是這樣的,因為p0口是資料/地址複用口,所以在實現兩個功能時,需要373來鎖存地址,然後輸出資料(幾乎同時),根據你的意思,應該是先鎖存地址,來選定數碼管,在輸出段碼,輸出相應的數字

17樓:匿名使用者

373有鎖存功能來,也就是說源能把輸入的資料暫時儲存在裡面而不輸出。p0先輸出位選訊號到一個373並且鎖存,再輸出段選訊號到另一個373且鎖存。這兩個過程中,只鎖存其中一個373,另一個雖然收到了資料,但不鎖存也就不影響輸出了。

18樓:匿名使用者

不會,只是你做成相同時間下同時輸出才會有那種問題。你採用兩片373,一片控制位選,一片控制段選。然後你才找微控制器另一i/o口的任意兩腳,分別接入兩373的使能段。

這樣你就能做到分開控制,也就能亮起來。

19樓:匿名使用者

p0口可以作分時複用口,外接373鎖存器,通過程式,先輸出位選地址作為片選訊號,再送出七段碼資料

20樓:匿名使用者

微控制器的執行速度很快,所以之間重新整理的頻率也很快,人眼看到是有延時的,只要達到一定速度,就可以看上去兩個數碼管都被點亮

21樓:匿名使用者

為什麼要這樣?既增加硬體,又增加軟體。硬體要空間,軟體要時間。

微控制器數碼管 段選 位選 是什麼?

22樓:天天奕想

位選,就是選擇你想要點亮哪個數碼管;

段選,就是選擇你想要點亮哪個數碼管的哪個一段。

如何利用微控制器讓4位數碼管顯示?

23樓:沈偉棟

程式如下(用的是stc89c52晶片):

#include//52系列微控制器標頭檔案

#define uchar unsigned char

#define uint unsigned int

uint x,y;

uchar code table=;//共陰極數碼管編碼

void display(uchar,uchar,uchar,uchar);//宣告子函式

void delay(int);//宣告子函式

void main()

}void display(uchar a,uchar b,uchar c,uchar d)

void delay(uint z)//延時子函式

擴充套件資料

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

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

24樓:匿名使用者

;晶振:12mhz

;p2.0、p2.1、p2.2、p2.3接共陽數碼管的選通端,p0口接資料輸出端

cs0 bit p2.0 ;個位位選

cs1 bit p2.1 ;十位位選

cs2 bit p2.2 ;百位位選

cs3 bit p2.3 ;千位位選

dsw equ 30h ;位選計數

dsb0 equ 31h ;顯示緩衝單元個位dsb1 equ 32h ;顯示緩衝單元十位dsb2 equ 33h ;顯示緩衝單元百位dsb3 equ 34h ;顯示緩衝單元千位org 0000h

ljmp main

org 0030h

mov dsb0,#04h ;顯緩="1234"

mov dsb1,#03h

mov dsb2,#02h

mov dsb3,#01h

mov tmod,#01h ;方式1定時

mov th0,#0f0h ;4ms定時

mov tl0,#60h

setb tr0

mloop: jnb tf0,$ ;4ms到?

clr tf0 ;清定時標誌

mov th0,#0f0h ;4ms定時重設mov tl0,#60h

lcall disp

ajmp mloop

;====4位數碼管掃描子程式====

disp: orl p2,#1fh ;關閉數碼顯示器mov a,dsw ;根據掃描迴圈變數轉移anl a,#07h

rl a

mov dptr,#dstab

jmp @a+dptr

dstab: ajmp dis0

ajmp dis1

ajmp dis2

ajmp dis3

ajmp dis0 ;冗餘

ajmp dis0

ajmp dis0

ajmp dis0

dis0: mov a,dsb0 ;掃描個位數碼管anl a,#0fh

mov dptr,#led7 ;查顯緩個位值的七段碼錶movc a,@a+dptr

mov p0,a ;七段碼送p0口

clr cs0 ;點亮個位數碼管

mov dsw,#01h ;掃描指標指向下十位retdis1: mov a,dsb1 ;掃描十位數碼管anl a,#0fh

mov dptr,#led7

movc a,@a+dptr

mov p0,a

clr cs1

mov dsw,#02h

retdis2: mov a,dsb2 ;掃描百位數碼管anl a,#0fh

mov dptr,#led7

movc a,@a+dptr

mov p0,a

clr cs2

mov dsw,#03h

retdis3: mov a,dsb3 ;掃描千位數碼管anl a,#0fh

mov dptr,#led7

movc a,@a+dptr

mov p0,a

clr cs3

mov dsw,#00h

ret;====led七段共陽段碼錶====led7: db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h

db 80h,90h,88h,83h,86h,0a1h,86h,8eh

end希望可以幫助你。

51微控制器的P0口如何接上拉電阻

只有第一種電路是正確的。可以使用 排電阻 其公共端接vcc。電阻值可以選用4.7k。好像都一樣啊?51微控制器接上拉,就是其p0口的驅動太小,為的是加大驅動,只要把p0口的8個位上加10k 20k的電阻接到電源就可以了,看著圖裡都是這種用法啊,排阻一樣,只是把電源共接了,你再看下書是不是我說的這樣 ...

微控制器p0口預設高電平,預設p0口都是1嗎?按鍵按下p0口變成

微控制器復位後,所有io口都為 1 所以p0口的值當然是ffh,都為高電平。至於按鍵按下p0口是否變成0,要看原理圖。 苗涵瑤貳聖 因為傳統的51微控制器的p0口是漏極開路,內部無上拉電阻,所以po口預設的是高阻態!一般p0口做普通io口用時要加上拉電阻,上拉電阻的大小1k 10k不等 微控制器p0...

51微控制器什麼時候P0口要接上拉電阻

微控制器的i o口輸出狀態有三種 1 低電平0 2 高電平1 3 懸空。微控制器如何控制i o輸出呢?可以簡單理解為 1 當需要輸出低電平0時,微控制器內部通過控制npn三極體基極,使三極體導通,三極體c極 i o輸出端 和三極體e極 gnd端 導通,所以此時輸出為低電平。2 如果內部有上拉電阻,也...