ADS與RealView MDK

ARM 343瀏覽

在 ARM + Linux 培訓班學習,講師一般首先講解用 ADS 或 RealView MDK 去調試 ARM 開發板。原因在于:

1、掌握 ARM 體系結構。ARM 是一種計算機,掌握其體系結構也就是掌握ARM的工作原理。在大學里一般會開設《微機原理》這門課程,講解x86計算機的工作原理,并學習x86匯編語言。因為ARM與x86體系結構上的不同,所以學習ARM+Linux之前,要首先掌握ARM這種計算機的工作原理,并學習ARM匯編語言。

2、掌握ARM匯編語言。眾所周知,匯編語言是低級語言,與計算機硬件關系密切。因為體系結構的不同,ARM匯編語言與x86匯編語言有很大的不同。前幾年有一本書《ARM體系結構與編程》專門講解ARM體系結構與匯編語言,隨著技術的發展,ARM匯編語言的參考書也越來越多。掌握ARM匯編語言是學習 ARM+Linux 的基礎。Linux中匯編語言用得不多,卻都是啟動時必須有的。

3、掌握ARM開發板的原理圖。電路板原理圖是由做硬件的工程師畫的,雖然屬于硬件范疇,但做 ARM+Linux 的軟件工程師是需要能看懂電路板原理圖的,特別是在編寫硬件的Linux驅動程序時,必須看懂開發板電路原理圖。用ADS或MDK調試開發板時,最常做的一個軟件實驗就是“跑馬燈”程序。“跑馬燈”就是讓開發板上的若干個LED逐個點亮,實現這個程序首先要看電路圖上LED的電路是如何連接的。通常,LED聯接在ARM芯片的IO接口上,看電路圖確認IO接口的編號,然后在程序里設置這幾個IO接口的電位為1或0,就能熄滅或點亮LED。“跑馬燈”程序是最簡單的軟件與硬件協同工作示例,目的就是讓軟件工程師能掌握最基本的軟件與硬件結合的原理。以此為基礎,開發板上的其他外圍電路都可以逐步掌握。?

4、掌握像使用單片機那樣使用ARM的方法。單片機的用途非常廣泛,最常用的是C51系列單片機,不需要操作系統,只需要在單片機上運行單循環程序就能讓設備完成功能簡單的循環運算工作。C51系列屬于x86家族,x86家族的單片機和桌面CPU功能差別非常大,但是其匯編語言卻是完全相同的。ARM系列計算機性能介于C51單片機和x86桌面CPU之間,所以將ARM當單片機用也是一個應用選擇,ADS和MDK這兩種軟件就是像單片機那樣使用ARM。最新的ARM版本Cortex,已經開始分類,Cortex M系列就是用作單片機的ARM,Cortex A系列就是運行操作系統的ARM。

5、復習C語言程序設計。在ADS或MDK中調試ARM開發板,使用的計算機語言通常是匯編結合C語言,匯編是ARM匯編,C語言就是常用的C語言。C語言是一種中級語言,但是是平臺無關的,在任何一種計算機上用C語言編程,語法規則都是一樣的。C語言與ARM匯編的結合看幾個實例就能很快掌握,C語言本身的掌握程度卻決定了每個人能在 ARM+Linux 開發上能走多遠。

ADS是ARM公司出品的集成開發環境,已經停止更新很久了,但是任然很有用,甚至可以調試ARM11。

RealView MDK是ARM公司購買了Keil公司后推出的ADS后續版本,RealView結合了Keil C51這種單片機經典開發環境與ADS開發環境的優點,能用于所有ARM版本的調試。當然功能強會帶來一定的操作復雜性,但在ARM的調試上還是沿用了ADS的大多數方法與軟件界面,以方便從ADS到MDK的過渡。

不管是用ADS還是MDK,對于學習 ARM+Linux 的朋友來說,目的都是一樣的,就是上面五點,都是為進一步學習打下很好的基礎。用ADS或MDK去開發ARM,通常都叫做“裸奔”,因為都沒有操作系統這件“衣服”。就像繪畫中學習人物畫時,先要畫裸體模特,然后學習人物畫一樣,先學會用ADS或MDK讓ARM裸奔,然后才學得好 ARM+Linux 。

七星彩走势图2元网官网