在MCS 51微控制器應用系統中,外接程式儲存器和資料儲存器的

2022-02-05 08:29:15 字數 4093 閱讀 5584

1樓:匿名使用者

乙個微處理器能夠聰明地執行某種任務,除了它們強大的硬體外,還需要它們執行的軟體,其實微處理器並不聰明,它們只是完全按照人們預先編寫的程式而執行之。那麼設計人員編寫的程式就存放在微處理器的程式儲存器中,俗稱唯讀程式儲存器(rom)。程式相當於給微處理器處理問題的一系列命令。

其實程式和資料一樣,都是由機器碼組成的**串。只是程式**則存放於程式儲存器中。

mcs-51具有64kb程式儲存器定址空間,它是用於存放使用者程式、資料和**等資訊。對於內部無rom的8031微控制器,它的程式儲存器必須外接,空間位址為64kb,此時微控制器的端必須接地。強制cpu從外部程式儲存器讀取程式。

對於內部有rom的8051等微控制器,正常執行時,則需接高電平,使cpu先從內部的程式儲存中讀取程式,當pc值超過內部rom的容量時,才會轉向外部的程式儲存器讀取程式。

當=1時,程式從片內rom開始執行,當pc值超過片內rom容量時會自動轉向外部rom空間。

當=0時,程式從外部儲存器開始執行,例如前面提到的片內無rom的8031微控制器,在實際應用中就要把8031的引腳接為低電平。

2樓:沙里波特

--mcs-51的儲存器採用哈佛結構。

--程式儲存器和資料儲存器,是各自獨立的位址空間。

--兩者毫不相關,根本就沒有任何重疊。

為什麼?

--因為,哈弗結構,就是不衝突的結構。

外部i/o介面位址是否允許與儲存器位址重疊?

--mcs-51微控制器,跟本就沒有「外部i/o介面位址」。

為什麼?

--這題目,是誰出的呀? 沒有任何意義。

--都是無聊或誤導。

3樓:

mcs-51的儲存器採用哈佛結構,就是64kb程式儲存器和64kb資料儲存器是各自單獨編址,各自獨立的位址空間。其位址編號是允許重疊的。

不會發生重疊的原因是:從硬體連線上,訪問外部程式儲存器(讀取)是控制線ea、psen有效,訪問外部資料儲存器是rd(讀)、wr(寫有效;從指令系統來說,如果是程式主動訪問,採用不同的指令來訪問,一般movc訪問程式儲存器,movx訪問外部資料儲存器。

在mcs-51中外部i/o介面位址是和外部資料儲存器的位址在一起統一編址的,換句話說,就是i/o位址是外部資料儲存器位址空間的一部分,因此其和外部資料儲存器一樣可以和外部程式儲存器重疊。

在mcs-51微控制器系統中,擴充套件的程式儲存器和資料儲存器都使用16位位址線和8位資料線,為什麼不發生衝突?

4樓:做而論道

擴充套件片外儲存器,使用的是三匯流排結構,即ab、db和cb。

樓主僅僅說出了16位位址線和8位數回據線,這答只是ab和db。

另外的控制匯流排(cb)如下:

擴充套件程式儲存器,使用psen引線,來控制對其讀出;

擴充套件資料儲存器,使用rd和wr引線,來控制對其讀寫。

因為控制匯流排不同,所以不發生衝突。

5樓:匿名使用者

資料儲存器的讀寫由/rd(p3.6),/wr(p3.7)控制,程式儲存器由/psen控制,因此兩者雖共處同一位址空間,但控制訊號不同所以不會衝突。

6樓:德昂當

微控制器有乙個 psen 腳 好像是這個吧,在程式rom定址時和ram定址時,會出不同的電平,來選擇分別使rom和ram的選通。

7樓:匿名使用者

擴充套件的儲存器定址方式不同,程式儲存器用movc,資料儲器用movx

mcs-51微控制器的程式儲存器和資料儲存器共處同一位址空間為什麼不會衝突

8樓:匿名使用者

1.p0口在讀寫外部空間的時候,既要輸出位址的低8位,又要輸出(輸入)8位資料。這兩項操作是分時進行的:

在乙個機器週期裡面,p0口先輸出位址的低八位,用鎖存器鎖存起來,然後再輸出(寫操作)8位資料。在p0口輸出資料的同時,p2口輸出位址的高八位。所以p0口加了鎖存,p2口不加。

其實微控制器系統一般外邊掛不了很多的裝置,完全可以只用高八位位址來選址,不過這樣一來外部空間的位址就不連續了,需要在程式上做點處理。

不過出於成本考慮完全可以這樣做。

教材上例子的系統配置是為了讓大家學到知識的配置,並不一定是最經濟的,比如at89s51七塊錢就搞定,而8255、8155都要十幾塊的,而鍵盤掃瞄晶元則需要將近五十大洋,還不如配兩個at89s51專門掃瞄鍵盤、led顯示呢(如果確實需要)。

後邊兩道是考題嗎?

第二個我覺得是#21fdh

第三個我不懂c

題目:程式空間你是不能用微控制器自身的程式來讀寫的,比如mov就不行,自然不會產生衝突。還真沒細研究這個問題,有待商討……

呵呵,xuxuejuen是高手!透徹!

在mcs-51微控制器擴充套件系統中,片外程式儲存器和片外資料儲存器共處同乙個位址空間,為什麼不會發生匯流排衝突?

9樓:昝恨蕊郁家

訪問片外rom使用movc指令,對晶元的控制訊號為#psen,而訪問片外ram使用的是movx指令,控制訊號為#rd和#wr。二者的控制訊號不同,就不會存在位址重疊的現象了。

10樓:伯晴雪沐凱

訪問外部程式儲存器時用的是movc

訪問外部資料儲存器時用的是movx

而在執行命令的時候rd/wr/psen三個引腳的電平是不同的..

因而是不會產生衝突的...

mcs-51微控制器擴充套件系統中,片外程式儲存器和片外資料儲存器共處同乙個位址空間,為什麼不會發生匯流排衝突?

11樓:風翼殘念

因為控制

訊號線的不同:外擴的ram晶元既能讀出又能寫入,所以通常都有讀寫控制引腳,記為oe和we。外擴ram的讀、寫控制引腳分別與mcs-51的rd和wr引腳相連。

外擴的eprom在正常使用中只能讀出,不能寫入,故eprom晶元沒有寫入控制引腳,只有讀出引腳,記為oe,該引腳與mcs-51微控制器的psen相連

訪問片外程式儲存器和訪問資料儲存器使用不同的指令用來區分同一位址空間硬體上,控制訊號不一樣:片外程式儲存器工作,要psen訊號有效。

片外資料儲存器工作,要rd或wr訊號有效;軟體上,定址不一樣,片外程式儲存器工作,要用movc,片外資料儲存器工作,要用movx;雖然位址都是0000h~ffffh,不會發生衝突的。

12樓:匿名使用者

硬體上,控制訊號不一樣:片外程式儲存器工作,要psen訊號有效;片外資料儲存器工作,要rd或wr訊號有效;

軟體上,定址不一樣,片外程式儲存器工作,要用movc,片外資料儲存器工作,要用movx;

雖然說他們的位址都是0000h~ffffh,不會發生衝突的

13樓:匿名使用者

微控制器有乙個管腳(好像是cp,忘記了),

當讀外rom時置低,讀外ram時置高,以此來選通rom或ram,

所以不會衝突。

14樓:沙里波特

老師出這題目,就是坑騙學生的。

片外程式存

儲器和片外資料儲存器,各有 64k 的位址。

根本就沒有共處同乙個位址空間。

哪會有什麼匯流排衝突?

匯流排衝突,是什麼意思?

這是老師自己瞎編的詞,沒有任何意義。

按照 51 微控制器的基本理論,設計電路、編寫程式,即可。

根本不用理會這些濫題。

微控制器簡答問題!!! 51微控制器程式儲存器和資料儲存器儲存空間為什麼是重疊的?

15樓:追求者

51的儲存器採用哈佛結構,就是64kb程式儲存器和64kb資料儲存器是各自單獨編址,各自獨立的位址空間。其位址編號是允許重疊的。

不會發生重疊的原因是:從硬體連線上,訪問外部程式儲存器(讀取)是控制線ea、psen有效,訪問外部資料儲存器是rd(讀)、wr(寫有效;從指令系統來說,如果是程式主動訪問,採用不同的指令來訪問,一般movc訪問程式儲存器,movx訪問外部資料儲存器。

在mcs-51中外部i/o介面位址是和外部資料儲存器的位址在一起統一編址的,換句話說,就是i/o位址是外部資料儲存器位址空間的一部分,因此其和外部資料儲存器一樣可以和外部程式儲存器重疊。

51微控制器有哪幾部分構成,MCS 51微控制器內部結構由哪幾部分組成?

8位cpu 4kbytes 程式儲存器 rom 52為8k 256bytes的資料儲存器 ram 52有384bytes的ram 32條i o口線 111條指令,大部分為單位元組指令 21個專用暫存器 2個可程式設計定時 計數器 5個中斷源,2個優先順序 52有6個 乙個全雙工序列通訊口。51微控制...

求助,微控制器串列埠全雙工,MCS51微控制器什麼是全雙工,半雙工,單工序列通訊

微控制器串列埠實現全雙工,用rs232介面,適合於一對一的,如微控制器與電腦。或用rs422,適合於多機通訊,即通常的主從機結構。微控制器作為從機,串列埠全雙工工作還有點意義,作為主機,暫時我還沒有看到明顯的效果!為此思考中 mcs 51微控制器什麼是全雙工,半雙工,單工序列通訊?單工只有一根資料線...

MCS51微控制器的中斷系統的處理過程是什麼

從本質上說,每乙個中斷都乙個專門的暫存器,即中端標誌暫存器。當中斷暫存器的值為1時,會向cpu傳送中斷請求。但是響不響應是根據 ie暫存器裡的位所決定的。總的來說,mcs 51的硬體裡有好幾個暫存器是專門負責中斷的。mcs 51微控制器的中斷系統由哪幾部分組成?作用是什麼?51系列中斷有五個中斷源 ...