隨著消費群體對產品要求的日益提高,嵌入式技術在機械器具制造業、電子產品制造業、信息通信業、信息服務業等領域得到了大顯身手的機會,并被越來越廣泛地應用。ARM作為一種32位的高性能、低成本的嵌入式RISC微處理器,已得到最廣泛的應用。目前,Cortex-A系列處理器已經占據了嵌入式處理器大部分的中高端產品市場,尤其是在移動設備市場上,幾乎占據了絕對壟斷的地位。
伴隨著Android系統的發展,ARM也越來越被大家所了解和接受,企業對ARM技術人才的需求也越來越大。各高校也已經認識到了這一點,并設置了相關課程。但建立一套完整的嵌入式教學課程,是一項非常復雜的工作,尤其是如何和企業需求相結合,更是高校所需要面臨的重大問題。目前市場上的嵌入式開發相關書籍大多是針對研發人員編寫的,并不太適合高校教學使用。北京華清遠見科技信息有限公司長期以來致力于嵌入式培訓,為市場輸送了大量的嵌入式人才。為了普及嵌入式技術,公司計劃著手針對高職院校的特點編寫一套嵌入式教材。教材的內容涵蓋ARM體系結構、接口技術、Linux操作系統、Linux C語言及Linux應用開發實訓。本書重點講解ARM體系結構及接口技術部分。
在學習本書之前,讀者需要具有數字電路、C語言等基礎知識。通過本書的學習,讀者可以掌握ARM體系結構和基于Cortex-A8核心的S5PV210處理器常見硬件接口的開發方法。
本書以S5PV210處理器為平臺,介紹了嵌入式系統開發的各個主要環節。本書側重實踐,輔以代碼加以講解,從分析的角度來學習嵌入式開發的各種技術。本書使用的工具是FS-JTAG仿真器。FS-JTAG是華清遠見研發中心為了推進ARM Cortex-A8處理器的教學,提高合作企業及合作院校廣大技術愛好者和培訓學員的學習效率,研發出的低價的可以支持Cortex-A8的ARM仿真器。
本書將嵌入式軟/硬件理論講解和嵌入式實驗實踐融合在一起,全書共16章。其中,第1章為嵌入式系統基礎知識,介紹了嵌入式系統的組成及嵌入式開發概述。第2章為ARM技術概述,講解了ARM體系結構、應用選型及編程模型等。第3章為ARM微處理器的指令系統,重點介紹了ARM指令集。第4章為ARM匯編語言程序設計,主要介紹了GUN ARM匯編偽操作、GNU ARM匯編支持的偽指令、匯編語言與C語言的混合編程。第5章為ARM開發環境搭建,包括Eclipse環境介紹、FS-JTAG仿真器使用等。第6章為GPIO編程,介紹了GPIO的概念及S5PV210的GPIO操作方法。第7章為ARM異常及中斷處理,介紹了ARM處理器的異常處理及S5PV210的中斷控制器工作原理。第8章為串行通信接口,介紹了串行通信的概念及S5PV210串口的操作方法。第9章為存儲器接口,介紹了NAND Flash存儲器的操作方法。第10章為定時器與RTC,介紹了定時器的工作原理及S5PV210定時器接口的操作方法。第11章為A/D轉換器,介紹了A/D轉換器的工作原理及S5PV210 A/D控制器的操作方法。第12章為DMA(PL330)控制器,介紹了ARM公司最新的PL330 DMA控制器的開發方法和PL330指令。第13章為LCD接口設計,介紹了S5PV210的LCD控制器的工作原理。第14章為CAMIF接口技術,結合OV9650攝像頭,介紹了S5PV210 CAMIF控制器的開發方法。第15章為SPI接口,結合CAN控制器,介紹了SPI總線協議和S5PV210 SPI控制器開發方法。第16章為I2C接口,結合EEPROM存儲器,講解了I2C協議和S5PV210的I2C控制器開發方法。
本書的出版要感謝華清遠見嵌入式培訓中心的無私幫助。本書的前期組織和后期審校工作都凝聚了培訓中心幾位老師的心血,他們認真閱讀了書稿,提出了大量中肯的建議,并幫助糾正了書稿中的很多錯誤。
全書由劉洪濤、鄒南承擔了書稿的編寫及全書的統稿工作,參與本書編寫的人員有劉洪濤、包文俊、田雨溪、譚翠君、李福亭、張曉平、王利麗、張志華、蔡蒙、任佳、張丹、甘煒國、楊勝利、季久峰、賈燕楓。
由于作者水平所限,書中不妥之處在所難免,懇請讀者批評指正。對于本書的批評和建議,可以發表到www.farsight.com.cn技術論壇。
編 者
2014年2月