學習ARM裸機,是一件復(fù)雜事情,入門的概念性和基礎(chǔ)性知識必須要了解到,以便于后面的知識的理解。 ARM概念 ARM首先是一個公司,這家公司設(shè)計CPU并向各個CPU制造商授權(quán)許可,所以ARM公司是一家CPU設(shè)計公司。同時,ARM也是ARM公司主導(dǎo)設(shè)計的CPU系列的簡稱。 ARM版本區(qū)分 ARM版本號可以分為三類: · 內(nèi)核版本號,例如ARMv5,ARMv7,ARMv7a,ARMv8a…… · Soc版本號,例如Cortex-A8,Cortex-A9... · 芯片型號,例如2410,2440,6410,S5PV210... Soc Soc是System on Chip的簡寫,即片上系統(tǒng)。Soc主要包括了CPU中央處理器以及各種外設(shè)模塊,CPU和外設(shè)通過集成電路被安置在一個芯片中。 現(xiàn)在已經(jīng)沒有純粹的CPU了,都是SoC ARM賣的內(nèi)核其實就是CPU(當然還需要總線),各種外設(shè)是半導(dǎo)體廠商自己添加的。 單片機和嵌入式的區(qū)別 平臺區(qū)別: 主流的單片機平臺有51,PIC,STM32,AVR,MSP430, 主流的嵌入式平臺有ARM,PPC,MIPS 資源,價格,應(yīng)用領(lǐng)域 單片機片上資源有限,價格低,應(yīng)用領(lǐng)域大多為小家電,終端設(shè)備。 嵌入式片上資源豐富,價格高,應(yīng)用領(lǐng)域廣泛,基本可以適用于任何領(lǐng)域。 開發(fā)模式 單片機一般都是裸機開發(fā),程序規(guī)模較小,只有在比較高端的芯片上才會使用RTOS 嵌入式開發(fā)一般都會使用嵌入式系統(tǒng) 技術(shù)特征 單片機主要使用C語言和簡單的匯編,而且C語言和標準C略有不同,很少使用C語言的高級特性, 嵌入式比較復(fù)雜,一般會進行分層設(shè)計和開發(fā),分為底層,應(yīng)用層,不同的成冊可能使用不同的開發(fā)語言,例如C++與Java,較多使用C語言的高級特性 CPU設(shè)計原理和總線 CPU主要包括運算器,控制器,存儲器通過總線與Flash與內(nèi)存連接。 總線就類似于CPU中的道路,數(shù)據(jù)通過總線在CPU和外設(shè)之間傳輸,CPU也通過內(nèi)部總線與SOC中的其他外設(shè)連接,例如UART設(shè)備,內(nèi)部總線由于在芯片內(nèi)部,抗干擾能力強,運算速度更快。 總線分為兩種,地址總線和數(shù)據(jù)總線: 地址總線用于傳輸?shù)刂,CPU通過地址總線尋址,告訴設(shè)備要取的數(shù)據(jù)在哪個地址中,地址總線的位數(shù)決定了尋址范圍 數(shù)據(jù)總線用于傳輸數(shù)據(jù),CPU通過數(shù)據(jù)總線與外部交換信息,將設(shè)備要的數(shù)據(jù)通過該總線發(fā)送給對方,數(shù)據(jù)總線的位數(shù)決定了CPU單次通信能交換的信息數(shù)量 總線的速度決定了CPU和外設(shè)互換信息的速度 CPU的地址總線和數(shù)據(jù)總線的位數(shù)可以不同,CPU的位數(shù)就指的是數(shù)據(jù)總線的位數(shù) 32位CPU的尋址范圍是4G所以最多支持4G內(nèi)存,數(shù)據(jù)總線是32位的,那么傳輸一個int和傳輸一個char的效率是一樣的。 4月嵌入式、物聯(lián)網(wǎng),智能硬件新班多多,歡迎有志青年們來信盈達學習技術(shù), 所有課程包學會!包就業(yè)!包你滿意!! 信盈達開設(shè)以下課程,所有課程均可免費體驗:(周末班,全日制班均可) 一.嵌入式arm+linux (多項目,重實戰(zhàn),保就業(yè)) 二.單片機項目實戰(zhàn)班(完成了一個單片機項目你還想做第二個) 三.JAVA (助你升職加薪,走向人生巔峰) 四.電子設(shè)計班(電子行業(yè)的入門基礎(chǔ)課程) 五.PCB畫板班 (硬件工程師必會的電路板繪制課程) 六.Cortex m4 系列課程 (時下中低端產(chǎn)品的主流開發(fā)芯片) 七.Cortex A9,linux驅(qū)動 (開發(fā)高端產(chǎn)品,拿高工資) 想了解更多的課程,歡迎咨詢宋老師QQ3524659088 Tel17317951908 深圳 上海 北京 廣州 南京 南寧 鄭州 濟南同步學習 |