嵌入式Linux+ARM開發(fā)基礎(chǔ)_第1頁
嵌入式Linux+ARM開發(fā)基礎(chǔ)_第2頁
嵌入式Linux+ARM開發(fā)基礎(chǔ)_第3頁
嵌入式Linux+ARM開發(fā)基礎(chǔ)_第4頁
嵌入式Linux+ARM開發(fā)基礎(chǔ)_第5頁
已閱讀5頁,還剩67頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、1.嵌入式應(yīng)用領(lǐng)域嵌入式應(yīng)用領(lǐng)域2.嵌入式技術(shù)架構(gòu)與主流技術(shù)嵌入式技術(shù)架構(gòu)與主流技術(shù)3.嵌入式系統(tǒng)燒錄步驟嵌入式系統(tǒng)燒錄步驟4.嵌入式程序的移植嵌入式程序的移植現(xiàn)代化家庭社會(huì)發(fā)展方面:嵌入式Internet應(yīng)用高高 48 cm48 cm重重: 6 kg: 6 kg靈活性:靈活性:20 DOF20 DOF操作系統(tǒng)操作系統(tǒng): RT-Linux: RT-Linux接口形式接口形式: USB 1.0 : USB 1.0 (12Mbps)(12Mbps)響應(yīng)周期響應(yīng)周期: 1ms: 1ms能源:能源: DC24V x 6.2A DC24V x 6.2A (150W)(150W)制造:富士通制造:富士通

2、嵌入式系統(tǒng)產(chǎn)品-車輛自動(dòng)識(shí)別器嵌入式系統(tǒng)產(chǎn)品語音倒車?yán)走_(dá)信息家電類交通導(dǎo)航類移動(dòng)終端類生產(chǎn)控制類通訊類嵌入式系統(tǒng)定義:嵌入式系統(tǒng)定義:以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟硬件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗等嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。簡單理解:簡單理解:將軟件將軟件“植入植入”硬件,實(shí)現(xiàn)各類定制化功能硬件,實(shí)現(xiàn)各類定制化功能。 單純做單純做軟件軟件不賺錢,單純做不賺錢,單純做硬件硬件也不賺錢,只有做也不賺錢,只有做帶有帶有軟件的硬件軟件的硬件才賺錢。才賺錢。 自動(dòng)柜員機(jī)(ATM) 航空電子,例如慣性導(dǎo)航系統(tǒng)、飛行控制硬件和軟件以及其它飛機(jī)和導(dǎo)彈中的集成系統(tǒng) 手提電話和電信交

3、換 計(jì)算機(jī)網(wǎng)絡(luò)設(shè)備,包括路由器、時(shí)間服務(wù)器和防火墻 打印機(jī) 復(fù)印機(jī) 磁盤驅(qū)動(dòng)器(軟盤驅(qū)動(dòng)器和硬盤驅(qū)動(dòng)器) 汽車發(fā)動(dòng)機(jī)控制器和防抱死系統(tǒng) 家庭自動(dòng)化產(chǎn)品,如恒溫器、冷氣機(jī)、灑水裝置和安全監(jiān)視系統(tǒng) 手持計(jì)算器 家用電器,包括微波爐、洗衣機(jī)、電視機(jī)、DVD播放器和錄制器 醫(yī)療設(shè)備 測(cè)試設(shè)備,如數(shù)字存儲(chǔ)示波器、邏輯分析儀、頻譜分析儀 多功能手表 多媒體電器:因特網(wǎng)無線接收機(jī)、電視機(jī)頂盒、數(shù)字衛(wèi)星接收器 多功能打印機(jī)(MFPs) 個(gè)人數(shù)碼助理(PDA),也就是帶有個(gè)人信息管理和其它應(yīng)用程序的小型手持計(jì)算機(jī) 帶有其它能力移動(dòng)電話,如帶有蜂窩電話、PDA和移動(dòng)數(shù)字助理(MIDP) 用于工業(yè)自動(dòng)化和監(jiān)測(cè)的可編

4、程邏輯控制器(PLCs) 固定游戲機(jī)和便攜式游戲機(jī) 可穿戴計(jì)算機(jī) 嵌入式系統(tǒng)中主流技術(shù)嵌入式系統(tǒng)中主流技術(shù)LinuxLinux最初是由芬蘭大學(xué)生Linus Torvalds從1990到1991年利用Tanenbaum教授自行設(shè)計(jì)的Unix操作系統(tǒng)Minix作為開發(fā)平臺(tái)為自己的intel 386 PC設(shè)計(jì)的操作系統(tǒng)。隨著internet的發(fā)展,linux以其特有的開放性和優(yōu)越性迅速發(fā)展為一流的操作系統(tǒng),并被很多人看作打破windows壟斷地位的希望所在。開放源代碼的操作系統(tǒng)。資源豐富,部分資源免費(fèi)。有經(jīng)過實(shí)時(shí)性改造的RTLinux。Android(安卓) Android是一種以Linux為基礎(chǔ)的

5、開放源碼操作系統(tǒng),主要使用于便攜設(shè)備。目前尚未有統(tǒng)一中文名稱,中國大陸地區(qū)較多人使用安卓(非官方)或安致(官方)。Android操作系統(tǒng)最初由Andy Rubin開發(fā),最初主要支持手機(jī)。2005年由Google收購注資,并拉攏多家制造商組成開放手機(jī)聯(lián)盟開發(fā)改良,逐漸擴(kuò)展到到平板電腦及其他領(lǐng)域上。 2010年末數(shù)據(jù)顯示,僅正式推出兩年的操作系統(tǒng)的Android已經(jīng)超越稱霸十年的諾基亞Symbian系統(tǒng),躍居全球最受歡迎的智能手機(jī)平臺(tái)。單片機(jī)單片機(jī)是指一個(gè)集成在一塊芯片上的完整計(jì)算機(jī)系統(tǒng)。盡管他的大部分功能集成在一塊小芯片上,但是它具有一個(gè)完整計(jì)算機(jī)所需要的大部分部件:CPU、內(nèi)存、內(nèi)部和外部總線

6、系統(tǒng),目前大部分還會(huì)具有外存。同時(shí)集成諸如通訊接口、定時(shí)器,實(shí)時(shí)時(shí)鐘等外圍設(shè)備。ARMARM 即Advanced RISC Machines的縮寫,既可以認(rèn)為是一個(gè)公司的名字,也可以認(rèn)為是對(duì)一類微處理器的通稱,還可以認(rèn)為是一種技術(shù)的名字。1985,第一個(gè)ARM原型在英國劍橋的Acorn公司誕生,由美國加州SanJoseVLSI技術(shù)公司制造。1990年成立了Advanced RISC Machines Limited(ARM公司)。20世紀(jì)90年代,ARM 32位嵌入式處理器擴(kuò)展到世界范圍,占據(jù)了低功耗、低成本和高性能的嵌入式系統(tǒng)應(yīng)用領(lǐng)域的領(lǐng)先地位。 ARM被授權(quán)給全世界上百家半導(dǎo)體廠商分為AR

7、M7,ARM9,ARM10和StrongARM/Xscale應(yīng)用范圍從工業(yè)控制到手持設(shè)備和消費(fèi)電子、通信行業(yè)。成本低、功耗小。 ARM+Linux嵌入式技術(shù)是當(dāng)今最熱門的嵌入式技術(shù)是當(dāng)今最熱門的IT技術(shù),人才需技術(shù),人才需求量大而且薪金待遇高,北京,上海,廣州與深圳等一線求量大而且薪金待遇高,北京,上海,廣州與深圳等一線城市的本科畢業(yè)生的待遇為城市的本科畢業(yè)生的待遇為4500-6000,西安等二線城市,西安等二線城市的本科生的待遇為的本科生的待遇為3500-4000。Linux+ARM學(xué)習(xí)步驟1.安裝安裝vmware虛擬機(jī)。虛擬機(jī)。2.安裝較新版本的安裝較新版本的linux,如,如ubuntu

8、,F(xiàn)edora,SUSE,紅帽子企業(yè)版。,紅帽子企業(yè)版。3.學(xué)習(xí)基本學(xué)習(xí)基本linux操作,操作,C語言與應(yīng)用程序開發(fā)。語言與應(yīng)用程序開發(fā)。4.購買購買ARM9開發(fā)板。開發(fā)板。5.從跑馬燈(點(diǎn)燈)開始學(xué)習(xí)簡單硬件控制。從跑馬燈(點(diǎn)燈)開始學(xué)習(xí)簡單硬件控制。6.學(xué)習(xí)最小系統(tǒng)的移植(學(xué)習(xí)最小系統(tǒng)的移植(bootloader,linux內(nèi)核,內(nèi)核,文件系統(tǒng)),移植圖形化開發(fā)界面(如文件系統(tǒng)),移植圖形化開發(fā)界面(如QT)。)。7.學(xué)習(xí)字符,塊設(shè)備和網(wǎng)絡(luò)驅(qū)動(dòng)開發(fā)。學(xué)習(xí)字符,塊設(shè)備和網(wǎng)絡(luò)驅(qū)動(dòng)開發(fā)。實(shí)驗(yàn)性小項(xiàng)目學(xué)習(xí)步驟1.安裝安裝vmware虛擬機(jī)。虛擬機(jī)。2.安裝較新版本的安裝較新版本的linux,如,

9、如ubuntu,F(xiàn)edora,SUSE,紅帽子企業(yè)版。,紅帽子企業(yè)版。3.學(xué)習(xí)基本學(xué)習(xí)基本linux操作,操作,C語言與應(yīng)用程序開發(fā)。語言與應(yīng)用程序開發(fā)。4.購買購買ARM9開發(fā)板。開發(fā)板。5.利用開發(fā)板廠商現(xiàn)有的相關(guān)文件并自己開發(fā)相應(yīng)利用開發(fā)板廠商現(xiàn)有的相關(guān)文件并自己開發(fā)相應(yīng)驅(qū)動(dòng)程序。驅(qū)動(dòng)程序。6.實(shí)現(xiàn)人機(jī)交互界面。實(shí)現(xiàn)人機(jī)交互界面。嵌入式系統(tǒng)燒錄步驟嵌入式系統(tǒng)燒錄步驟嵌入式系統(tǒng)啟動(dòng)流程1.系統(tǒng)上電2.Bootloader3.系統(tǒng)初始化 1)OS內(nèi)核初始化 2)驅(qū)動(dòng)初始化(外圍器件初始化) 3)應(yīng)用/業(yè)務(wù)代碼 無論要進(jìn)行何種產(chǎn)品的開發(fā),首無論要進(jìn)行何種產(chǎn)品的開發(fā),首先需要將先需要將bootl

10、oaderbootloader,LinuxLinux內(nèi)核與文內(nèi)核與文件系統(tǒng)件系統(tǒng)移植移植并并燒錄燒錄至開發(fā)板上。至開發(fā)板上?;鹃_發(fā)環(huán)境搭建1.將將bootloader,linux內(nèi)核與文件系統(tǒng)燒錄內(nèi)核與文件系統(tǒng)燒錄在開發(fā)板上。在開發(fā)板上。2.安裝交叉編譯器。安裝交叉編譯器。3.交叉編譯程序。交叉編譯程序。4.搭建搭建NFS。5.在開發(fā)板上運(yùn)行應(yīng)用程序或加載驅(qū)動(dòng)程序,在開發(fā)板上運(yùn)行應(yīng)用程序或加載驅(qū)動(dòng)程序,進(jìn)行代碼調(diào)試。進(jìn)行代碼調(diào)試。嵌入式系統(tǒng)文件燒錄步驟嵌入式系統(tǒng)文件燒錄步驟1.通過仿真器燒錄通過仿真器燒錄bootloader,常用的仿真,常用的仿真器有器有H-JTAG和和jlink。2.通過

11、通過bootloader燒錄燒錄Linux內(nèi)核與文件系統(tǒng)內(nèi)核與文件系統(tǒng)。交叉編譯的概念 什么是交叉編譯呢,簡單地說,就是在一種什么是交叉編譯呢,簡單地說,就是在一種平臺(tái)上生成另一種平臺(tái)上的可執(zhí)行代碼。這里需平臺(tái)上生成另一種平臺(tái)上的可執(zhí)行代碼。這里需要注意的是所謂平臺(tái),實(shí)際上包含兩個(gè)概念:體要注意的是所謂平臺(tái),實(shí)際上包含兩個(gè)概念:體系結(jié)構(gòu)(系結(jié)構(gòu)(ArchitectureArchitecture)、操作系統(tǒng))、操作系統(tǒng)(Operating SystemOperating System)。同一個(gè)體系結(jié)構(gòu)可以運(yùn))。同一個(gè)體系結(jié)構(gòu)可以運(yùn)行不同的操作系統(tǒng);同樣,同一個(gè)操作系統(tǒng)也可行不同的操作系統(tǒng);同樣,

12、同一個(gè)操作系統(tǒng)也可以在不同的體系結(jié)構(gòu)上運(yùn)行。以在不同的體系結(jié)構(gòu)上運(yùn)行。安裝交叉編譯器1.將交叉編譯器拷貝至根目錄下并解壓縮。將交叉編譯器拷貝至根目錄下并解壓縮。2.在終端輸入并運(yùn)行命令:在終端輸入并運(yùn)行命令:export PATH=/bin:$PATH。交叉編譯應(yīng)用程序 arm-linux-gcc o 運(yùn)行可執(zhí)行文件1.搭建搭建NFS。2.進(jìn)入可執(zhí)行文件所在目錄。進(jìn)入可執(zhí)行文件所在目錄。3.輸入:輸入:./。MP4基本功能:基本功能:1.支持常用視頻文件的播放。支持常用視頻文件的播放。2.支持按鍵:播放支持按鍵:播放/停止,退出,音量增加停止,退出,音量增加/減少。減少。額外功能:額外功能:增

13、加觸摸屏控制。增加觸摸屏控制。系統(tǒng)結(jié)構(gòu)圖軟件框架圖步驟:步驟: 1.移植移植Mplayer。 2.實(shí)現(xiàn)按鍵驅(qū)動(dòng)實(shí)現(xiàn)按鍵驅(qū)動(dòng) 。 3.編寫應(yīng)用程序讀取按鍵操作并控制編寫應(yīng)用程序讀取按鍵操作并控制Mplayer執(zhí)行。執(zhí)行。涉及知識(shí)點(diǎn):涉及知識(shí)點(diǎn):1.Linux下應(yīng)用程序的開發(fā)。下應(yīng)用程序的開發(fā)。2.Linux下的開源代碼的交叉編譯與移植。下的開源代碼的交叉編譯與移植。3.Linux下下ARM平臺(tái)的字符型驅(qū)動(dòng)與中斷實(shí)現(xiàn)。平臺(tái)的字符型驅(qū)動(dòng)與中斷實(shí)現(xiàn)。按鍵控制流程短信發(fā)送功能要求:功能要求:向指定的手機(jī)號(hào)碼發(fā)送指定英文內(nèi)容的短信向指定的手機(jī)號(hào)碼發(fā)送指定英文內(nèi)容的短信 。額外功能要求:額外功能要求:支持中

14、文。支持中文。系統(tǒng)結(jié)構(gòu)軟件框架圖涉及知識(shí)點(diǎn):涉及知識(shí)點(diǎn):1.Linux下應(yīng)用程序的開發(fā)。下應(yīng)用程序的開發(fā)。2.Linux下下ARM平臺(tái)的串口編程。平臺(tái)的串口編程。3.Linux下下AT指令集的實(shí)現(xiàn)。指令集的實(shí)現(xiàn)。4.嵌入式系統(tǒng)的圖形化界面開發(fā)。嵌入式系統(tǒng)的圖形化界面開發(fā)。視頻監(jiān)控功能要求:功能要求: 采集采集USB攝像頭的數(shù)據(jù)通過無線攝像頭的數(shù)據(jù)通過無線/有線網(wǎng)絡(luò)傳送至遠(yuǎn)端有線網(wǎng)絡(luò)傳送至遠(yuǎn)端的網(wǎng)絡(luò)服務(wù)器,網(wǎng)絡(luò)服務(wù)器將內(nèi)容顯示至顯示屏上。的網(wǎng)絡(luò)服務(wù)器,網(wǎng)絡(luò)服務(wù)器將內(nèi)容顯示至顯示屏上。 1.購買能夠支持購買能夠支持USB攝像頭的攝像頭的ARM開發(fā)板。開發(fā)板。2.移植讀取移植讀取USB攝像頭的開源代

15、碼至攝像頭的開源代碼至ARM開發(fā)板。開發(fā)板。3.開發(fā)板端實(shí)現(xiàn):讀取開發(fā)板端實(shí)現(xiàn):讀取USB攝像頭的數(shù)據(jù)通過無線攝像頭的數(shù)據(jù)通過無線/有線網(wǎng)絡(luò)發(fā)送至服務(wù)器端。有線網(wǎng)絡(luò)發(fā)送至服務(wù)器端。4.服務(wù)器端實(shí)現(xiàn):通過無線服務(wù)器端實(shí)現(xiàn):通過無線/有線網(wǎng)絡(luò)接受開發(fā)板傳有線網(wǎng)絡(luò)接受開發(fā)板傳來的數(shù)據(jù),將其顯示至顯示屏。來的數(shù)據(jù),將其顯示至顯示屏。涉及知識(shí)點(diǎn):涉及知識(shí)點(diǎn):1.Linux下網(wǎng)絡(luò)程序的開發(fā)。下網(wǎng)絡(luò)程序的開發(fā)。2.Linux下下ARM平臺(tái)的無線平臺(tái)的無線/有線網(wǎng)卡驅(qū)動(dòng),有線網(wǎng)卡驅(qū)動(dòng),USB驅(qū)驅(qū)動(dòng)與攝像頭驅(qū)動(dòng)。動(dòng)與攝像頭驅(qū)動(dòng)。3.Linux下的視頻顯示原理與實(shí)現(xiàn)。下的視頻顯示原理與實(shí)現(xiàn)。防火墻功能要求:功能要

16、求: 實(shí)現(xiàn)阻止非法網(wǎng)絡(luò)數(shù)據(jù)訪問指定的設(shè)備。實(shí)現(xiàn)阻止非法網(wǎng)絡(luò)數(shù)據(jù)訪問指定的設(shè)備。 1.購買有網(wǎng)卡的購買有網(wǎng)卡的ARM開發(fā)板并驗(yàn)證網(wǎng)卡可以正常工開發(fā)板并驗(yàn)證網(wǎng)卡可以正常工作。作。2. 學(xué)習(xí)學(xué)習(xí)linux內(nèi)核網(wǎng)絡(luò)協(xié)議棧編程與鉤子函數(shù)。內(nèi)核網(wǎng)絡(luò)協(xié)議棧編程與鉤子函數(shù)。3.Linux下的應(yīng)用程序開發(fā)。下的應(yīng)用程序開發(fā)。4.人機(jī)交互界面開發(fā)。人機(jī)交互界面開發(fā)。涉及知識(shí)點(diǎn):涉及知識(shí)點(diǎn):1.Linux下網(wǎng)絡(luò)程序的開發(fā)。下網(wǎng)絡(luò)程序的開發(fā)。2.Linux下下ARM平臺(tái)的網(wǎng)絡(luò)驅(qū)動(dòng)。平臺(tái)的網(wǎng)絡(luò)驅(qū)動(dòng)。3.Linux下網(wǎng)絡(luò)協(xié)議棧開發(fā)。下網(wǎng)絡(luò)協(xié)議棧開發(fā)。Linux下的聊天軟件功能要求:功能要求: Linux平臺(tái)上實(shí)現(xiàn)類平臺(tái)上

17、實(shí)現(xiàn)類QQ的聊天軟件。的聊天軟件。 涉及知識(shí)點(diǎn):涉及知識(shí)點(diǎn):1.Linux下網(wǎng)絡(luò)程序的開發(fā)。下網(wǎng)絡(luò)程序的開發(fā)。2.Linux下圖形化界面開發(fā)。下圖形化界面開發(fā)。3.Linux下應(yīng)用程序開發(fā)。下應(yīng)用程序開發(fā)。智能車智能車目標(biāo):目標(biāo):1.探測(cè)前方,左方與右方是否有障礙物。探測(cè)前方,左方與右方是否有障礙物。2.轉(zhuǎn)向無障礙物的方向并前進(jìn)。轉(zhuǎn)向無障礙物的方向并前進(jìn)。3.判斷是否沿路徑正中行駛。判斷是否沿路徑正中行駛。4.尋找迷宮的最優(yōu)路徑。尋找迷宮的最優(yōu)路徑。5.顯示電池電量。顯示電池電量。底板結(jié)構(gòu)圖底板結(jié)構(gòu)圖主要器件:主要器件:ARM核心核心CPU。2個(gè)步進(jìn)電機(jī)以及驅(qū)動(dòng)芯片。個(gè)步進(jìn)電機(jī)以及驅(qū)動(dòng)芯片。5個(gè)紅外發(fā)射以及傳感器。個(gè)紅外發(fā)射以及傳感器。1個(gè)按鍵。個(gè)按鍵。LED顯示(多個(gè)器件)。顯示(多個(gè)器件)。1 1)前方五個(gè)紅外發(fā)射與傳感器系統(tǒng)用于發(fā)送以及接)前方五個(gè)紅外發(fā)射與傳感器系統(tǒng)用于發(fā)送以及接收紅外線,用于判斷哪個(gè)方向有障礙物。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論