久久婷婷香蕉热狠狠综合,精品无码国产自产拍在线观看蜜,寡妇房东在做爰3,中文字幕日本人妻久久久免费,国产成人精品三上悠亚久久

當前位置:首頁 > 學習資源 > 講師博文 > 嵌入式(shi)系統的知識體系、學習誤區及學習建議

嵌入式系(xi)統的知識(shi)體系(xi)、學習誤(wu)區及(ji)學習建議 時間:2024-10-11      來源:華清遠見

1.嵌入式系統的知識體(ti)系

    嵌入(ru)式系(xi)(xi)統的應(ying)用(yong)(yong)范(fan)圍可以粗略分(fen)為(wei)兩大類(lei):電(dian)子系(xi)(xi)統的智能化(工業(ye)控制、現代農業(ye)、家用(yong)(yong)電(dian)器、汽車(che)電(dian)子、測控系(xi)(xi)統、數(shu)據采集等),計(ji)(ji)算機應(ying)用(yong)(yong)的延伸(MP3、手機、通信、網(wang)絡、計(ji)(ji)算機外圍設(she)(she)備等)。從這(zhe)些應(ying)用(yong)(yong)可以看出(chu),要(yao)完成一個以MCU為(wei)核心(xin)的嵌入(ru)式系(xi)(xi)統應(ying)用(yong)(yong)產品(pin)設(she)(she)計(ji)(ji),需(xu)要(yao)硬(ying)件(jian)、軟件(jian)及行(xing)業(ye)領域相關知識。硬(ying)件(jian)主要(yao)有(you)MCU的硬(ying)件(jian)最小(xiao)系(xi)(xi)統、輸入(ru)/輸出(chu)外圍電(dian)路、人(ren)機接口設(she)(she)計(ji)(ji)。軟件(jian)設(she)(she)計(ji)(ji)有(you)固化軟件(jian)的設(she)(she)計(ji)(ji),也可能含PC機軟件(jian)的設(she)(she)計(ji)(ji)。行(xing)業(ye)知識需(xu)要(yao)通過協作、交流與總結獲(huo)得。

    概(gai)括地說,學習(xi)以MCU為(wei)核心的嵌入式系統,需要以下軟硬件基礎知識與實踐(jian)訓練(lian):

    ①硬件最(zui)小系統(電源、晶振、復位(wei)、寫入(ru)調試接口);

    ②通用I/O(開(kai)關(guan)量(liang)輸入/輸出,涉及各種二(er)值量(liang)檢測(ce)與控(kong)制(zhi));

    ③模(mo)/數轉換(各(ge)種傳感器信號(hao)的采集與處理,如紅外、溫度、光敏、超聲波、方向等);

    ④數(shu)(shu)/模轉換(對模擬量設備利用數(shu)(shu)字進行控制);

    ⑤通(tong)信(串行通(tong)信接(jie)口SCI、串行外設接(jie)口SPI、集成電路互聯總線I2C、CAN、USB、嵌入(ru)式以(yi)太網、ZigBee技術等(deng));

    ⑥顯示(LED、LCD等);

    ⑦控(kong)制(控(kong)制各種設備,包括PWM等控(kong)制技術);

    ⑧數據處理(圖形、圖像、語音、視頻等(deng)的處理或識別);

    ⑨各種具體應用。

    萬變不(bu)離其宗,任(ren)何應用都可以歸入這幾類。而應用中的(de)硬件設(she)計、軟(ruan)件設(she)計、測(ce)試等都必(bi)須遵(zun)循嵌入式軟(ruan)件工(gong)程的(de)方法(fa)、原(yuan)理與(yu)基本原(yuan)則。所以,嵌入式軟(ruan)件工(gong)程也是嵌入式系(xi)統知(zhi)識體系(xi)的(de)有機組成部分,只不(bu)過它融(rong)于具體項目的(de)開發過程之(zhi)中。

    以上實踐訓練涉及硬件基(ji)礎、軟件基(ji)礎及相關領域(yu)知識(shi)。計算機(ji)語(yu)言、操(cao)作(zuo)系(xi)(xi)(xi)統、開(kai)發環境等均是達到(dao)這些(xie)(xie)目的(de)的(de)工具。有些(xie)(xie)初學(xue)(xue)者,容易(yi)把工具的(de)使用(yong)與所要達到(dao)的(de)真(zhen)正目的(de)相混(hun)淆。例如,有的(de)學(xue)(xue)習(xi)(xi)者學(xue)(xue)了(le)很長時(shi)間的(de)嵌入(ru)(ru)(ru)(ru)式(shi)操(cao)作(zuo)系(xi)(xi)(xi)統移植(zhi),而不(bu)進行(xing)實際嵌入(ru)(ru)(ru)(ru)式(shi)系(xi)(xi)(xi)統產(chan)品的(de)開(kai)發,到(dao)最后(hou)也做(zuo)不(bu)好(hao)一個嵌入(ru)(ru)(ru)(ru)式(shi)系(xi)(xi)(xi)統小產(chan)品,偏離了(le)學(xue)(xue)習(xi)(xi)目標(biao),甚(shen)至放棄嵌入(ru)(ru)(ru)(ru)式(shi)系(xi)(xi)(xi)統領域(yu)。這就是進入(ru)(ru)(ru)(ru)了(le)嵌入(ru)(ru)(ru)(ru)式(shi)系(xi)(xi)(xi)統學(xue)(xue)習(xi)(xi)誤區,下面對此作(zuo)一些(xie)(xie)分析。

2 嵌入(ru)式系統的學習誤區

    關于嵌入式(shi)系統的(de)(de)學(xue)(xue)習(xi)方(fang)法,因(yin)學(xue)(xue)習(xi)經歷、學(xue)(xue)習(xi)環境、學(xue)(xue)習(xi)目的(de)(de)、已有的(de)(de)知(zhi)識基(ji)礎(chu)等不(bu)同,可(ke)能在學(xue)(xue)習(xi)順(shun)序(xu)、內(nei)容選擇、實(shi)踐方(fang)式(shi)等方(fang)面有所不(bu)同。但是(shi),應該(gai)明確哪(na)(na)些(xie)(xie)是(shi)必備的(de)(de)基(ji)礎(chu)知(zhi)識,哪(na)(na)些(xie)(xie)應該(gai)先學(xue)(xue),哪(na)(na)些(xie)(xie)應該(gai)后學(xue)(xue);哪(na)(na)些(xie)(xie)必須通過實(shi)踐才能獲得(de);哪(na)(na)些(xie)(xie)是(shi)與具體芯片(pian)無關的(de)(de)通用知(zhi)識,哪(na)(na)些(xie)(xie)是(shi)與具體芯片(pian)或開發環境相關的(de)(de)知(zhi)識。

    由于微處(chu)理器與微控(kong)制(zhi)器種類繁多,也可(ke)能由于不同公司、機構出于自身的(de)利益,給出一些誤導性宣(xuan)傳,特別是我國嵌(qian)入式微控(kong)制(zhi)器制(zhi)造(zao)技術落后,使得人們(men)對(dui)微控(kong)制(zhi)器的(de)發展,在認識與理解上(shang)存(cun)在差異,導致一些初學者進入嵌(qian)入式系(xi)統的(de)學習誤區(qu),浪(lang)費了寶貴(gui)的(de)學習時間。下面分析(xi)可(ke)能存(cun)在的(de)幾(ji)個誤區(qu)。

2.1 操作(zuo)系統的困(kun)惑

    如(ru)(ru)果說,學(xue)習(xi)嵌(qian)(qian)(qian)(qian)入(ru)(ru)式(shi)(shi)(shi)系(xi)統(tong)(tong)不(bu)(bu)是(shi)(shi)(shi)為(wei)了(le)開(kai)發(fa)其應用產品(pin)(pin),那就(jiu)沒有具(ju)體目標,諸如(ru)(ru)學(xue)習(xi)方法這(zhe)樣的(de)(de)(de)(de)問(wen)題(ti)也(ye)就(jiu)不(bu)(bu)必談(tan)了(le)。實(shi)際上(shang),這(zhe)正是(shi)(shi)(shi)許(xu)多(duo)(duo)人想(xiang)學(xue),又(you)不(bu)(bu)知(zhi)從何開(kai)始學(xue)習(xi)的(de)(de)(de)(de)關鍵(jian)問(wen)題(ti)所在(zai),不(bu)(bu)知(zhi)道(dao)自己學(xue)習(xi)的(de)(de)(de)(de)具(ju)體目標。于(yu)是(shi)(shi)(shi),看了(le)一(yi)(yi)些培訓(xun)廣告,看了(le)書店中種類繁多(duo)(duo)的(de)(de)(de)(de)嵌(qian)(qian)(qian)(qian)入(ru)(ru)式(shi)(shi)(shi)系(xi)統(tong)(tong)書籍,或(huo)上(shang)網以“嵌(qian)(qian)(qian)(qian)入(ru)(ru)式(shi)(shi)(shi)系(xi)統(tong)(tong)”為(wei)關鍵(jian)詞進(jin)行查詢,就(jiu)參加培訓(xun)或(huo)看書,開(kai)始“學(xue)習(xi)起來(lai)”。對于(yu)有計(ji)算機閱歷的(de)(de)(de)(de)人,往(wang)往(wang)選擇(ze)(ze)一(yi)(yi)個嵌(qian)(qian)(qian)(qian)入(ru)(ru)式(shi)(shi)(shi)操作(zuo)(zuo)系(xi)統(tong)(tong)就(jiu)開(kai)始學(xue)習(xi)了(le)。這(zhe)有點像(xiang)“瞎子摸大象”,只了(le)解其一(yi)(yi)個側面(mian)。這(zhe)樣如(ru)(ru)何能對嵌(qian)(qian)(qian)(qian)入(ru)(ru)式(shi)(shi)(shi)產品(pin)(pin)的(de)(de)(de)(de)開(kai)發(fa)過程有全面(mian)了(le)解呢?針對許(xu)多(duo)(duo)初學(xue)者(zhe)選擇(ze)(ze)“XXX嵌(qian)(qian)(qian)(qian)入(ru)(ru)式(shi)(shi)(shi)操作(zuo)(zuo)系(xi)統(tong)(tong)+XXX處理器(qi)”的(de)(de)(de)(de)嵌(qian)(qian)(qian)(qian)入(ru)(ru)式(shi)(shi)(shi)系(xi)統(tong)(tong)入(ru)(ru)門學(xue)習(xi)模式(shi)(shi)(shi),筆者(zhe)認為(wei)是(shi)(shi)(shi)不(bu)(bu)合適的(de)(de)(de)(de)。筆者(zhe)的(de)(de)(de)(de)建議是(shi)(shi)(shi):首先把嵌(qian)(qian)(qian)(qian)入(ru)(ru)式(shi)(shi)(shi)系(xi)統(tong)(tong)軟件(jian)與硬件(jian)基礎打好了(le),再根(gen)據實(shi)際需(xu)要(yao)(yao),選擇(ze)(ze)一(yi)(yi)種實(shi)時(shi)操作(zuo)(zuo)系(xi)統(tong)(tong)(RTOS)進(jin)行學(xue)習(xi)實(shi)踐。要(yao)(yao)記住:RTOS是(shi)(shi)(shi)開(kai)發(fa)某些類嵌(qian)(qian)(qian)(qian)入(ru)(ru)式(shi)(shi)(shi)產品(pin)(pin)的(de)(de)(de)(de)輔助工具(ju),是(shi)(shi)(shi)手段(duan),不(bu)(bu)是(shi)(shi)(shi)目的(de)(de)(de)(de);許(xu)多(duo)(duo)類嵌(qian)(qian)(qian)(qian)入(ru)(ru)式(shi)(shi)(shi)產品(pin)(pin),并(bing)不(bu)(bu)需(xu)要(yao)(yao)RTOS。所以,一(yi)(yi)開(kai)始就(jiu)學(xue)習(xi)RTOS,并(bing)不(bu)(bu)符(fu)合“由淺(qian)入(ru)(ru)深(shen)、循序漸進(jin)”的(de)(de)(de)(de)學(xue)習(xi)規律。

 RTOS本身由(you)于種類繁多(duo),實際使(shi)(shi)用何(he)種RTOS,一般需要(yao)由(you)工(gong)作單位確定。基礎階段主要(yao)學習RTOS的(de)基本原(yuan)理與RTOS上的(de)軟件開發方法,而不(bu)是學習如何(he)設計RTOS。以開發實際嵌(qian)入式產品為(wei)目標的(de)學習者,不(bu)要(yao)把過多(duo)的(de)精(jing)力(li)(li)花(hua)在(zai)設計或移植RTOS上面(mian)。正如很多(duo)人使(shi)(shi)用Windows操作系統,而設計 Windows操作系統的(de)只(zhi)有Microsoft。許(xu)多(duo)人“研究”Linux,但不(bu)使(shi)(shi)用它,浪費(fei)了(le)時間(jian)。人的(de)精(jing)力(li)(li)是有限(xian)的(de),學習必須有所選擇。

2.2 硬件(jian)與(yu)軟件(jian)的(de)困惑

    以MCU為(wei)核心的(de)嵌(qian)(qian)入(ru)式(shi)技(ji)術(shu)的(de)知識(shi)體(ti)(ti)系(xi)必須(xu)通(tong)過具體(ti)(ti)的(de)MCU來體(ti)(ti)現、實踐。但是,選(xuan)擇(ze)任何型號的(de)MCU,其芯片相(xiang)關的(de)知識(shi)只占(zhan)知識(shi)體(ti)(ti)系(xi)的(de)20%左右(you),80%左右(you)是通(tong)用的(de)軟件硬件及相(xiang)關知識(shi)。80%的(de)通(tong)用知識(shi),必須(xu)通(tong)過具體(ti)(ti)實踐才能獲(huo)得,所以學(xue)習嵌(qian)(qian)入(ru)式(shi)技(ji)術(shu)一般要選(xuan)擇(ze)一個系(xi)列的(de)MCU。

    系(xi)(xi)(xi)統(tong)含有(you)硬件(jian)與(yu)(yu)軟件(jian)兩大部分,它們之間的(de)(de)關系(xi)(xi)(xi)如何?有(you)些學者,僅(jin)從(cong)電子的(de)(de)角度認(ren)識嵌入(ru)(ru)(ru)(ru)式(shi)(shi)(shi)(shi)系(xi)(xi)(xi)統(tong)。認(ren)為(wei)“嵌入(ru)(ru)(ru)(ru)式(shi)(shi)(shi)(shi)系(xi)(xi)(xi)統(tong)=MCU硬件(jian)系(xi)(xi)(xi)統(tong)+小(xiao)程序(xu)”。這些學者大多具有(you)良好的(de)(de)電子技術(shu)(shu)基礎知識。實際情(qing)況(kuang)是(shi)(shi),早期MCU內(nei)部RAM小(xiao),程序(xu)存儲器(qi)外接(jie),需(xu)要(yao)外擴(kuo)各種I/O,沒有(you)像USB、嵌入(ru)(ru)(ru)(ru)式(shi)(shi)(shi)(shi)以太(tai)網等這樣(yang)較復雜(za)的(de)(de)接(jie)口。因此,程序(xu)占總設計量比例小(xiao)于50%,使人們認(ren)為(wei)嵌入(ru)(ru)(ru)(ru)式(shi)(shi)(shi)(shi)系(xi)(xi)(xi)統(tong)(單片(pian)機)是(shi)(shi)“電子系(xi)(xi)(xi)統(tong)”,以硬件(jian)為(wei)主,程序(xu)為(wei)輔(fu)。但是(shi)(shi),隨著MCU制造技術(shu)(shu)的(de)(de)發(fa)展,不(bu)僅(jin).MCU內(nei)部RAM越來越大,Flash進入(ru)(ru)(ru)(ru)MCU內(nei)部改變了(le)傳統(tong)的(de)(de)嵌入(ru)(ru)(ru)(ru)式(shi)(shi)(shi)(shi)系(xi)(xi)(xi)統(tong)開發(fa)與(yu)(yu)調試方式(shi)(shi)(shi)(shi),固件(jian)程序(xu)可以更方便地調試與(yu)(yu)在線升(sheng)級,許多情(qing)況(kuang)下與(yu)(yu)開發(fa) PC機程序(xu)的(de)(de)方便程度相差(cha)無幾(ji),只不(bu)過開發(fa)環境(jing)與(yu)(yu)運行環境(jing)不(bu)是(shi)(shi)同一載體而已(yi)。這使得嵌入(ru)(ru)(ru)(ru)式(shi)(shi)(shi)(shi)系(xi)(xi)(xi)統(tong)的(de)(de)軟件(jian)硬件(jian)設計方法發(fa)生了(le)根本變化(hua)。

    有些(xie)學者(zhe)(zhe),僅(jin)(jin)從軟(ruan)(ruan)(ruan)件(jian)(jian)(jian)(jian)(jian)(jian)開發(fa)角度認識(shi)嵌(qian)(qian)入(ru)式(shi)(shi)系統(tong)(tong),甚(shen)至僅(jin)(jin)從嵌(qian)(qian)入(ru)式(shi)(shi)操作系統(tong)(tong)認識(shi)嵌(qian)(qian)入(ru)式(shi)(shi)系統(tong)(tong)。這些(xie)學者(zhe)(zhe)大(da)多具有良好的(de)(de)(de)計(ji)算機軟(ruan)(ruan)(ruan)件(jian)(jian)(jian)(jian)(jian)(jian)開發(fa)基礎知識(shi),認為(wei)硬(ying)(ying)件(jian)(jian)(jian)(jian)(jian)(jian)是(shi)生(sheng)產廠商的(de)(de)(de)事。他們(men)沒(mei)(mei)有認識(shi)到,嵌(qian)(qian)入(ru)式(shi)(shi)系統(tong)(tong)產品的(de)(de)(de)軟(ruan)(ruan)(ruan)件(jian)(jian)(jian)(jian)(jian)(jian)與硬(ying)(ying)件(jian)(jian)(jian)(jian)(jian)(jian)均(jun)是(shi)需要(yao)開發(fa)者(zhe)(zhe)設(she)計(ji)的(de)(de)(de)。筆者(zhe)(zhe)常常接(jie)到一(yi)(yi)些(xie)關于(yu)嵌(qian)(qian)入(ru)式(shi)(shi)產品穩(wen)定性的(de)(de)(de)咨詢,發(fa)現大(da)多數是(shi)由(you)于(yu)軟(ruan)(ruan)(ruan)件(jian)(jian)(jian)(jian)(jian)(jian)開發(fa)者(zhe)(zhe)對(dui)底層(ceng)硬(ying)(ying)件(jian)(jian)(jian)(jian)(jian)(jian)的(de)(de)(de)基本原(yuan)理不(bu)理解(jie)。特別是(shi)有些(xie)功(gong)(gong)能(neng)(neng)軟(ruan)(ruan)(ruan)件(jian)(jian)(jian)(jian)(jian)(jian)開發(fa)者(zhe)(zhe),過分(fen)(fen)依賴于(yu)底層(ceng)硬(ying)(ying)件(jian)(jian)(jian)(jian)(jian)(jian)的(de)(de)(de)驅(qu)(qu)動(dong)(dong)軟(ruan)(ruan)(ruan)件(jian)(jian)(jian)(jian)(jian)(jian),自(zi)己對(dui)底層(ceng)驅(qu)(qu)動(dong)(dong)原(yuan)理知之甚(shen)少(shao)。實(shi)際上(shang),一(yi)(yi)些(xie)功(gong)(gong)能(neng)(neng)軟(ruan)(ruan)(ruan)件(jian)(jian)(jian)(jian)(jian)(jian)開發(fa)者(zhe)(zhe),名(ming)義上(shang)在(zai)做嵌(qian)(qian)入(ru)式(shi)(shi)軟(ruan)(ruan)(ruan)件(jian)(jian)(jian)(jian)(jian)(jian),其(qi)實(shi)僅(jin)(jin)僅(jin)(jin)是(shi)使用嵌(qian)(qian)入(ru)式(shi)(shi)編輯(ji)、編譯(yi)環境而(er)(er)已,本質與開發(fa)通(tong)用PC機軟(ruan)(ruan)(ruan)件(jian)(jian)(jian)(jian)(jian)(jian)沒(mei)(mei)有兩(liang)樣。而(er)(er)底層(ceng)硬(ying)(ying)件(jian)(jian)(jian)(jian)(jian)(jian)驅(qu)(qu)動(dong)(dong)軟(ruan)(ruan)(ruan)件(jian)(jian)(jian)(jian)(jian)(jian)的(de)(de)(de)開發(fa),若不(bu)全(quan)面考慮高(gao)(gao)層(ceng)功(gong)(gong)能(neng)(neng)軟(ruan)(ruan)(ruan)件(jian)(jian)(jian)(jian)(jian)(jian)對(dui)底層(ceng)硬(ying)(ying)件(jian)(jian)(jian)(jian)(jian)(jian)的(de)(de)(de)可(ke)能(neng)(neng)調用,也(ye)會使封裝或參數設(she)計(ji)得(de)不(bu)合理或不(bu)完備(bei),導致高(gao)(gao)層(ceng)功(gong)(gong)能(neng)(neng)軟(ruan)(ruan)(ruan)件(jian)(jian)(jian)(jian)(jian)(jian)調用困難。可(ke)以(yi)看出(chu)(chu),若把(ba)嵌(qian)(qian)入(ru)式(shi)(shi)系統(tong)(tong)的(de)(de)(de)開發(fa)孤(gu)立地分(fen)(fen)為(wei)硬(ying)(ying)件(jian)(jian)(jian)(jian)(jian)(jian)設(she)計(ji)、底層(ceng)硬(ying)(ying)件(jian)(jian)(jian)(jian)(jian)(jian)驅(qu)(qu)動(dong)(dong)軟(ruan)(ruan)(ruan)件(jian)(jian)(jian)(jian)(jian)(jian)設(she)計(ji)、高(gao)(gao)層(ceng)功(gong)(gong)能(neng)(neng)軟(ruan)(ruan)(ruan)件(jian)(jian)(jian)(jian)(jian)(jian)設(she)計(ji),那么一(yi)(yi)旦出(chu)(chu)現問(wen)題,就可(ke)能(neng)(neng)難以(yi)定位。實(shi)際上(shang),嵌(qian)(qian)入(ru)式(shi)(shi)系統(tong)(tong)設(she)計(ji)是(shi)一(yi)(yi)個軟(ruan)(ruan)(ruan)件(jian)(jian)(jian)(jian)(jian)(jian)、硬(ying)(ying)件(jian)(jian)(jian)(jian)(jian)(jian)協同設(she)計(ji)工(gong)程,不(bu)能(neng)(neng)像通(tong)用計(ji)算機那樣,軟(ruan)(ruan)(ruan)件(jian)(jian)(jian)(jian)(jian)(jian)、硬(ying)(ying)件(jian)(jian)(jian)(jian)(jian)(jian)完全(quan)分(fen)(fen)開來看,而(er)(er)要(yao)在(zai)一(yi)(yi)個大(da)的(de)(de)(de)框架內協調工(gong)作。

    學習嵌(qian)入(ru)式系統是以(yi)軟(ruan)(ruan)件(jian)(jian)(jian)(jian)為主(zhu)還(huan)是以(yi)硬(ying)件(jian)(jian)(jian)(jian)為主(zhu),或(huo)者如何選擇切入(ru)點,如何在(zai)軟(ruan)(ruan)件(jian)(jian)(jian)(jian)與(yu)硬(ying)件(jian)(jian)(jian)(jian)之(zhi)間(jian)取(qu)得(de)平衡?對(dui)于這(zhe)個困惑的(de)建議是:要(yao)想成為一名真正的(de)嵌(qian)入(ru)式系統設計師,在(zai)初學階段,必須打(da)好嵌(qian)入(ru)式系統的(de)硬(ying)件(jian)(jian)(jian)(jian)與(yu)軟(ruan)(ruan)件(jian)(jian)(jian)(jian)基(ji)礎。以(yi)下(xia)是從事(shi)嵌(qian)入(ru)式系統設計二(er)十多年的(de)美國(guo)學者JohnCatsoulis在(zai)《Designing Embedded Hardware》一書中關(guan)于這(zhe)個問題的(de)總結:嵌(qian)入(ru)式系統與(yu)硬(ying)件(jian)(jian)(jian)(jian)緊密(mi)相關(guan),是軟(ruan)(ruan)件(jian)(jian)(jian)(jian)與(yu)硬(ying)件(jian)(jian)(jian)(jian)的(de)綜合體(ti),沒有對(dui)硬(ying)件(jian)(jian)(jian)(jian)的(de)理(li)解(jie)就不可能寫好嵌(qian)入(ru)式軟(ruan)(ruan)件(jian)(jian)(jian)(jian);同樣,沒有對(dui)軟(ruan)(ruan)件(jian)(jian)(jian)(jian)的(de)理(li)解(jie)也不可能設計好嵌(qian)入(ru)式硬(ying)件(jian)(jian)(jian)(jian)。

2.3 片(pian)面認(ren)識嵌(qian)入式系統

 ;   嵌入(ru)式(shi)系(xi)(xi)統(tong)產品種類(lei)繁多,應用(yong)領域各異(yi)。在第(di)1部(bu)分中,把嵌入(ru)式(shi)系(xi)(xi)統(tong)的(de)(de)(de)應用(yong)范圍粗略分為電(dian)子系(xi)(xi)統(tong)的(de)(de)(de)智能化與計(ji)(ji)算(suan)機(ji)應用(yong)的(de)(de)(de)延伸兩(liang)(liang)大類(lei)。從初(chu)學者角度,可(ke)能存(cun)在分別(bie)從這兩(liang)(liang)個角度片面認(ren)識(shi)嵌入(ru)式(shi)系(xi)(xi)統(tong)的(de)(de)(de)問題。因此,一些從電(dian)子系(xi)(xi)統(tong)智能化角度認(ren)識(shi)嵌入(ru)式(shi)系(xi)(xi)統(tong)的(de)(de)(de)學習者,可(ke)能會(hui)忽(hu)視編(bian)程(cheng)(cheng)結構、編(bian)程(cheng)(cheng)規范、軟件工程(cheng)(cheng)的(de)(de)(de)要求、操作(zuo)系(xi)(xi)統(tong)等知(zhi)識(shi)的(de)(de)(de)積(ji)累。另一些從計(ji)(ji)算(suan)機(ji)應用(yong)的(de)(de)(de)延伸角度認(ren)識(shi)嵌入(ru)式(shi)系(xi)(xi)統(tong)的(de)(de)(de)學習者,可(ke)能會(hui)把通(tong)用(yong)計(ji)(ji)算(suan)機(ji)學習過程(cheng)(cheng)中的(de)(de)(de)概念與方法生搬硬套到(dao)嵌入(ru)式(shi)系(xi)(xi)統(tong)的(de)(de)(de)實(shi)踐中,忽(hu)視嵌入(ru)式(shi)系(xi)(xi)統(tong)與通(tong)用(yong)計(ji)(ji)算(suan)機(ji)的(de)(de)(de)差異(yi)。

    實(shi)(shi)(shi)(shi)際(ji)(ji)上(shang)(shang),在(zai)嵌入(ru)(ru)式(shi)(shi)(shi)系(xi)(xi)(xi)統(tong)(tong)(tong)學(xue)(xue)習(xi)與實(shi)(shi)(shi)(shi)踐(jian)(jian)(jian)的(de)(de)(de)初始(shi)階(jie)段,應(ying)(ying)該(gai)充分(fen)了解嵌入(ru)(ru)式(shi)(shi)(shi)系(xi)(xi)(xi)統(tong)(tong)(tong)的(de)(de)(de)特點,根據自(zi)(zi)身(shen)的(de)(de)(de)已有(you)(you)知識(shi)(shi)(shi)結(jie)構(gou),制定(ding)適合自(zi)(zi)身(shen)情況的(de)(de)(de)學(xue)(xue)習(xi)計劃(hua)。目(mu)標(biao)應(ying)(ying)該(gai)是(shi)打好(hao)嵌入(ru)(ru)式(shi)(shi)(shi)系(xi)(xi)(xi)統(tong)(tong)(tong)的(de)(de)(de)硬件(jian)與軟件(jian)基礎,通(tong)(tong)過(guo)實(shi)(shi)(shi)(shi)踐(jian)(jian)(jian),為(wei)成(cheng)為(wei)良好(hao)的(de)(de)(de)嵌入(ru)(ru)式(shi)(shi)(shi)系(xi)(xi)(xi)統(tong)(tong)(tong)設(she)計師建立起基本知識(shi)(shi)(shi)結(jie)構(gou)。學(xue)(xue)習(xi)過(guo)程中,具(ju)體(ti)(ti)(ti)應(ying)(ying)用系(xi)(xi)(xi)統(tong)(tong)(tong)可(ke)為(wei)實(shi)(shi)(shi)(shi)踐(jian)(jian)(jian)載體(ti)(ti)(ti),但不(bu)(bu)能(neng)拘(ju)泥于(yu)具(ju)體(ti)(ti)(ti)系(xi)(xi)(xi)統(tong)(tong)(tong),應(ying)(ying)該(gai)有(you)(you)一(yi)(yi)(yi)定(ding)的(de)(de)(de)抽象(xiang)與歸納。例如,初學(xue)(xue)者開發實(shi)(shi)(shi)(shi)際(ji)(ji)控制系(xi)(xi)(xi)統(tong)(tong)(tong)時(shi)(shi)(shi)沒有(you)(you)使用實(shi)(shi)(shi)(shi)時(shi)(shi)(shi)操(cao)作(zuo)系(xi)(xi)(xi)統(tong)(tong)(tong),但不(bu)(bu)要(yao)(yao)認(ren)為(wei)實(shi)(shi)(shi)(shi)時(shi)(shi)(shi)操(cao)作(zuo)系(xi)(xi)(xi)統(tong)(tong)(tong)不(bu)(bu)需(xu)要(yao)(yao)學(xue)(xue)習(xi)。又例如,初學(xue)(xue)者可(ke)以一(yi)(yi)(yi)個(ge)(ge)帶(dai)有(you)(you)實(shi)(shi)(shi)(shi)時(shi)(shi)(shi)操(cao)作(zuo)系(xi)(xi)(xi)統(tong)(tong)(tong)的(de)(de)(de)樣例為(wei)藍本進(jin)行學(xue)(xue)習(xi),但不(bu)(bu)要(yao)(yao)認(ren)為(wei)任何(he)嵌入(ru)(ru)式(shi)(shi)(shi)系(xi)(xi)(xi)統(tong)(tong)(tong)都需(xu)要(yao)(yao)實(shi)(shi)(shi)(shi)時(shi)(shi)(shi)操(cao)作(zuo)系(xi)(xi)(xi)統(tong)(tong)(tong),甚至為(wei)一(yi)(yi)(yi)個(ge)(ge)十分(fen)簡明的(de)(de)(de)實(shi)(shi)(shi)(shi)際(ji)(ji)系(xi)(xi)(xi)統(tong)(tong)(tong)加上(shang)(shang)不(bu)(bu)必(bi)要(yao)(yao)的(de)(de)(de)實(shi)(shi)(shi)(shi)時(shi)(shi)(shi)操(cao)作(zuo)系(xi)(xi)(xi)統(tong)(tong)(tong)。因此,片面認(ren)識(shi)(shi)(shi)嵌入(ru)(ru)式(shi)(shi)(shi)系(xi)(xi)(xi)統(tong)(tong)(tong),可(ke)能(neng)導致學(xue)(xue)習(xi)困惑(huo)。應(ying)(ying)該(gai)根據實(shi)(shi)(shi)(shi)際(ji)(ji)項目(mu)需(xu)要(yao)(yao),鍛煉自(zi)(zi)己分(fen)析實(shi)(shi)(shi)(shi)際(ji)(ji)問題、解決問題的(de)(de)(de)能(neng)力。這是(shi)一(yi)(yi)(yi)個(ge)(ge)長期(qi)的(de)(de)(de)學(xue)(xue)習(xi)與實(shi)(shi)(shi)(shi)踐(jian)(jian)(jian)過(guo)程,不(bu)(bu)能(neng)期(qi)望通(tong)(tong)過(guo)短期(qi)培訓完成(cheng)整體(ti)(ti)(ti)知識(shi)(shi)(shi)體(ti)(ti)(ti)系(xi)(xi)(xi)的(de)(de)(de)建立,應(ying)(ying)該(gai)重視(shi)自(zi)(zi)身(shen)實(shi)(shi)(shi)(shi)踐(jian)(jian)(jian),全面地(di)理解嵌入(ru)(ru)式(shi)(shi)(shi)系(xi)(xi)(xi)統(tong)(tong)(tong)的(de)(de)(de)知識(shi)(shi)(shi)體(ti)(ti)(ti)系(xi)(xi)(xi)。

2.4 入(ru)門芯片選擇(ze)的困惑

    嵌(qian)入(ru)(ru)式系(xi)統的大部分(fen)初學者需要選擇(ze)一個微控制(zhi)器(MCU)進行入(ru)(ru)門級學習,面(mian)對(dui)眾多(duo)廠(chang)家生產的微控制(zhi)器系(xi)列,往往不(bu)知如何是好。

    首(shou)(shou)先是關于位(wei)數(shu)(shu)問題,目前(qian)主(zhu)要(yao)有(you)8位(wei)、16位(wei)和32位(wei)MCU。不同(tong)位(wei)數(shu)(shu)的(de)MCU各有(you)應(ying)用領(ling)域,這(zhe)一點與通(tong)用微機有(you)很大(da)不同(tong)。例(li)如做一個遙(yao)控器,不需要(yao)使用 32位(wei)MCU,否則MCU芯(xin)(xin)(xin)片(pian)價(jia)(jia)格(ge)就(jiu)已經超(chao)過遙(yao)控器價(jia)(jia)格(ge)需求。對(dui)于首(shou)(shou)次(ci)接觸嵌入(ru)式系統的(de)學(xue)(xue)習者,可以根(gen)據自己(ji)的(de)知(zhi)識基礎(chu)選(xuan)(xuan)擇(ze)入(ru)門芯(xin)(xin)(xin)片(pian)的(de)位(wei)數(shu)(shu)。建議(yi)大(da)多數(shu)(shu)初學(xue)(xue)者選(xuan)(xuan)擇(ze)8位(wei)MCU作為快速入(ru)門芯(xin)(xin)(xin)片(pian),了(le)解一些(xie)匯編與底層硬件(jian)知(zhi)識,之后再選(xuan)(xuan)16位(wei)或32位(wei)芯(xin)(xin)(xin)片(pian)進(jin)行學(xue)(xue)習實踐。

    關于芯(xin)片(pian)(pian)(pian)選(xuan)(xuan)擇(ze)的(de)另一個誤(wu)區是認為有“主流芯(xin)片(pian)(pian)(pian)”存在,嵌入式系統也可(ke)(ke)以形成(cheng)芯(xin)片(pian)(pian)(pian)壟斷。這完全是一種誤(wu)解,是套用(yong)通用(yong)計算(suan)機系統的(de)思維(wei)模式,而忽視(shi)了嵌入式系統應(ying)用(yong)的(de)多樣性。關于學(xue)(xue)習(xi)芯(xin)片(pian)(pian)(pian)選(xuan)(xuan)擇(ze)還有一個誤(wu)區,即誤(wu)認為選(xuan)(xuan)擇(ze)工作頻率(lv)(lv)高(gao)的(de)芯(xin)片(pian)(pian)(pian)進行入門學(xue)(xue)習(xi),更先進。實際上,工作頻率(lv)(lv)高(gao)可(ke)(ke)能給初學(xue)(xue)者(zhe)帶(dai)來不少困難(nan)。

    實(shi)際嵌入(ru)式系統(tong)(tong)設計不(bu)是追求(qiu)芯片位數、工(gong)作(zuo)頻率、操作(zuo)系統(tong)(tong)等因素,而是追求(qiu)穩定可靠、維護、升級、功耗、價格等指(zhi)標。初(chu)學者選擇入(ru)門芯片,是通過某(mou)一: MCU作(zuo)為(wei)藍本,獲得嵌入(ru)式系統(tong)(tong)知識體系的通用基(ji)礎。其基(ji)本原則是:入(ru)門時間(jian)較(jiao)短、硬件成本較(jiao)低,知識要素較(jiao)多,學習難度(du)較(jiao)低。

3 基礎階段的學習建(jian)議

    基(ji)(ji)于(yu)以上討論,下面對廣大渴望學(xue)(xue)習嵌入式(shi)系統的學(xue)(xue)子提出(chu)幾點基(ji)(ji)礎(chu)階段的學(xue)(xue)習建議:

    ①嵌(qian)入式(shi)系統軟(ruan)件(jian)硬件(jian)密切相關,一(yi)定要(yao)打好軟(ruan)硬件(jian)基礎。其實(shi),只要(yao)找到正(zheng)確的方法,加(jia)上努力,任何理工科學(xue)生(sheng),甚至非理工科學(xue)生(sheng),都能學(xue)好嵌(qian)入式(shi)系統。

    ②選擇(ze)一個芯片及(ji)硬件評估(gu)板(ban)(入(ru)門芯片最好(hao)簡單一點,例如8位MCU)、選擇(ze)一本(ben)好(hao)書(shu)(最好(hao)有(you)(you)(you)規(gui)范的(de)(de)例子)、找(zhao)一位好(hao)老(lao)師(shi)(shi)(shi)(最好(hao)是(shi)有(you)(you)(you)經驗(yan)(yan)且熱心的(de)(de))。硬件評估(gu)板(ban)的(de)(de)價格一定(ding)要在1000元以下,不(bu)(bu)要太(tai)貴(gui),最好(hao)能(neng)有(you)(you)(you)自己(ji)動手的(de)(de)空(kong)間。不(bu)(bu)花一分硬件錢想(xiang)要學(xue)好(hao)嵌入(ru)式系(xi)統(tong)不(bu)(bu)實際(ji),因為這是(shi)實踐(jian)性很強的(de)(de)學(xue)科。好(hao)書(shu),可以讓人(ren)少(shao)走彎路,不(bu)(bu)被誤導(dao)。好(hao)老(lao)師(shi)(shi)(shi)也(ye)可以是(shi)做(zuo)過一些實際(ji)項目(mu)的(de)(de)學(xue)長(一定(ding)要找(zhao)做(zuo)過幾(ji)個成功項目(mu)的(de)(de)學(xue)長或老(lao)師(shi)(shi)(shi)做(zuo)指導(dao),否則經驗(yan)(yan)不(bu)(bu)足也(ye)可能(neng)誤導(dao)),有(you)(you)(you)教(jiao)(jiao)師(shi)(shi)(shi)指導(dao),學(xue)習(xi)進程會加快(人(ren)工智能(neng)學(xue)科里(li)有(you)(you)(you)個術(shu)語叫無教(jiao)(jiao)師(shi)(shi)(shi)指導(dao)學(xue)習(xi)模(mo)(mo)式與有(you)(you)(you)教(jiao)(jiao)師(shi)(shi)(shi)指導(dao)學(xue)習(xi)模(mo)(mo)式,無教(jiao)(jiao)師(shi)(shi)(shi)指導(dao)學(xue)習(xi)模(mo)(mo)式比有(you)(you)(you)教(jiao)(jiao)師(shi)(shi)(shi)指導(dao)學(xue)習(xi)模(mo)(mo)式復雜許(xu)多(duo)。

    ③許多人怕(pa)硬(ying)件(jian)(jian),其(qi)實嵌(qian)入(ru)式(shi)系(xi)統硬(ying)件(jian)(jian)比(bi)電(dian)子線路好學(xue)多了(le)。只要深入(ru)理解:MCU的硬(ying)件(jian)(jian)最小系(xi)統,對I/O口、串(chuan)行通信、鍵盤、LED、LCD、SPI、 I2C、PWM、A/D(包括一(yi)些傳感器)、D/A等(deng)逐個實驗理解,逐步實踐,再通過動(dong)手做一(yi)個實際的小系(xi)統,底層硬(ying)件(jian)(jian)基礎就有(you)了(le)。各(ge)個硬(ying)件(jian)(jian)模(mo)塊(kuai)驅動(dong)程序(xu)的編(bian)寫是嵌(qian)入(ru)式(shi)系(xi)統的必(bi)備基礎。學(xue)習嵌(qian)入(ru)式(shi)系(xi)統的初期,這個過程是必(bi)須的。

    ④至于(yu)嵌(qian)入(ru)(ru)式(shi)實(shi)(shi)(shi)時(shi)操(cao)作(zuo)系(xi)(xi)統(tong)RTOS,一(yi)(yi)定不要(yao)一(yi)(yi)開始(shi)就學(xue),這(zhe)樣會走(zou)很多彎路,也(ye)會使你對嵌(qian)入(ru)(ru)式(shi)系(xi)(xi)統(tong)感到(dao)畏懼(ju)。等(deng)你軟(ruan)件硬(ying)件基礎打好了(le),再學(xue)習(xi)就感到(dao)容易理解(jie)。實(shi)(shi)(shi)際(ji)上(shang),許多嵌(qian)入(ru)(ru)式(shi)應用并不需要(yao)操(cao)作(zuo)系(xi)(xi)統(tong)。也(ye)可以(yi)根據實(shi)(shi)(shi)際(ji)項目需要(yao),再學(xue)習(xi)特定的RTOS。不要(yao)被一(yi)(yi)些嵌(qian)入(ru)(ru)式(shi)實(shi)(shi)(shi)時(shi)操(cao)作(zuo)系(xi)(xi)統(tong)培訓班(ban)的宣(xuan)傳所誤導,而忽視實(shi)(shi)(shi)際(ji)嵌(qian)入(ru)(ru)式(shi)系(xi)(xi)統(tong)軟(ruan)硬(ying)件基礎知(zhi)識的學(xue)習(xi)。

    ⑤要(yao)(yao)避免(mian)片(pian)面地單純(chun)從“電子”或“計(ji)算機軟(ruan)件(jian)”角度(du)認識嵌入式系統。前面說(shuo)過,嵌入式系統是軟(ruan)件(jian)與硬(ying)件(jian)的(de)綜合體(ti)。因此,要(yao)(yao)逐步(bu)從MCU的(de)最小(xiao)系統開始,一(yi)點(dian)一(yi)點(dian)理解硬(ying)件(jian)原理及底層(ceng)硬(ying)件(jian)驅動編(bian)(bian)程方法。要(yao)(yao)通過規(gui)范的(de)例子,理解軟(ruan)件(jian)工程封(feng)(feng)裝、可復用等思想(xiang)。通過規(gui)范編(bian)(bian)程,積累底層(ceng)構件(jian)(component),也就是一(yi)個一(yi)個模塊;但是要(yao)(yao)封(feng)(feng)裝得比較好,可復用。

    ⑥注重實驗(yan)與實踐。這里(li)說(shuo)的實驗(yan)主(zhu)要指通過重復來驗(yan)證他人(ren)的工(gong)作,目的是學習基礎知識,這個(ge)過程一(yi)定要經歷。實踐是自己設計,有具體的“產(chan)品”目標。如果花500元左右,自己做一(yi)個(ge)具有一(yi)定功能的小產(chan)品,且能穩定運行(xing)1年以上(shang),就(jiu)可以說(shuo)接近入(ru)門了。

    ⑦關于入(ru)門芯(xin)(xin)(xin)片的(de)選(xuan)擇。不(bu)要(yao)選(xuan)太復雜的(de)微(wei)控制器(qi)作(zuo)為入(ru)門芯(xin)(xin)(xin)片,不(bu)能超越學(xue)習(xi)過程。不(bu)要(yao)一下子學(xue)習(xi)幾種芯(xin)(xin)(xin)片。可(ke)以(yi)通過一個(ge)芯(xin)(xin)(xin)片入(ru)門,并具有一個(ge)實(shi)踐經驗后,根據(ju)實(shi)際(ji)(ji)需要(yao)選(xuan)擇芯(xin)(xin)(xin)片開發實(shi)際(ji)(ji)產品。注(zhu)意(yi),不(bu)要(yao)把微(wei)處理器(qi)(MPU與微(wei)控制器(qi)(MCU)概念相混淆,微(wei)處理器(qi)只是微(wei)控制器(qi)的(de)內核。

    ⑧關(guan)于嵌入(ru)式(shi)(shi)操(cao)作系統的選擇(ze)。可以等到具有一定(ding)實(shi)踐基礎后,選擇(ze)一個簡(jian)單、容易理解原理的嵌入(ru)式(shi)(shi)操(cao)作系統進行學(xue)習(xi)(xi)。不(bu)(bu)要(yao)一開(kai)始(shi)就學(xue)習(xi)(xi)幾種操(cao)作系統,理解了基本原理,實(shi)踐中確有實(shi)際(ji)需要(yao)再(zai)學(xue)習(xi)(xi)也不(bu)(bu)遲。人(ren)總是要(yao)不(bu)(bu)斷學(xue)習(xi)(xi)的。

    ⑨關于(yu)匯編(bian)語(yu)言(yan)與C語(yu)言(yan)的(de)取舍(she)。隨著:MCU對C編(bian)譯的(de)優化(hua)支持(chi),對于(yu)匯編(bian)語(yu)言(yan)可(ke)以只了解幾(ji)個(ge)必(bi)(bi)要的(de)語(yu)句,而直接使(shi)用(yong)c語(yu)言(yan)編(bian)程(cheng)。但必(bi)(bi)須通過(guo)第一個(ge)程(cheng)序(xu)理解芯片初始化(hua)過(guo)程(cheng)、中(zhong)斷(duan)機制(zhi)、程(cheng)序(xu)存儲情況等,區(qu)別于(yu)PC機程(cheng)序(xu)的(de)內容。另(ling)外,為了測(ce)試的(de)需要,最(zui)好掌握一門(men)PC機編(bian)程(cheng)語(yu)言(yan)。

    ⑩要(yao)明(ming)確自己的學(xue)習(xi)目(mu)的,并注(zhu)意學(xue)習(xi)方(fang)(fang)法。要(yao)明(ming)確學(xue)習(xi)目(mu)的是打(da)基(ji)礎,還是為(wei)了(le)適應工作需要(yao)而進行的短訓(xun)。學(xue)習(xi)方(fang)(fang)法方(fang)(fang)面,要(yao)根據學(xue)習(xi)目(mu)的選(xuan)擇合適的學(xue)習(xi)途徑,注(zhu)意理論學(xue)習(xi)與(yu)(yu)實(shi)踐、通用知(zhi)(zhi)識與(yu)(yu)芯片(pian)相關知(zhi)(zhi)識、硬件(jian)(jian)(jian)知(zhi)(zhi)識與(yu)(yu)軟(ruan)件(jian)(jian)(jian)知(zhi)(zhi)識的平衡,要(yao)在理解(jie)(jie)軟(ruan)件(jian)(jian)(jian)工程基(ji)本(ben)(ben)原理基(ji)礎上(shang)理解(jie)(jie)硬件(jian)(jian)(jian)構件(jian)(jian)(jian)與(yu)(yu)軟(ruan)件(jian)(jian)(jian)構件(jian)(jian)(jian)等(deng)基(ji)本(ben)(ben)概念。

    以上建(jian)議(yi),僅(jin)供初學(xue)(xue)者參考。當然,以上只是基礎階段的(de)學(xue)(xue)習建(jian)議(yi)。要成為良(liang)好的(de)嵌入(ru)式系統設計師(shi),還需(xu)要在實(shi)際(ji)項目中鍛(duan)煉(lian),并不斷學(xue)(xue)習與積累(lei)經(jing)驗。

上一篇:關鍵字static在嵌入式系統中有什么作用?

下一篇:人工智能對學歷有一定的要求,但不能說限制非常大,以下從不同方面進行分析:

戳(chuo)我查看嵌入式每月就業風云榜

點我了解華(hua)清(qing)遠(yuan)見高校學霸學習(xi)秘籍

猜你關心(xin)企業是如(ru)何(he)評(ping)價華清(qing)學員(yuan)的

干貨分享
相關新聞
前(qian)臺專線:010-82525158 企業(ye)培(pei)訓洽談專線:010-82525379 院(yuan)校合作(zuo)洽(qia)談(tan)專線:010-82525379 Copyright © 2004-2024 北京華清遠見科技發展有限公司 版權所有 ,京ICP備16055225號-5京公海網安備11010802025203號

回到頂部