微控制器IO口控制另微控制器IO口問題

時間 2021-08-11 15:59:31

1樓:匿名使用者

3.3v和5v的兩個微控制器io口不要直接連線到一起,應該用電平轉換電路隔離。3.

3v的io口增加了18ma電流,這是很大的,容易燒壞3.3v微控制器,這種連線是不合理的。如果5v微控制器是stc的,引腳可設定成高阻輸入模式是最簡單的,如下表。

如果不是也不能設定io模式,那可以用一片74hc04(用sop14封裝),用兩個非門串接,電源接5ⅴ,與5v微控制器同電壓,用非門去拉低5v微控制器的io腳,而3.3v微控制器io接非門輸入端,是無電流無功率驅動。

一個操作51微控制器某幾個io口的方法

2樓:

對於51微控制器的p口來說,我們習慣上的賦值是p1 = 0***。但是這樣操作是一次性操作了8個io口。而有些情況下,我們只需要操作其中的幾個而不是全部的時候,我們如何操作呢?

如下圖註釋上邊的部分,是我寫的程式**。

這個是操作51微控制器p1口的低4位對步進電機進行操作的程式,在這個操作過程中,我們只使用到了p1口的低4位,因此我們希望高4位保持不變,只改變p1的低4位。首先把p1進行一個備份到變數tmp中去,然後把變數tmp的經過兩條語句,得到最終要賦值給p1的值以後,再一次性賦值給p0,這個方法大家都可以學習一下。

而註釋下邊的這段程式,是一位同學寫的,這位同學的理由是下邊這種寫法,也沒有改變p1的高4位。表面看也沒什麼問題,但是實際上如果不利用tmp這個變數,p1就會產生一個錯誤的中間值。

p1= p1&0xf0;這條語句執行完畢以後,p1 = 0xx0;其中x是未知的,保持了之前p1的高4位的原值,而低4位是0;

再然後p1= p1|beatcode[index];這樣操作後,p1得到了最終的值。

但是這中間,p1 = 0xx0;這個值是我們根本不需要的一個錯誤值。不要怕有問題,但是我也不希望沒有經過思考的問題。而這個問題,就是同學經過思考的問題,我認為很好,寫出來提供給同學們共同學習。

怎麼用51微控制器一個io口控制兩個led分別亮

3樓:

1、新建專案,如圖所示。

2、新增標頭檔案,建立延遲函式。

3、建立c主函式。

4、新增死迴圈效果。

5、點亮led燈。p1=0x7e;二進位制11111110。

6、新增延遲效果即可。

注意事項:proteus 自從有了微控制器也就有了開發系統,隨著微控制器的發發系統也在不斷髮展。 keil是一種先進的微控制器整合開發系統。

它代表著組合語言微控制器開發系統的最新發展,首創多項便利技術,將開發的程式設計/**/除錯/寫入/加密等所有過程一氣呵成,中間不須任何編譯或彙編。

4樓:匿名使用者

兩個led串聯,一端接vcc,另一端接gnd,io引腳接其中間,但要求2個led的導通電壓之和小於電源電壓.

5樓:做而論道

很簡單。

一個 led,正極接 io 引腳,負極接地。

即可實現:io口輸出 1 時,燈亮。

另一個 led,正極接正電源,負極接 io 引腳。

即可實現:io口輸出 0 時,燈亮。

注意, led 都需要串聯一個電阻,用於控制電流的大小。

請教高手 一個微控制器如何同過io控制另一個微控制器

6樓:匿名使用者

這個可以有兩種方式來控制,一種是通過串列埠發出命令來控制,另一種是通過並口(p0)來控制。

一個微控制器的某一個io口能連到另外一個io口上嗎

7樓:那天老三

可以的,類似於3*3鍵盤就是這樣用的,但是,如果是一直短路的話,程式一定要設定好i/o埠

一個按鍵按下,使兩個微控制器io口同時檢測到,但是電壓不同,防止串擾,電路怎麼搭呀,大神們

8樓:匿名使用者

是**圖,還是實物?

兩個微控制器共用一個按鍵嗎?為什麼要這麼用?電壓不同,就得每個微控制器的i/o腳各串聯一個500~1k的電阻後,再接到按鍵上了。

微控制器的io口電流大概10ma左右,如何讓一個io口控制四個並聯一起的led同時亮滅?

9樓:

每個led電流20ma?你為什麼要那麼大電流呢?不怕燒壞led?

好吧,不管你為什麼用那麼大的了,反正你不能把四個led連線到io口上,因為微控制器io口沒那麼大驅動能力.

用一個三極體吧,如果用npn三極體,接法如下:

電源--->四個限流電阻---->四個led正極---->

四個led負極擰到一起,共同接三極體的集電極--->三極體發射極接地

微控制器的io口--->約680---1000歐姆的電阻--->三極體的基極.

因為,當io口為高電平時,三極體工作於開啟狀態,四個led亮

如果用pnp三極體,接法如下:

電源--->三極體的發射極---->三極體的集電極---->四個限流電阻擰一起

--->四個限流電阻另一端分開,分別接四個led正極---->四個led負極擰到一起接地

微控制器的io口--->約680---1000歐姆的電阻--->三極體的基極.

因為,當io口為低電平時,三極體工作於開啟狀態,四個led亮

關於微控制器io口控制三極體的問題

10樓:0427付強

嘗試對微控制器的這個io口進行外部上拉,就是和電源之間連線一個10k左右的上拉電阻。

11樓:

10k的電阻太大了,換成1-3k的電阻吧

12樓:匿名使用者

在ua的地方接一個10k電阻到5v,在將圖中的10k電阻換成1k-3k的電阻

13樓:小小糊塗的人

不知使用什麼微控制器,應該是驅動能力不夠,將限流電阻r?改小成1k即可

微控制器:c51 12個io口控制另12個io口

14樓:

很簡單,就是讀輸入,寫輸出

讀輸入io口狀態,去抖動,寫輸出,不即用於12個io。

15樓:匿名使用者

你用12個io口輸入對應12個輸出~也就只能一個一個的寫~

16樓:匿名使用者

一個對應一個單獨控制的話當然要一個個的寫啊,不然你想怎麼寫

微控制器串列埠控制io口,微控制器序列口與普通IO口區別?

自我程式設計 我寫了一個串列埠接收輸入,並將輸入的字串顯示在lcd螢幕中,同時收到的資料還會通過串列埠傳送回上位機。我是用串列埠助手除錯的。定義了虛擬串列埠com3和com4作通訊。連續傳送字元將作為字串儲存,儲存在全域性變數strs 100 中,遇到間隔傳送,後傳送的字元或字串將覆蓋上次內容。比如...

微控制器IO擴充套件口的作用,當微控制器外部擴充套件儲存器是,四個I O介面各起什麼作用

愛晚風林亭 通過微控制器io控制擴充套件口,增加微控制器io口能控制的埠的數量。微控制器 microcontrollers 是一種積體電路晶片,是採用超大規模積體電路技術把具有資料處理能力的 處理器cpu 隨機儲存器ram 只讀儲存器rom 多種i o口和中斷系統 定時器 計數器等功能 可能還包括顯...

微控制器引腳如何實現高阻輸入,微控制器IO口設定為高阻輸入時能讀埠值嗎

amd百夫長 一 通過加驅動器實現了。二 如果是傳統的51微控制器 例如at89s52 p0口可以實現高阻。p0口內部和p1 p3口的內部結構不同,它的內部上拉fet只有在它作為外部儲存器匯流排的時候才能開啟,如果做普通io口,那麼讓p0口輸出1,外部又沒有接上拉電阻的話,那麼p0口就是高阻 懸空 ...