0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

單片機(jī)內(nèi)部結(jié)構(gòu)分析

h1654155971.7688 ? 來源:互聯(lián)網(wǎng) ? 作者:佚名 ? 2017-10-23 10:11 ? 次閱讀

一、單片機(jī)內(nèi)部結(jié)構(gòu)分析

我們來思考一個(gè)問題,當(dāng)我們在編程器中把一條指令寫進(jìn)單片機(jī)內(nèi)部,然后取下單片機(jī),單片機(jī)就可以執(zhí)行這條指令,那么這條指令一定保存在單片機(jī)的某個(gè)地方,并且這個(gè)地方在單片機(jī)掉電后依然可以保持這條指令不會丟失,這是個(gè)什么地方呢?這個(gè)地方就是單片機(jī)內(nèi)部的只讀存儲器即ROM(READ ONLY MEMORY)。為什么稱它為只讀存儲器呢?剛才我們不是明明把兩個(gè)數(shù)字寫進(jìn)去了嗎?原來在89C51中的ROM是一種電可擦除的ROM,稱為FLASH ROM,剛才我們是用的編程器,在特殊的條件下由外部設(shè)備對ROM進(jìn)行寫的操作,在單片機(jī)正常工作條件下,只能從那面讀,不能把數(shù)據(jù)寫進(jìn)去,所以我們還是把它稱為ROM。

二、幾個(gè)基本概念
1、數(shù)的本質(zhì)和物理現(xiàn)象我們知道,計(jì)算機(jī)可以進(jìn)行數(shù)學(xué)運(yùn)算,這令我們非常難以理解,計(jì)算機(jī)嗎,我們雖不了解它的組成,但它們只是一些電子元器件,怎么可以進(jìn)行數(shù)學(xué)運(yùn)算呢?我們做數(shù)學(xué)題如37+45是這樣做的,先在紙上寫37,然后在下面寫45,然后大腦運(yùn)算,最后寫出結(jié)果,運(yùn)算的原材料:37、45和結(jié)果:82都是寫在紙上的,計(jì)算機(jī)中又是放在什么地方呢?為了解決這個(gè)問題,先讓我們做一個(gè)實(shí)驗(yàn):這里有一盞燈,我們知道燈要么亮,要么不亮,就有兩種狀態(tài),我們可以用’0’和’1’來代替這兩種狀態(tài),規(guī)定亮為’1’,不亮為’0’。現(xiàn)在放上兩盞燈,一共有幾種狀態(tài)呢?我們列表來看一下:請大家自己寫上3盞燈的情況000 001 010 011 100 101 110 111我們來看,這個(gè)000,001,101 不就是我們學(xué)過的的二進(jìn)制數(shù)嗎?本來,燈的亮和滅只是一種物理現(xiàn)象,可當(dāng)我們把它們按一定的順序排好后,燈的亮和滅就代表了數(shù)字了。讓我們再抽象一步,燈為什么會亮呢?是因?yàn)檩敵鲭娐份敵龈唠娖?,給燈通了電。因此,燈亮和滅就可以用電路的輸出是高電平還是低電平來替代了。這樣,數(shù)字就和電平的高、低聯(lián)系上了。(請想一下,我們還看到過什么樣的類似的例子呢?(海軍之)燈語、旗語,電報(bào),甚至紅、綠燈)。
2、位的含義通過上面的實(shí)驗(yàn)我們已經(jīng)知道:一盞燈亮或者說一根線的電平的高低,可以代表兩種狀態(tài):0和1。實(shí)際上這就是一個(gè)二進(jìn)制位,因此我們就把一根線稱之為一“位”,用BIT表示。3、字節(jié)的含義一根線可以表示0和1,兩根線可以表達(dá)00,01,10,11四種狀態(tài),也就是可以表達(dá)0到3,而三根可以表達(dá)0~7,計(jì)算機(jī)中通常用8根線放在一起,同時(shí)計(jì)數(shù),就可以表示0-255一共256種狀態(tài)。這8根線或者8位就稱之為一個(gè)字節(jié)(BYTE)。

存儲器的工作原理
1、存儲器構(gòu)造


存儲器就是用來存放數(shù)據(jù)的地方。它是利用電平的高低來存放數(shù)據(jù)的,也就是說,它存放的實(shí)際上是電平的高、低,而不是我們所習(xí)慣認(rèn)為的1234這樣的數(shù)字,這樣,我們的一個(gè)謎團(tuán)就解開了,計(jì)算機(jī)也沒什么神秘的嗎。如上圖左所示:一個(gè)存儲器就象一個(gè)個(gè)的小抽屜,一個(gè)小抽屜里有八個(gè)小格子,每個(gè)小格子就是用來存放“電荷”的,電荷通過與它相連的電線傳進(jìn)來或釋放掉,至于電荷在小格子里是怎樣存的,就不用我們操心了,你可以把電線想象成水管,小格子里的電荷就象是水,那就好理解了。存儲器中的每個(gè)小抽屜就是一個(gè)放數(shù)據(jù)的地方,我們稱之為一個(gè)“單元”。有了這么一個(gè)構(gòu)造,我們就可以開始存放數(shù)據(jù)了,想要放進(jìn)一個(gè)數(shù)據(jù)12,也就是00001100,我們只要把第二號和第三號小格子里存滿電荷,而其它小格子里的電荷給放掉就行了(看上圖右)。可是問題出來了,看上圖右,一個(gè)存儲器有好多單元,線是并聯(lián)的,在放入電荷的時(shí)候,會將電荷放入所有的單元中,而釋放電荷的時(shí)候,會把每個(gè)單元中的電荷都放掉,這樣的話,不管存儲器有多少個(gè)單元,都只能放同一個(gè)數(shù),這當(dāng)然不是我們所希望的,因此,要在結(jié)構(gòu)上稍作變化,看上圖右,在每個(gè)單元上有個(gè)控制線,我想要把數(shù)據(jù)放進(jìn)哪個(gè)單元,就把一個(gè)信號給這個(gè)單元的控制線,這個(gè)控制線就把開關(guān)打開,這樣電荷就可以自由流動(dòng)了,而其它單元控制線上沒有信號,所以開關(guān)不打開,不會受到影響,這樣,只要控制不同單元的控制線,就可以向各單元寫入不同的數(shù)據(jù)了,同樣,如果要從某個(gè)單元中取數(shù)據(jù),也只要打開相應(yīng)的控制開關(guān)就行了。

2、存儲器譯碼那么,我們怎樣來控制各個(gè)單元的控制線呢?這個(gè)還不簡單,把每個(gè)單元的控制線都引到集成電路的外面不就行了嗎?事情可沒那么簡單,一片27512存儲器中有65536個(gè)單元,把每根線都引出來,這個(gè)集成電路就得有6萬多個(gè)腳?不行,怎么辦?要想法減少線的數(shù)量。我們有一種方法稱這為譯碼,簡單介紹一下:一根線可以代表2種狀態(tài),2根線可以代表4種狀態(tài),3根線可以代表幾種,256種狀態(tài)又需要幾根線代表?8種,8根線,所以65536種狀態(tài)我們只需要16根線就可以代表了。

3、存儲器的選片及總線的概念至此,譯碼的問題解決了,讓我們再來關(guān)注另外一個(gè)問題。送入每個(gè)單元的八根線是用從什么地方來的呢?它就是從計(jì)算機(jī)上接過來的,一般地,這八根線除了接一個(gè)存儲器之外,還要接其它的器件。這樣問題就出來了,這八根線既然不是存儲器和計(jì)算機(jī)之間專用的,如果總是將某個(gè)單元接在這八根線上,就不好了,比如這個(gè)存儲器單元中的數(shù)值是0FFH另一個(gè)存儲器的單元是00H,那么這根線到底是處于高電平,還是低電平?豈非要打架看誰歷害了?所以我們要讓它們分離。辦法當(dāng)然很簡單,當(dāng)外面的線接到集成電路的引腳進(jìn)來后,不直接接到各單元去,中間再加一組開關(guān)就行了。平時(shí)我們讓開關(guān)打開著,如果確實(shí)是要向這個(gè)存儲器中寫入數(shù)據(jù),或要從存儲器中讀出數(shù)據(jù),再讓開關(guān)接通就行了。這組開關(guān)由三根引線選擇:讀控制端、寫控制端和片選端。要將數(shù)據(jù)寫入片中,先選中該片,然后發(fā)出寫信號,開關(guān)就合上了,并將傳過來的數(shù)據(jù)(電荷)寫入片中。如果要讀,先選中該片,然后發(fā)出讀信號,開關(guān)合上,數(shù)據(jù)就被送出去了。讀和寫信號同時(shí)還接入到另一個(gè)存儲器,但是由于片選端不同,所以雖有讀或?qū)懶盘?,但沒有片選信號,所以另一個(gè)存儲器不會“誤會”而開門,造成沖突。那么會不同時(shí)選中兩片芯片呢?只要是設(shè)計(jì)好的系統(tǒng)就不會,因?yàn)樗怯捎?jì)算控制的,而不是我們?nèi)藖砜刂频模绻娴某霈F(xiàn)同時(shí)出現(xiàn)選中兩片的情況,那就是電路出了故障了,這不在我們的討論之列。從上面的介紹中我們已經(jīng)看到,用來傳遞數(shù)據(jù)的八根線并不是專用的,而是很多器件大家共用的,所以我們稱之為數(shù)據(jù)總線,總線英文名為BUS,總即公交車道,誰也可以走。而十六根地址線也是連在一起的,稱之為地址總線。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6040

    文章

    44594

    瀏覽量

    636914

原文標(biāo)題:單片機(jī)內(nèi)部結(jié)構(gòu)原理,讓你豁然開朗!

文章出處:【微信號:weixin21ic,微信公眾號:21ic電子網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    智能吉他的內(nèi)部結(jié)構(gòu)

    智能吉他的內(nèi)部結(jié)構(gòu)是怎么樣的?我的電話是13316312382,謝謝
    發(fā)表于 12-22 17:15

    朗凱威帶你探秘磷酸鐵鋰電池內(nèi)部結(jié)構(gòu)與奧秘

    本文將深入剖析磷酸鐵鋰電池的內(nèi)部結(jié)構(gòu),旨在讓讀者更好地了解這種電池的工作原理和性能特點(diǎn),為其在不同領(lǐng)域的應(yīng)用提供更深入的認(rèn)識。同時(shí),通過對磷酸鐵鋰電池內(nèi)部結(jié)構(gòu)的研究,也有助于推動(dòng)電池技術(shù)的不斷創(chuàng)新和發(fā)展,提高電池的性能和安全性,為實(shí)現(xiàn)可持續(xù)發(fā)展的目標(biāo)做出貢獻(xiàn)。
    的頭像 發(fā)表于 12-07 16:34 ?516次閱讀
    朗凱威帶你探秘磷酸鐵鋰電池<b class='flag-5'>內(nèi)部結(jié)構(gòu)</b>與奧秘

    微處理器的內(nèi)部結(jié)構(gòu)和分類

    微處理器是一種高度集成的芯片,集成了CPU、內(nèi)存和輸入輸出接口等計(jì)算機(jī)系統(tǒng)的核心部件。其內(nèi)部結(jié)構(gòu)復(fù)雜而精密,通常包括運(yùn)算單元、控制單元和存儲單元等關(guān)鍵部分。這些部分相互協(xié)作,共同完成指令的執(zhí)行和數(shù)據(jù)的處理。
    的頭像 發(fā)表于 10-05 14:56 ?892次閱讀

    計(jì)算機(jī)主機(jī)內(nèi)部結(jié)構(gòu)

    計(jì)算機(jī)主機(jī)的內(nèi)部結(jié)構(gòu)是一個(gè)復(fù)雜而精密的系統(tǒng),它包含了多個(gè)關(guān)鍵組件,這些組件協(xié)同工作以實(shí)現(xiàn)計(jì)算機(jī)的各種功能。以下是對計(jì)算機(jī)主機(jī)內(nèi)部結(jié)構(gòu)的詳細(xì)解析。
    的頭像 發(fā)表于 09-26 16:40 ?858次閱讀

    單片機(jī)的三種總線結(jié)構(gòu)

    單片機(jī)的三種總線結(jié)構(gòu)包括地址總線(Address Bus, AB)、數(shù)據(jù)總線(Data Bus, DB)和控制總線(Control Bus, CB)。這三種總線在單片機(jī)內(nèi)部及與外部設(shè)備之間的數(shù)據(jù)傳輸
    的頭像 發(fā)表于 09-10 11:32 ?3497次閱讀

    單片機(jī)引腳懸空是什么電平

    單片機(jī)引腳懸空是指單片機(jī)的I/O引腳在沒有連接任何外部電路的情況下,引腳的電平狀態(tài)。懸空引腳的電平狀態(tài)取決于單片機(jī)內(nèi)部結(jié)構(gòu)和外部環(huán)境因素。 單片機(jī)
    的頭像 發(fā)表于 08-28 09:51 ?2310次閱讀

    微處理器內(nèi)部結(jié)構(gòu)介紹

    微處理器作為計(jì)算機(jī)系統(tǒng)的核心部件,其內(nèi)部結(jié)構(gòu)復(fù)雜而精密,集成了眾多關(guān)鍵組件以實(shí)現(xiàn)高效的數(shù)據(jù)處理和控制功能。
    的頭像 發(fā)表于 08-22 11:37 ?1078次閱讀

    觸發(fā)器的內(nèi)部結(jié)構(gòu)是什么

    觸發(fā)器的內(nèi)部結(jié)構(gòu)因類型和設(shè)計(jì)而異,但通常包括一些基本的組成部分,如存儲元件、控制門電路和反饋電路。以邊沿觸發(fā)器為例,其內(nèi)部結(jié)構(gòu)相對復(fù)雜,但可以通過分解其關(guān)鍵組成部分來詳細(xì)闡述。
    的頭像 發(fā)表于 08-12 14:43 ?779次閱讀

    請問LM2901產(chǎn)地不同內(nèi)部結(jié)構(gòu)是否有差別?

    LM2901PWR馬來西亞產(chǎn)地和菲律賓產(chǎn)地X線照出來內(nèi)部結(jié)構(gòu)不太一樣,這個(gè)是產(chǎn)地工藝不同導(dǎo)致的嗎
    發(fā)表于 08-07 08:25

    OPA2330器件內(nèi)部結(jié)構(gòu)異常的原因?

    您好,我司購買的OPA2330AIDGKRREV:C 內(nèi)部結(jié)構(gòu)與我司在庫的存件 REV:E 版本的結(jié)構(gòu)存在不同,請問此情況是否正常 REV:C 內(nèi)部結(jié)構(gòu)圖片 REV:E 內(nèi)部結(jié)構(gòu)圖片
    發(fā)表于 08-02 11:43

    DRAM的內(nèi)部結(jié)構(gòu)和工作原理

    今天我們來聊聊在計(jì)算機(jī)領(lǐng)域中非常關(guān)鍵的技術(shù)——DRAM(動(dòng)態(tài)隨機(jī)存取存儲器)的內(nèi)部結(jié)構(gòu)和工作原理。
    的頭像 發(fā)表于 07-26 11:40 ?2060次閱讀
    DRAM的<b class='flag-5'>內(nèi)部結(jié)構(gòu)</b>和工作原理

    聚徽觸控-工控機(jī)內(nèi)部結(jié)構(gòu)及作用

    工控機(jī)內(nèi)部結(jié)構(gòu)主要包括以下部分,每部分的作用如下:
    的頭像 發(fā)表于 07-11 09:50 ?341次閱讀
    聚徽觸控-工控<b class='flag-5'>機(jī)內(nèi)部結(jié)構(gòu)</b>及作用

    555集成芯片內(nèi)部結(jié)構(gòu)

    555集成芯片內(nèi)部結(jié)構(gòu)復(fù)雜且精細(xì),主要由分壓器、比較器、基本RS觸發(fā)器、放電管、緩沖器等單元電路組成。
    的頭像 發(fā)表于 03-25 15:00 ?1162次閱讀

    集成芯片內(nèi)部結(jié)構(gòu)

    集成芯片內(nèi)部結(jié)構(gòu)圖是一個(gè)相當(dāng)復(fù)雜的圖表,因?yàn)樗舜罅康碾娐吩图?xì)微的連接。以下是一個(gè)簡化的概述,以幫助理解其基本的內(nèi)部結(jié)構(gòu)
    的頭像 發(fā)表于 03-19 16:38 ?2303次閱讀

    555集成芯片的內(nèi)部結(jié)構(gòu)

    555集成芯片的內(nèi)部結(jié)構(gòu)相對復(fù)雜,但我們可以簡要地概述其主要組成部分和它們的功能。
    的頭像 發(fā)表于 03-18 15:04 ?1002次閱讀