51微控制器的分時複用,80c51微控制器p0口地址資料分時複用如何實現的

2021-04-19 06:16:51 字數 1398 閱讀 4217

1樓:匿名使用者

51微控制器的分時來複用51微控制器的分源

時複用功能,最直接的就bai是movx指令du,用這個指令就是在分時復zhi用p0口,執dao行:movx a,@dptr,那麼首先要送地址a0~a7給p0口,ale有效,鎖存在373上,再將這個地址的資料從p0口讀入傳給a。

2樓:匿名使用者

下面是p0口既送數碼管段訊號,又送位訊號的例子:

p0=table[a];//送段訊號

duanlah=1;

duanlah=0;

p0=0xfe;//送位訊號

weilah=1;

weilah=0;

實際版上訪問外部ram時,p0口先權送地址訊號,ale同時產生鎖存訊號,然後送資料訊號,是不用程式人工幹予的,這才是真正的分時複用

80c51微控制器p0口地址資料分時複用如何實現的

3樓:小丁創業

p0在前來一個時刻輸出地址的

源低8位,然後由ale訊號將bai它們鎖存到外du面的邏輯晶片(例如zhi74ls245之類)裡,之後dao再從p0輸出或輸入資料,就實現了分時複用。

在這兩個期間,地址的高8位,也就是p2口的訊號是不變的,並且ale在後一半的時候也是不變的。這樣的話,之前輸出的地址低8位被ale鎖存到外面的邏輯晶片裡了。

因此不管匯流排上的訊號如何變,只要ale不變,那麼邏輯晶片的輸出就是不變的,因此此時的p0口就可以執行別的任務了。

4樓:匿名使用者

p0在前復一個時刻輸出地址制

的低8位,然後由ale訊號將它們鎖存到外面的邏輯晶片(例如74ls245之類)裡,之後再從p0輸出或輸入資料,就實現了分時複用.

在這兩個期間,地址的高8位,也就是p2口的訊號是不變的,並且ale在後一半的時候也是不變的.這樣的話,之前輸出的地址低8位被ale鎖存到外面的邏輯晶片裡了,因此不管匯流排上的訊號如何變,只要ale不變,那麼邏輯晶片的輸出就是不變的,因此此時的p0口就可以幹別的了.

當然,外面的不一定都是邏輯晶片,還可以是其它的東東.

5樓:老橡木桶

這個copy

基本上可以說是自動的

從彙編程式上看,如果當前微控制器執行的程式是讀寫rom活著ram的話,那麼p0口首先輸出地址訊號,然後ale引腳會發出鎖存訊號,這樣p0就是地址線;在隨後的過程中ale的訊號不變,p0口會讀取活著寫出資料,此時就是資料線了。

其實無論地址還是資料,都是邏輯電訊號的,我這麼說你明白麼?

6樓:匿名使用者

用keilc的話,你就不用這麼詳細瞭解底層執行了,

輸個命令就ok了

求助:51微控制器如何實現兩個串列埠分時複用的

80C51微控制器的片內ROM和片內RAM各起什麼作用?他們的地址範圍是多少

嘿嘿 俺來回答你的問題 1 微控制器的片內rom是用來存放使用者的程式 和重要的一些資料表的 如7段數碼管的顯示編碼表 片內ram一般用來定義使用者的資料變數,可以存放微控制器採集到的實時資料和運算過程中產生的一些中間變數。還要作為堆疊使用。2 80c51微控制器的片內rom和片內ram地址範圍?片...

51微控制器資料搬運c語言程式,51微控制器訪問片內資料儲存器某單元的內容用c語言怎麼寫???

aa i bb i 51微控制器訪問片內資料儲存器某單元的內容用c語言怎麼寫?方法1 char data p 定義一個指向片內ram地址的指標 p 0x30 片內ram地址為0x30 p 0x12 向0x30內寫入立即數0x12 方法2 include char x x dbyte 0x30 將片內...

80C51微控制器具有幾個中斷源,分別是如何定義的 其中哪些中

80c51微控制器來具有幾個中斷源,分別源是如何定義的?有5箇中斷源,外部中斷0,定義為int0,定時 計數器0,定義為t0,外部中斷1,定義為int1 定時 計數器1,定義為t1 序列通訊口中斷 其中哪些中斷源可以被定義為高優先順序中斷,如何定義?5箇中斷源都可以根據需要定義高優先順序,當需要定義...