51微控制器怎麼用IO口擴充套件成輸入口

2021-09-06 09:20:50 字數 4647 閱讀 5850

1樓:匿名使用者

分輸入和輸出:

輸入你可以選擇74ls244.這個是8通道快取器。

輸出你可以選擇鎖存器74ls373.8位下降沿鎖存。

然後你把5個輸入或者輸出口都接在某一個口,比如p1.這樣佔用8位。

還剩餘2位。你可以用來控制4個這樣的裝置。這2位的組合分別是00,控制一個8位裝置。01控制一個8位裝置,10控制一個8位裝置,11控制一個8位裝置。

所以10位io口最多擴充套件成32個輸入輸出口。

就上面的方法,做輸入或者輸出都可以。

但是個人意見做不了40個。如果要做40個,需要11個io口。這樣最多可以控制8×8=64個io口。

2樓:生活如歌

其實不用十個,只用兩個就可以。用txd/rxd兩個引腳通過微控制器串列埠工作方式0,外部連線5個74ls165(併入串出移位暫存器)。這樣就擴充套件出來5*8=40個外部輸入口。

優點:佔用微控制器i/o口少,程式設計簡單。

缺點:響應速度慢。

3樓:匿名使用者

5×cd4021,或者5×74ls165.....等等,只需要佔用2-3條口線.

微控制器輸入io口擴充套件

4樓:匿名使用者

微控制器的輸入io口擴充套件可以通過以下方法來實現:

1、通過並行擴充套件晶片,比如8255 ,8155等。

2、通過鎖存器或緩衝器來擴充套件,比如74ls273,74ls373,74ls244,74ls245等等

3、通過串列埠-並口來擴充套件,比如74hc595,74hc164等等。

4、通過譯碼器來擴充套件,比如74hc138,74hc154等等。

5樓:匿名使用者

直接用一塊 > 32個io口 就不需要擴充套件,硬體又簡單,40 腳的微控制器 可以有 36 個 io 口。

6樓:其雪存

開來你需要換微控制器了,換引腳多的微控制器不就可以了麼?為什麼非要加擴充套件晶片呢?加擴充套件晶片成本估計還要比換個微控制器還要貴

7樓:

1.同意樓上的說法,最好是換一個多i/o口的微控制器,現在微控制器也不貴,就換一個80個或100個i/o口的微控制器,比擴充套件8255之類的簡單多了,現在擴充套件都沒有用8255的,都停產了,有的地方買都買不到。

2.還有個方案就是再用一片微控制器擴充套件,兩個微控制器用串列埠或iic之類的協議進行通訊,一個專門管輸入,另一個專門管輸出,不過肯定沒有一個微控制器方便。

微控制器io口是怎樣擴充套件的

8樓:4終

1、首先可以使用38譯碼器進行拓展,三個引腳的二進位制輸入可變成8個引腳的分別輸出。

2、然後附74hc138晶片真值表。

3、還可以使用鎖存器拓展:74hc573,顧名思義,就是可以通過控制le引腳鎖住輸入io的點平,保持輸出不變,如下圖。

4、還可以用序列輸入並行輸出的移位快取器74hc595進行拓展。

5、真值表如圖,這樣就完成了。

9樓:匿名使用者

在微控制器的i/o口不夠的情況下,經常會需要擴充套件的設計,有兩種方法,一是用並行輸入/並行輸出介面晶片擴充套件,如資料鎖存器:74hc273,74hc373,74hc374,74hc377,74hc573等很多的,可以擴充套件多片。二是用序列輸入/並行輸出的晶片擴充套件,如74ls595,74ls594,74ls596,74ls599等等,也很多的。

這要根據需要選擇哪種擴充套件方式和晶片。

10樓:創作者

除了樓上兩位的方法,還有利用微控制器片內ad的方法。具體原理是,串接三個電阻,r1,r2,r3,r1的另一端接上vcc。r1和r2節點n1,r2和r3節點n2,r3懸空節點n3。

n1,n2,n3各接按鍵一枚到gnd,微控制器ad輸入端接節點n1,由於按下三個按鍵時ad得到的值會不同,因此得到了三個按鍵的值。據此,增加串接電阻的量,加上ad的速度和精度夠高,就可以用一個ad得到n多的輸入口,當然還是功能不全的輸入口。注意不是io口只是輸入口。

11樓:

用573鎖存器或者138譯碼器擴充套件

如何將51微控制器的io口設定為輸入口?

12樓:做而論道

基本的 51 微控制器,不需要進行設定,僅僅記住:在輸入前,要輸出1。

後來有許多相容 51 的微控制器,介面功能增強了,才需要設定。

可以設定成:。。。。。。細節,還是看說明書吧。

13樓:

51微控制器的io口是雙向的

如果執行使用讀指令就是輸入口,執行寫指令就是輸出口

14樓:

在程式中進行設定哈,因為微控制器的io口是複用的,至於要用做輸入還是輸出,完全由你程式設計來決定了

15樓:liht1634電氣資料庫

mov p1,#0feh;那麼p1.7-p1.1就是輸入口,p1.0作為輸出口。

16樓:匿名使用者

不需要設定,只需要定義好 p1口後,進行賦值就行。

例如:sfr p1 0x90;//定義p1口地址sbit test_pin p1^1; //定義p1口第1pin的引數

test_pin = 1;//將p1^1賦高;

p1 = 0x11;//給p1口賦值。

如果是要將外部介面接到p1上,直接讀取p1的值就行了。

多看看基本的。

51微控制器的p口能單獨定義輸入輸出嗎

17樓:瘦成一導閃電呀

通常作輸入時,要選置1,但微控制器上電後,預設的是置1的,只要你不是做出其它用,再做輸入,就不用置1了。但為保險起見,多置一次1,沒有關係。作輸出時,不用管它,直接用就行了。

另外,51微控制器的p口的任一腳能單獨用於輸入或輸出,無需事先定義。不過,在用作輸入時要確保該管腳的輸出鎖存器中的值為 1,因為該管腳的輸出鎖存器中的值為 0 時將使該腳處於0,而無法輸入外部的高電平。具體做法,就是要麼一直將該腳用作輸入,這樣在晶片復位時管腳的輸出鎖存器復位為1;要麼在用作輸入前先給該腳寫個1,再從該腳讀取輸入訊號。

18樓:

51微控制器的p口的任一腳能單獨用於輸入或輸出,無需事先定義!

不過,在用作輸入時要確保該管腳的輸出鎖存器中的值為 1,因為該管腳的輸出鎖存器中的值為 0 時將使該腳處於0,而無法輸入外部的高電平。

具體做法,就是要麼一直將該腳用作輸入,這樣在晶片復位時管腳的輸出鎖存器

復位為1;要麼在用作輸入前先給該腳寫個1,再從該腳讀取輸入訊號。

19樓:

51微控制器的輸入輸出是自動的,不像有的微控制器輸入輸出是需要定義的,如msp430

20樓:匿名使用者

當然可以,51微控制器的所有i/o口都是可單獨定址進行位操作的.

21樓:荔菲奇邃

不能 大部分51io口沒有方向 當然個別型號是有的

22樓:ewh微控制器論壇

首先肯定的是51微控制器的埠可以位定義輸出輸入的。

輸入時,首先要將埠置為高電平,這個相當於在設定埠的方向了。

樓主仔細看一下書就明白了。

有問題可以到我的微控制器論壇來交流:ewh 電子設計

51微控制器stc89c52怎樣擴充套件io

23樓:匿名使用者

用鎖存器擴充套件如74ls373,還可以用串列埠擴充套件 如74ls164還有用8255可程式設計晶片擴充套件的

老一點的微控制器教程必講這些東西。

但現在有更多io口的微控制器,一般不需擴充套件

如果用40腳51微控制器差幾個引腳的話,可以用44腳或48腳封裝的晶片

24樓:匿名使用者

stc89c52 是插腳的嗎?其實,stc89c52 比傳統的51微控制器多了3個i/o腳了,p4.4,p4.5,p4.6,共有35個i/o腳了。這還不夠嗎?

擴充套件i/o是可以的,但不如直接用片機的i/o方便,節省擴充套件的晶片。

換成lqfp44貼片封裝的,就多出7個i/o腳,共39個i/o腳了。還不夠嗎?

擴充套件方法:並行擴充套件,用74hc573,但至少要用兩片以上,才能真正增加i/o腳。

又節省i/o腳,晶片又少,又有效擴充套件i/o,採用串入/並出晶片74hc595。用3個i/o接74hc595,可以擴充套件出8個i/o,淨增5個i/o,還要擴充套件,用兩個74hc595串聯,還用3個i/o腳,可擴充套件出16個i/o腳,淨增13個,應該夠用了吧。

總之,擴充套件i/o的方法多多。就是別用什麼8255,8155,這麼古老的晶片,和微控制器一樣大小,dip40封裝。

25樓:景天

微控制器的輸入io口擴充套件可以通過以下方法來實現:

1、通過並行擴充套件晶片,比如8255 ,8155等。

2、通過鎖存器或緩衝器來擴充套件,比如74ls273,74ls373,74ls244,74ls245等等

3、通過串列埠-並口來擴充套件,比如74hc595,74hc164等等。

4、通過譯碼器來擴充套件,比如74hc138,74hc154等等。

26樓:匿名使用者

138。595之類的都可以擴充套件

怎麼用51微控制器IO口控制兩個LED分別亮

1 新建專案,如圖所示。2 新增標頭檔案,建立延遲函式。3 建立c主函式。4 新增死迴圈效果。5 點亮led燈。p1 0x7e 二進位制11111110。6 新增延遲效果即可。注意事項 proteus 自從有了微控制器也就有了開發系統,隨著微控制器的發發系統也在不斷髮展。keil是一種先進的微控制器...

關於微控制器io口的高阻態問題,51微控制器的IO口怎麼設為高阻態

輸出沒有高阻態,輸入有,輸出是推輓 上拉,不要搞錯了 高阻態意味著從外部看,電阻很大,近於懸空 51微控制器的i o口怎麼設為高阻態 普通51微控制器的io口無法設定為高阻態。stc微控制器可以設定為高阻態,通過改變pnm0和pnm1的值來設定其狀態。當pnm1 pnm0 10時對應的io即為高祖態...

用51微控制器IO口驅動3mmLED燈,要加多大的限流電阻

1 你沒講清楚具體的連線方式 是io口的 高電平驅動燈亮,此時二極體加限流電阻接地 還是io的低電平驅動燈亮,此時二極體 加限流電阻接 5v。2學習51,數位電路切忌不要忘了電流,這兩種方式的電流是不一樣的,請到51 的資料手冊的引數裡面查詢,比如at89s52的英文手冊 找到直流特性 dc cha...