<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 第3節(jié):?jiǎn)纹瑱C(jī)一個(gè)最重要的特性

          第3節(jié):?jiǎn)纹瑱C(jī)一個(gè)最重要的特性

          作者: 時(shí)間:2016-11-22 來(lái)源:網(wǎng)絡(luò) 收藏
          從業(yè)十年,教你單片機(jī)入門基礎(chǔ) 第3講:

          “道生一,一生二,二生三,三生萬(wàn)物。”《道德經(jīng)》認(rèn)為,世間萬(wàn)物,繽紛多彩,它們都起源自一個(gè)東西,這個(gè)“一”的東西就是“道”。電子世界也存在“一”這個(gè)東西,這個(gè)“一”繁衍出手機(jī),電腦,電視機(jī),機(jī)器人等豐富多彩的電子世界。這個(gè)“一”就是單片機(jī)一個(gè)最重要的特性:程序下載進(jìn)單片機(jī)的內(nèi)存后,可以識(shí)別管腳上的高低電平信號(hào),管腳也可以輸出不同時(shí)間長(zhǎng)度的高低電平。下面我把這句話的5個(gè)重要關(guān)健詞提取出來(lái),詳細(xì)解讀它的含義。

          本文引用地址:http://www.ex-cimer.com/article/201611/319813.htm

          程序。有3種,C程序,匯編程序,機(jī)器程序。能下載進(jìn)單片機(jī)的只有機(jī)器程序,C程序和匯編程序都不能直接下載進(jìn)單片機(jī),所以C程序和匯編程序最終要經(jīng)過(guò)專用編譯軟件翻譯成機(jī)器程序后,才能下載進(jìn)單片機(jī)執(zhí)行。程序就是語(yǔ)言,語(yǔ)言就是用來(lái)交流的,交流就必須存在兩個(gè)對(duì)象,這兩個(gè)對(duì)象分別是程序員和單片機(jī)。程序員用C語(yǔ)言或者匯編語(yǔ)言,單片機(jī)只用機(jī)器語(yǔ)言,他們兩者交流就必需一個(gè)翻譯家,這個(gè)翻譯家就是編譯軟件,俗稱編譯器,它專門把C語(yǔ)言或者匯編語(yǔ)言翻譯成單片機(jī)能識(shí)別的機(jī)器語(yǔ)言?,F(xiàn)在單片機(jī)開(kāi)發(fā)的主流是用C語(yǔ)言,我本人出來(lái)工作后就從來(lái)沒(méi)有用過(guò)匯編語(yǔ)言,所以我的觀點(diǎn)是,C語(yǔ)言是必修課,匯編語(yǔ)言是選修課;C語(yǔ)言是白話文簡(jiǎn)單易懂,匯編語(yǔ)言是文言文繁瑣難讀。當(dāng)然匯編也有它的優(yōu)點(diǎn)和不可替代的場(chǎng)合,匯編的翻譯效率高,往往是一句匯編語(yǔ)言對(duì)應(yīng)一句機(jī)器語(yǔ)言,而一句C語(yǔ)言有可能對(duì)應(yīng)幾句機(jī)器語(yǔ)言,所以很多嵌入式系統(tǒng)某段要求簡(jiǎn)潔高效的源代碼都是用匯編來(lái)寫的,也有少數(shù)一些很便宜的單片機(jī)不提供C編譯器,只能用匯編語(yǔ)言開(kāi)發(fā)。所以要不要學(xué)匯編,我的建議是最好根據(jù)個(gè)人的工作需求來(lái)決定。

          內(nèi)存。既然程序可下載進(jìn)單片機(jī),那么單片機(jī)必然有一個(gè)存儲(chǔ)程序的內(nèi)存。單片機(jī)內(nèi)存包括ROM和RAM兩部分。ROM的優(yōu)點(diǎn)是掉電后存儲(chǔ)的內(nèi)容不會(huì)丟失,缺點(diǎn)是除非在燒錄(下載)過(guò)程中,否則上電后它存儲(chǔ)的內(nèi)容也不能更改。并且,雖然ROM在燒錄(下載)過(guò)程中可以更改內(nèi)容,但是更改的次數(shù)有限制,也就是燒錄(下載)的次數(shù)有限制,一般最大次數(shù)是10萬(wàn)次,當(dāng)然這里所說(shuō)ROM是指FLASH的單片機(jī),如果是OTP的單片機(jī),那么最大次數(shù)是1次。而RAM恰好反過(guò)來(lái),RAM的優(yōu)點(diǎn)是上電后存儲(chǔ)的內(nèi)容可以被程序指令隨時(shí)更改,而且還沒(méi)有更改次數(shù)限制,缺點(diǎn)是掉電后內(nèi)容會(huì)丟失。正因?yàn)镽OM和RAM各有特點(diǎn),所以它們的分工有所不同。程序包括指令和數(shù)據(jù)兩部分。指令是指程序中的判斷,跳轉(zhuǎn),賦值等指令,這些內(nèi)容是程序燒錄進(jìn)單片機(jī)時(shí)就固定下來(lái)的,不可更改的,所以存儲(chǔ)在ROM中。數(shù)據(jù)也分兩種,程序指令可更改的數(shù)據(jù)和程序指令不可更改的數(shù)據(jù)。程序指令可更改的數(shù)據(jù)存儲(chǔ)在RAM中,程序指令不可更改的數(shù)據(jù)存儲(chǔ)在ROM中。那么誰(shuí)在幕后進(jìn)行這些分類存儲(chǔ)?是編譯器軟件和下載器(燒錄器)。編譯器除了把C語(yǔ)言翻譯成機(jī)器語(yǔ)言之外,還幫我們分好了類,分配好了存儲(chǔ)的地址和位置,下載器(燒錄器)再根據(jù)這些信息把程序存儲(chǔ)到內(nèi)存中。

          管腳。它是單片機(jī)與外部電路進(jìn)行能量和信息交互的橋梁。有電源,復(fù)位,晶振和IO口這4種類型管腳。第一種電源管腳。是給單片機(jī)內(nèi)部電路供電的接口。單片機(jī)有兩種常用的供電電壓,一般不是3.3V就是5V,有的單片機(jī)兩種電壓都兼容。第二種復(fù)位管腳。單片機(jī)上電后需要外部電路給它一個(gè)瞬間高電平或者低電平的復(fù)位信號(hào),才能啟動(dòng)工作。這類外部的復(fù)位電路通常是用電容和電阻組成的充電電路來(lái)實(shí)現(xiàn),也有一些系統(tǒng)是用專門的復(fù)位芯片來(lái)實(shí)現(xiàn)。第三種晶振管腳。任何單片機(jī)想要工作必須要有晶振。單片機(jī)執(zhí)行程序指令是按一個(gè)節(jié)拍一個(gè)節(jié)拍來(lái)執(zhí)行的。而晶振產(chǎn)生固定頻率的脈沖就是這個(gè)節(jié)拍的基礎(chǔ)源泉。所以把晶振比喻成單片機(jī)的心臟是非常恰當(dāng)?shù)?。?dāng)然,現(xiàn)在很多單片機(jī)都把晶振集成到內(nèi)部了,不用再外接晶振。第四種IO口管腳。這是跟我們編寫程序關(guān)聯(lián)最密切的管腳。前面提到的電源,復(fù)位,晶振這3種管腳是為了讓單片機(jī)能工作,俗稱單片機(jī)工作的三要素。而單片機(jī)工作的具體內(nèi)容就是通過(guò)IO口管腳來(lái)體現(xiàn)的。比如,IO口能識(shí)別按健的輸入,也能驅(qū)動(dòng)繼電器的開(kāi)關(guān),也能跟外圍器件進(jìn)行通信。

          電平。單片機(jī)IO口管腳檢測(cè)到的電壓低于或等于0.8V時(shí)是低電平,程序里讀取到的是0數(shù)字。檢測(cè)到的電壓高于或等于2.4V時(shí)是高電平,程序里讀取到的是1數(shù)字,當(dāng)然IO口輸入的最大電壓不能超過(guò)單片機(jī)的供電電壓。單片機(jī)輸出的低電平是0V,單片機(jī)輸出的高電平等于它的供電電壓值。

          時(shí)間。時(shí)間是單片機(jī)程序必不可少的一個(gè)元素。跟外圍芯片通信的時(shí)序節(jié)拍需要時(shí)間,驅(qū)動(dòng)發(fā)光二極管閃爍需要時(shí)間,工控自動(dòng)化的某些延時(shí)需要時(shí)間。單片機(jī)的時(shí)間來(lái)源自兩方面。第一方面源自指令的周期時(shí)間。單片機(jī)是根據(jù)節(jié)拍來(lái)執(zhí)行程序指令的,所以每執(zhí)行一條指令都要消耗一點(diǎn)時(shí)間,只要讓程序執(zhí)行一些無(wú)實(shí)際意義的指令,并且通過(guò)調(diào)整所執(zhí)行指令的條數(shù)就可以得到所需要的時(shí)間長(zhǎng)度。第二方面源自單片機(jī)內(nèi)部自帶的定時(shí)器。假如設(shè)置定時(shí)器每20毫秒產(chǎn)生一次中斷,現(xiàn)在要獲取10秒鐘的時(shí)間,只需程序統(tǒng)記500次定時(shí)中斷就可以了,因?yàn)?秒等于1000毫秒。

          下節(jié)預(yù)告,平臺(tái)軟件和編譯器軟件的簡(jiǎn)介。



          關(guān)鍵詞: 單片機(jī)特

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();