嵌入式系統(tǒng)概論實(shí)驗(yàn)指導(dǎo)書_第1頁
嵌入式系統(tǒng)概論實(shí)驗(yàn)指導(dǎo)書_第2頁
嵌入式系統(tǒng)概論實(shí)驗(yàn)指導(dǎo)書_第3頁
嵌入式系統(tǒng)概論實(shí)驗(yàn)指導(dǎo)書_第4頁
嵌入式系統(tǒng)概論實(shí)驗(yàn)指導(dǎo)書_第5頁
已閱讀5頁,還剩26頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、嵌入式系統(tǒng)概論實(shí) 驗(yàn) 指 導(dǎo) 書計(jì)算機(jī)系2013年12月目 錄目 錄2實(shí)驗(yàn)一 Linux的安裝4實(shí)驗(yàn)二 VMware tools的安裝5實(shí)驗(yàn)三 Linux基本命令的使用(一)6實(shí)驗(yàn)四 Linux基本命令的使用(二)7實(shí)驗(yàn)五 Linux基本命令的使用(三)8實(shí)驗(yàn)六 文本編輯器vi的使用9實(shí)驗(yàn)七 使用GCC編譯C語言程序10實(shí)驗(yàn)八 使用GDB調(diào)試程序11實(shí)驗(yàn)九 makefile的編寫12實(shí)驗(yàn)十 嵌入式Linux開發(fā)環(huán)境建立及內(nèi)核編譯14實(shí)驗(yàn)十一 嵌入式Linux根文件系統(tǒng)制作18實(shí)驗(yàn)十二 嵌入式Linux內(nèi)核和根文件系統(tǒng)的下載和燒寫19實(shí)驗(yàn)十三 嵌入式Linux驅(qū)動(dòng)程序添加24實(shí)驗(yàn)十四 嵌入式Li

2、nux下的音頻實(shí)驗(yàn)26實(shí)驗(yàn)十五 嵌入式Linux下的視頻實(shí)驗(yàn)27實(shí)驗(yàn)十六 RVDS 2.2集成開發(fā)環(huán)境練習(xí)30實(shí)驗(yàn)十七 :GPIO輸出控制實(shí)驗(yàn)30實(shí)驗(yàn)一 Linux的安裝【實(shí)驗(yàn)?zāi)康摹恳弧⒄莆仗摂M機(jī)軟件VMware的安裝方法二、掌握Fedora Core 4 Linux發(fā)行版的安裝【實(shí)驗(yàn)內(nèi)容】一、準(zhǔn)備如下安裝文件:1. VMware.Workstation.5.5中文版(虛擬機(jī))帶注冊機(jī)2. FC4-i386-disc1.iso3. FC4-i386-disc2.iso4. FC4-i386-disc3.iso5. FC4-i386-disc4.iso6. FC4-i386-rescuecd.i

3、so二、VMware軟件的安裝1. 雙擊安裝文件,按照提示進(jìn)行下一步2. 需要輸入注冊碼時(shí),運(yùn)行注冊機(jī)目錄下的keygen.exe,點(diǎn)擊generate,serial框中的即為注冊碼。3. 安裝完成后,運(yùn)行漢化補(bǔ)丁目錄下的HF_Vmware5.5進(jìn)行漢化三、Fedora Core 4 Linux發(fā)行版的安裝1. 在VMware軟件中,新建虛擬機(jī)->下一步,選擇典型->下一步,選擇linux->下一步,選擇linux安裝的位置->下一步,使用橋接網(wǎng)絡(luò)->下一步,完成2. 編輯虛擬機(jī)->設(shè)置,選擇cdrom1,使用iso映像,選中FC4-i386-disc1.i

4、so,確定3. 啟動(dòng)此虛擬機(jī),進(jìn)入linux安裝界面4. 選擇skip,跳過光盤檢測5. 按next,選擇簡體中文,按next,下一步6. 安裝類型選擇定制,下一步7. 選擇手工分區(qū),下一步,彈出警告框,選擇是8. 新建,選擇文件類型為swap,大小為1000MB,確定。9. 新建,選擇文件類型為ext3,掛載點(diǎn)為/,大小為“使用全部可用空間”,確定,分區(qū)結(jié)果如下圖所示:10. 下一步,下一步,選擇無防火墻,彈出警告框,點(diǎn)擊繼續(xù)11. 下一步,設(shè)置用戶口令,輸入兩次,必須相同,至少為6個(gè)字符12. 下一步,選擇軟件包組界面,選擇全部(7G左右,保證硬盤空間充足,避免今后使用時(shí)出現(xiàn)一些問題)13

5、. 按照提示,點(diǎn)擊下一步,開始安裝14. 第一張盤FC4-i386-disc1.iso安裝完后,有提示音15. 編輯虛擬機(jī)->設(shè)置,選擇cdrom1,使用iso映像,選中FC4-i386-disc2.iso,確定,繼續(xù)第二張盤的安裝16. 完成四張盤的安裝后,自動(dòng)重啟,進(jìn)入系統(tǒng)17. 按提示點(diǎn)擊下一步,設(shè)置自己的用戶名,系統(tǒng)默認(rèn)有個(gè)超級用戶root18. 在提示輸入用戶名時(shí),可以輸入自己設(shè)置的用戶名和密碼(進(jìn)入系統(tǒng)后,使用用戶權(quán)限,安全),也可以輸入root用戶,密碼為在第11步里設(shè)置的(進(jìn)入系統(tǒng)后,使用超級用戶權(quán)限)實(shí)驗(yàn)二 VMware tools的安裝【實(shí)驗(yàn)?zāi)康摹恳?、了解VMware

6、 tools的用途二、掌握VMware tools的安裝方法三、初步了解部分Linux命令的使用【實(shí)驗(yàn)內(nèi)容】一、VMvare tools的用途:1. 在Linux中方便地訪問Windows系統(tǒng)下的文件(通過目錄/mnt/hgfs)2. 增強(qiáng)桌面圖形性能,屏幕分辨率3. 鼠標(biāo)可以在Windows系統(tǒng)和虛擬機(jī)之間方便切換二、VMware tools的安裝1. 打開VMware軟件,啟動(dòng)已安裝的Linux系統(tǒng),通過菜單虛擬機(jī)->安裝vmware工具,點(diǎn)擊install2. 在Linux桌面上,點(diǎn)鼠標(biāo)右鍵,打開終端3. 輸入以下命令:mount t iso9660 /dev/cdrom /mnt

7、4. cd /mnt5. cp VMwareTools-5.5.0-18463.tar.gz /tmp 6. cd /tmp7. umount /dev/cdrom8. tar zxvf VmwareTools-5.5.0-18463.tar.gz9. cd vmware-tools-distrib10. ./vmware-install.pl11. 一路回車12. 虛擬機(jī)->虛擬機(jī)設(shè)置->選項(xiàng)->共享文件夾->添加(名稱d,主機(jī)文件夾D:,名稱e,主機(jī)文件夾E:),確定13. reboot三、驗(yàn)證是否安裝成功 1、鼠標(biāo)是否能方便地在Windows和虛擬機(jī)之間切換 2、

8、在Linux中能否通過目錄/mnt/hgfs訪問Windows下的文件實(shí)驗(yàn)三 Linux基本命令的使用(一)【實(shí)驗(yàn)?zāi)康摹恳弧⒘私釲inux系統(tǒng)中的用戶管理二、掌握Linux系統(tǒng)中用戶管理相關(guān)的常用命令【實(shí)驗(yàn)內(nèi)容】一、Linux是一個(gè)支持多用戶的操作系統(tǒng),其中root用戶必不可少,root用戶具有超級管理權(quán)限。其他用戶具有一般權(quán)限,Linux還支持用戶組管理。二、最常使用的一些命令:1、who命令:顯示系統(tǒng)中當(dāng)前有哪些用戶在線,顯示的了用戶ID,終端,登錄IP,上線時(shí)間,停留時(shí)間,CPU使用量,動(dòng)作等等。2、passwd命令:用來更改用戶的密碼3、su命令:從一般用戶切換到root用戶,需要輸入

9、密碼4、useradd命令:添加新用戶5、userdel命令:刪除用戶6、usermod命令:修改用戶賬號(hào)7、groupadd命令:增加新的用戶組8、groupdel命令:刪除用戶組9、groupmod命令:修改用戶組10、gpasswd命令:管理組成員11、last命令:顯示系統(tǒng)開機(jī)以來或是從每月初登錄用戶的信息三、練習(xí) 1、在Linux下將root用戶的密碼修改為Linux#1 2、創(chuàng)建用戶user01,user02,user03,創(chuàng)建用戶組group1,group23、將用戶user01、user02劃歸group1組,將用戶user03劃歸group2組實(shí)驗(yàn)四 Linux基本命令的使用

10、(二)【實(shí)驗(yàn)?zāi)康摹恳?、了解Linux系統(tǒng)中的文件和目錄管理二、掌握Linux系統(tǒng)中文件和目錄管理相關(guān)的常用命令【實(shí)驗(yàn)內(nèi)容】一、Linux系統(tǒng)中的目錄及各個(gè)目錄的大致作用: / :根目錄 /bin: 存放必要的命令 /boot :存放內(nèi)核以及啟動(dòng)所需的文件等 /dev: 存放設(shè)備文件 /etc :存放系統(tǒng)的配置文件 /home :用戶文件的主目錄,用戶數(shù)據(jù)存放在其主目錄中 /lib: 存放必要的運(yùn)行庫 /mnt: 存放臨時(shí)的映射文件系統(tǒng),我們常把軟驅(qū)和光驅(qū)掛裝在這里的floppy和cdrom子目錄下。 /proc: 存放存儲(chǔ)進(jìn)程和系統(tǒng)信息 /root: 超級用戶的主目錄 /sbin: 存放系統(tǒng)管

11、理程序 /tmp: 存放臨時(shí)文件的目錄 /usr: 包含了一般不需要修改的應(yīng)用程序,命令程序文件、程序庫、手冊和其它文檔。 /var: 包含系統(tǒng)產(chǎn)生的經(jīng)常變化的文件,例如打印機(jī)、郵件、新聞等假脫機(jī)目錄、日志文件、格式化后的手冊頁以及一些應(yīng)用程序的數(shù)據(jù)文件等等。 二、Linux系統(tǒng)中的文件類型: 1、普通文件,如文本文件、C語言源文件、二進(jìn)制的可執(zhí)行文件、shell文件。 2、目錄文件3、設(shè)備文件,如軟驅(qū)A為/dev/fd0三、常用命令 1、cat命令:將文件輸出或重定向到其它文件 2、cd命令:切換工作目錄 3、cp命令:復(fù)制文件或目錄 4、mv命令:將一個(gè)文件移至另一文件,或?qū)?shù)個(gè)文件移至另

12、一目錄 5、rm命令:刪除文件或目錄 6、ls命令:顯示指定目錄下的內(nèi)容 7、mkdir命令:建立目錄 8、rmdir命令:刪除空的目錄 9、touch命令:創(chuàng)建空文件 10、wc命令:該命令統(tǒng)計(jì)給定文件中的字節(jié)數(shù)、字?jǐn)?shù)、行數(shù)11、pwd命令:顯示當(dāng)前所在目錄的絕對路徑名稱12、more命令:類似cat,不過會(huì)一頁一頁地顯示13、find命令:在指定的目錄及子目錄中查找匹配條件的文件14、grep命令:文本搜索命令,支持正則表達(dá)式15、ln命令:創(chuàng)建軟鏈接或硬鏈接16、chgrp命令:更改文件或目錄的所屬群組17、chmod命令:更改文件或目錄的權(quán)限18、chown命令:改變文件或目錄的所有者

13、實(shí)驗(yàn)五 Linux基本命令的使用(三)【實(shí)驗(yàn)?zāi)康摹恳?、掌握Linux系統(tǒng)中其它的一些常用命令【實(shí)驗(yàn)內(nèi)容】一、網(wǎng)絡(luò)管理: 1、ifconfig命令:配置或查看網(wǎng)絡(luò)接口參數(shù) 2、ping命令:測試本地到目的主機(jī)是否連通 3、netstat命令:顯示與IP、TCP、UDP和ICMP協(xié)議相關(guān)的統(tǒng)計(jì)數(shù)據(jù),一般用于檢驗(yàn)本機(jī)各端口的網(wǎng)絡(luò)連接情況 4、traceroute命令:顯示數(shù)據(jù)包到主機(jī)間的路徑 5、route命令:查看并編輯IP路由表 6、mesg命令:打開或關(guān)閉其他用戶對自己登錄終端的廣播功能 7、write命令:向指定的用戶發(fā)送信息二、進(jìn)程管理 1、ps命令:顯示當(dāng)前運(yùn)行進(jìn)程的狀態(tài) 2、kill命

14、令:發(fā)送特定信號(hào)給id為pid的進(jìn)程 3、top命令:實(shí)時(shí)顯示進(jìn)程的動(dòng)態(tài)三、文件系統(tǒng) 1、fdisk命令:查看或創(chuàng)建磁盤分區(qū) 2、df命令:顯示文件系統(tǒng)的狀況 3、dd命令:把指定的輸入文件拷貝到指定的輸出文件中,并且在拷貝過程中可以進(jìn)行格式轉(zhuǎn)換。 4、fsck命令:檢查與修復(fù)文件系統(tǒng) 5、mkfs命令:在特定的分區(qū)上建立文件系統(tǒng) 6、mount命令:將文件系統(tǒng)掛在目錄的某個(gè)位置之上。這個(gè)命令可以被用來掛上任何的文件系統(tǒng),甚至可以用-o loop選項(xiàng)將某個(gè)一般的文件當(dāng)成硬盤分區(qū)掛載。這對于ramdisk或是ISO9660的鏡像文件之解讀非常實(shí)用。四、系統(tǒng)管理 1、clear命令:清除屏幕 2、

15、export命令:用于設(shè)置或顯示環(huán)境變量 3、halt命令:關(guān)閉系統(tǒng) 4、init命令:所有進(jìn)程的父進(jìn)程,改變運(yùn)行層級 5、shutdown命令:關(guān)機(jī)程序 6、reboot命令:重新啟動(dòng)五、備份壓縮 1、tar命令:對文件或目錄進(jìn)行打包或解包 2、gzip/gunzip命令:壓縮和解壓縮 3、bzip2/bunzip2命令:比gzip壓縮效率更高的壓縮和解壓縮六、其它 1、cal命令:顯示日歷 2、at命令:可以讓用戶指定在特定時(shí)刻執(zhí)行某個(gè)程序或命令注:以上所涉及到的僅僅是Linux系統(tǒng)中的一部分常用命令,其它未涉及到的命令可在今后需要使用時(shí)再通過網(wǎng)絡(luò)查詢掌握其使用方法。另外,不同的Linux

16、發(fā)行版可能還有自己特定的一些命令集合。實(shí)驗(yàn)六 文本編輯器vi的使用【實(shí)驗(yàn)?zāi)康摹恳弧⒄莆瘴谋揪庉嬈鱲i的使用方法【實(shí)驗(yàn)內(nèi)容】一、vi的三種工作模式:1、命令模式:執(zhí)行相關(guān)文本編輯命令2、輸入模式:輸入文本3、末行模式:實(shí)現(xiàn)查找、替換、保存、多文件操作等等功能二、進(jìn)入vi,直接在Shell提示符下鍵入vi 文件名稱,如果該文件在當(dāng)前目錄不存在,則vi創(chuàng)建之。三、退出vi1、在命令模式下輸入“:wq”,保存文件并退出vi2、若不需要保存文件,輸入“:q”3、若文件已修改,但不保存,輸入“:q!”強(qiáng)制退出vi4、其它一些不常用的方法在此省略。四、命令模式下的常用編輯命令1、啟動(dòng)vi后,進(jìn)入的是vi的命

17、令模式2、按i鍵,進(jìn)入輸入模式,可以進(jìn)行文本的編輯,在輸入模式下,按esc鍵,可切換回命令模式 i:光標(biāo)位置不變,可在光標(biāo)左側(cè)插入正文 a:光標(biāo)位置向后退一格,可在光標(biāo)左側(cè)插入正文 o:在光標(biāo)所在行的下一行增添新行 O:在光標(biāo)所在行的上一行增添新行 I:光標(biāo)跳到當(dāng)前行的開頭 A:光標(biāo)跳到當(dāng)前行的末尾 3、光標(biāo)的移動(dòng) k、j、h、l分別等同于上、下、左、右箭頭鍵 Ctrl+b,向上翻一頁 Ctrl+f,向下翻一頁 nH,將光標(biāo)移到屏幕的第n行 nL,將光標(biāo)移到屏幕的倒數(shù)第n行 4、刪除文本 nX,刪除光標(biāo)所指向的后n個(gè)字符 D,刪除光標(biāo)右側(cè)的所有字符(包括光標(biāo)所指向的字符) db,刪除光標(biāo)左側(cè)的

18、全部字符 ndd,刪除當(dāng)前行和當(dāng)前行以后的n行內(nèi)容 5、粘貼和復(fù)制 p,將緩沖區(qū)的內(nèi)容粘貼到當(dāng)前字符的右側(cè) P,將緩沖區(qū)的內(nèi)容粘貼到當(dāng)前字符的左側(cè) yy,復(fù)制當(dāng)前行到內(nèi)存緩沖區(qū) nyy,復(fù)制n行內(nèi)容到內(nèi)存緩沖區(qū) 6、搜索字符串 /str1,正向搜索字符串str1 n,繼續(xù)搜索 ?str2,反向搜索字符串str2 7、撤銷和重復(fù) u,撤銷前一條命令的執(zhí)行結(jié)果 .,重復(fù)最后一條命令 五、末行模式下的命令 :n,將光標(biāo)移動(dòng)到第n行 :nw file,將第n行寫入file文件 :n,mw file,將第n行至第m行寫入file文件 :w,將編輯的內(nèi)容寫入原始文件 :wq,將編輯的內(nèi)容寫入原始文件并退出

19、編輯程序 :w file,將編輯的內(nèi)容寫入file文件,保持原有文件的內(nèi)容不變 :f file,將當(dāng)前文件重命名為file :e file,編輯新文件file代替原有內(nèi)容 :f,打印當(dāng)前文件的狀態(tài),如文件的行數(shù),光標(biāo)所在的行號(hào)等 :!<命令>,執(zhí)行相應(yīng)shell命令 六、三種工作模式的切換 1、在Linux shell下,鍵入vi或vi <文件名>進(jìn)入命令模式 2、在命令模式下,鍵入:進(jìn)入末行模式 3、在命令模式下,鍵入文本編輯命令如i,a,o等進(jìn)入文本輸入模式 4、在文本輸入模式下,按esc鍵進(jìn)入命令模式 5、在末行模式下,按backspace鍵或del鍵進(jìn)入命令模式

20、 6、在末行模式下,鍵入q或wq,退出vi,飯后到Linux shell下實(shí)驗(yàn)七 使用GCC編譯C語言程序【實(shí)驗(yàn)?zāi)康摹恳?、了解GNU gcc編譯器二、掌握使用GCC編譯C語言程序的方法【實(shí)驗(yàn)內(nèi)容】一、使用vi或其它文本編輯器,輸入C語言程序,并保存為test.c二、在Linux shell下,輸入命令gcc o test test.c三、編譯正確后,輸入命令./test運(yùn)行程序,觀察程序運(yùn)行結(jié)果四、若編譯錯(cuò)誤,根據(jù)提示信息,進(jìn)入程序查錯(cuò),再回到第二步,直至程序語法無誤。附:GCC使用方法和常用選項(xiàng) 使用GCC編譯C程序生成可執(zhí)行文件需要經(jīng)歷4個(gè)步驟:1、 預(yù)處理,這一步需要分析各種命令,如#d

21、efine、#include、#ifdef等。Gcc調(diào)用cpp程序來進(jìn)行預(yù)處理2、 編譯,這一步將根據(jù)輸入文件產(chǎn)生匯編語言,gcc調(diào)用ccl進(jìn)行編譯工作3、 匯編,這一步中將匯編語言作為輸入,產(chǎn)生具有.o擴(kuò)展名的目標(biāo)文件,gcc調(diào)用as進(jìn)行匯編工作4、 連接,這一步中各目標(biāo)文件.o被放在可執(zhí)行文件的適當(dāng)位置上,該程序引用的函數(shù)也放在可執(zhí)行文件中,gcc調(diào)用ld來完成 Gcc命令的基本用法為:gcc option filename,命令行選項(xiàng)指定的操作將在命令行上每個(gè)給出的文件上執(zhí)行。例如: Gcc o prog main.c test1.c test2.c 其中,“-o prog”指定輸出的可

22、執(zhí)行文件名為prog,如果沒有指定-o參數(shù),gcc將使用默認(rèn)的可執(zhí)行文件名a.out Gcc的命令選項(xiàng)有許多項(xiàng),但經(jīng)常使用的幾個(gè)選項(xiàng)是: 1、-c:只預(yù)處理,編譯和匯編源程序,不進(jìn)行連接 2、-o exefile,確定輸出文件為exefile,如果沒有該選項(xiàng),默認(rèn)輸出為可執(zhí)行文件a.out 3、-Dmacro或-Dmacro=defn,其作用類似于源程序代碼中的#define 4、-O,對程序編譯進(jìn)行優(yōu)化,編譯后可執(zhí)行文件的長度和執(zhí)行時(shí)間縮短,但編譯過程耗時(shí)變長,對主機(jī)性能要求較高。 5、-O2,比-O更好地優(yōu)化 6、-g,告訴gcc產(chǎn)生能被GNU調(diào)試器使用的調(diào)試信息以便調(diào)試程序 7、-Idi

23、r,將dir目錄加到搜尋頭文件的目錄列表中。并優(yōu)先于在gcc中默認(rèn)的搜尋目錄 更多的選項(xiàng)說明請查閱gcc使用手冊。 實(shí)驗(yàn)八 使用GDB調(diào)試程序【實(shí)驗(yàn)?zāi)康摹恳弧⒄莆帐褂肎DB調(diào)試程序的方法【實(shí)驗(yàn)內(nèi)容】一、按照實(shí)驗(yàn)七的內(nèi)容,編寫程序并編譯生成可執(zhí)行文件二、運(yùn)行可執(zhí)行文件,觀察程序運(yùn)行結(jié)果三、若運(yùn)行結(jié)果不對,表明程序邏輯有誤,可通過GNU的一大工具GDB來調(diào)試程序。附:GDB的使用方法和常用命令 GDB能夠觀察一個(gè)程序在執(zhí)行時(shí)的內(nèi)部活動(dòng),或程序出錯(cuò)時(shí)發(fā)生了什么,GDB的主要功能有以下幾點(diǎn):1、設(shè)置運(yùn)行環(huán)境和參數(shù),運(yùn)行指定程序2、讓程序在指定條件下停止和運(yùn)行3、在程序運(yùn)行停止后,檢查變量、內(nèi)存或寄存器

24、的值,查看程序運(yùn)行情況4、修改正在調(diào)試的程序的源代碼,這樣可以在線修正某個(gè)bug引起的問題,然后繼續(xù)查找下一個(gè)bugGDB的使用可以直接在shell命令行下輸入gdb并回車,再在gdb命令行下指定要調(diào)試的程序。也可以用gdb filename在啟動(dòng)時(shí)指定要調(diào)試的程序名。為了使GDB能夠正常工作,必須使程序在編譯時(shí)包含調(diào)試信息,即在使用gcc時(shí)加-g選項(xiàng)即可。 在GDB啟動(dòng)后,就進(jìn)入GDB命令方式,下面是一些常用的GDB命令:1、file,載入程序命令,如要加載hello程序用file hello 2、quit,退出gdb命令,也可以用ctrl+d來退出 3、run,運(yùn)行程序命令,如果程序需要參

25、數(shù),可在run指令后接著輸入?yún)?shù)。 4、info,查看程序信息 5、list,列出源程序命令,如list FUNCTION,list LINENUM,list FILENAME:FUNCTION6、break,設(shè)置斷點(diǎn),在程序被載入并且當(dāng)前沒有正在運(yùn)行時(shí),就能設(shè)置、修改、刪除斷點(diǎn)。如break FUNCTION,break LINENUM,break *ADDRESS,breakif COND7、watch,設(shè)置監(jiān)視點(diǎn)命令,監(jiān)視某個(gè)表達(dá)式或變量,當(dāng)它被讀或被寫時(shí)讓程序停下來,如watch EXPRESSION8、print,顯示表達(dá)式的值,如print exp9、step或next,單步執(zhí)行指

26、令,step可以跟蹤進(jìn)入一個(gè)函數(shù),而next指令不會(huì)10、continue,繼續(xù)執(zhí)行命令11、make,產(chǎn)生可執(zhí)行文件,通過make不用退出gdb就可以重新產(chǎn)生可執(zhí)行文件12、shell命令,不離開gdb就可以執(zhí)行shell命令更多的gdb命令請查閱gdb使用手冊實(shí)驗(yàn)九 makefile的編寫【實(shí)驗(yàn)?zāi)康摹恳?、了解makefile的編寫規(guī)則二、通過make命令和makefile文件實(shí)現(xiàn)自動(dòng)化編譯【實(shí)驗(yàn)內(nèi)容】一、假設(shè)一個(gè)程序由test1.c,test2.c兩個(gè)源文件組成,test1.c文件需要包含頭文件test1.h,test2.c需要包含test2.h二、編寫一個(gè)簡單的makefile文件如下:

27、 Test:test1.o test2.o Gcc o test test1.o test2.o Test1.o:test1.c test1.h Gcc c o test1.o test1.c Test2.o:test2.c test2.h Gcc c o test2.o test2.c Clean: Rm f *.o三、在shell環(huán)境下,運(yùn)行make,則自動(dòng)編譯程序,生成可執(zhí)行程序test四、根據(jù)以上實(shí)例和makefile的編寫規(guī)則,編寫多個(gè)c語言程序,并使用make來實(shí)現(xiàn)自動(dòng)編譯。 附:make和makefile相關(guān)介紹 在UNIX/Linux系統(tǒng)上,通常一個(gè)軟件包里包含多個(gè)程序文件,如

28、果用gcc一條條地編譯,效率太低,而且當(dāng)修改了某個(gè)程序文件時(shí),需要重新編譯軟件包中的所有文件。使用make程序的目的就是自動(dòng)確定一個(gè)軟件包中哪些部分需要重新編譯,并用特定的命令去編譯它。 要使用make命令,必須編寫makefile文件,makefile文件描述了軟件包中各個(gè)文件之間的依賴關(guān)系,提供了更新每個(gè)文件的命令。 當(dāng)編寫完makefile文件后,只要在shell下使用make命令就可以完成所有必需的重新編譯。Make程序利用makefile文件中的數(shù)據(jù)和每個(gè)文件最近一次更改的時(shí)間來確定哪些文件需要更新。 Makefile的編寫規(guī)則:Makefile文件中包含著一些目標(biāo),對于每一個(gè)目標(biāo),

29、都提供了與這個(gè)目標(biāo)具有相關(guān)性的其他目標(biāo)或文件的名字,以及實(shí)現(xiàn)這個(gè)目標(biāo)的一組命令。其中,目標(biāo)就是make程序要完成的一項(xiàng)任務(wù),通常是一個(gè)文件的文件名。相關(guān)性即一個(gè)目標(biāo)的完成依賴于其他一些目標(biāo)或文件。在本實(shí)驗(yàn)內(nèi)容中的示例makefile中,定義了四個(gè)目標(biāo):test、test1.o、test2.o、clean,每個(gè)目標(biāo)都是從最左邊開始寫,后面跟一個(gè)冒號(hào)(:),如果這個(gè)目標(biāo)的實(shí)現(xiàn)依賴于其他的目標(biāo)或文件,把他們列在冒號(hào)的后面,并以空格隔開。然后另起一行開始寫實(shí)現(xiàn)這個(gè)目標(biāo)的一組shell命令,shell命令可以有若干行。一般情況下,調(diào)用make可以輸入make target,target是makefile

30、文件中定義的目標(biāo),如果省略target,make就將更新makefile文件的第一個(gè)目標(biāo)。Make在檢查一個(gè)目標(biāo)是否已經(jīng)過時(shí)并需要更新時(shí),采用的是按相關(guān)性遞歸的辦法,make在構(gòu)建一個(gè)目標(biāo)之前要生成該目標(biāo)所依賴的所有文件,并遞歸地前進(jìn),從而確保這些文件都是新的。目標(biāo)clean是makefile中常用的一種專用目標(biāo),即刪除所有的目標(biāo)模塊。一般不作它用。Makefile中還可以使用預(yù)先定好的所寫和宏,還支持一些隱含規(guī)則,makefile的高級使用請查閱相關(guān)文檔。當(dāng)然,自己編寫makefile比較繁瑣,一般來說,可以找到一些參考的makefile文件模板,再根據(jù)自己的實(shí)際情況稍作修改即可。同時(shí)還有一

31、些專門的工具軟件比如automake、autoconf來生成makefile文件。實(shí)驗(yàn)十 嵌入式Linux開發(fā)環(huán)境建立及內(nèi)核編譯【實(shí)驗(yàn)?zāi)康摹恳?、了解嵌入式開發(fā)環(huán)境及交叉編譯器二、了解嵌入式Linux的相關(guān)特性三、掌握如何建立一個(gè)嵌入式Linux開發(fā)環(huán)境四、如何利用交叉編譯器來編譯內(nèi)核【實(shí)驗(yàn)設(shè)備】硬件:THUGA-1型實(shí)驗(yàn)箱,PC機(jī)軟件:PC機(jī)操作系統(tǒng):Linux【實(shí)驗(yàn)內(nèi)容】一、建立交叉編譯環(huán)境該交叉編譯工具在光盤的Linuxtoolchains文件夾下的cross-3.3.2.tar.bz2 。具體步驟如下:1)解壓編譯工具包首先進(jìn)入/usr/local 目錄,建立一個(gè)arm的子目錄(如果/u

32、sr/local/arm 目錄不存在),再進(jìn)入該目錄。命令如下:# cd /usr/local# mkdir arm# cd arm然后將光盤Linux目錄下的 “toolchain”文件夾下的cross-3.3.2.tar.bz2拷貝到剛剛進(jìn)入的arm目錄下,并執(zhí)行以下命令:# tar jxf cross-3.3.2.tar.bz2解壓后會(huì)出現(xiàn)一個(gè)3.3.2的目錄,該目錄下有g(shù)cc,g+,bin等各種實(shí)用工具。就這樣,交叉編譯工具就安裝好了。2)將該交叉編譯工具的路徑添加到環(huán)境變量解壓后,交叉編譯工具中的可執(zhí)行文件在3.3.2/bin 目錄下,此目錄不在Linux系統(tǒng)的可執(zhí)行程序搜索目錄中,

33、因此需要在啟動(dòng)設(shè)置里手動(dòng)添加進(jìn)去,具體做法是修改/etc/bashrc或用戶主目錄下的.bashrc文件,在文件的最后一行增加路徑,增加的文本如下:export PATH=$PATH:/usr/local/arm/3.3.2/bin這樣就將交叉編譯工具的路徑添加進(jìn)去了。為了使修改的文件立即生效,可執(zhí)行:# source /etc/bashrc (假設(shè)修改的文件是/etc/bashrc)或者重起Linux操作系統(tǒng)。然后在終端上輸入arm,然后按tab鍵,會(huì)自動(dòng)顯示arm- linux-,表示交叉編譯環(huán)境安裝成功。二、編譯內(nèi)核 首先將光盤Linuxkernel目錄下的pxa270_kernel2.

34、6.9.tar.gz 拷貝到/home 目錄,然后進(jìn)入這個(gè)目錄,解壓命令如下:# cd /home# tar -xzvf pxa270_kernel2.6.9.tar.gz解壓完成后,將會(huì)看到在/home目錄下生成一個(gè)pxa270_linux-2.6.9 的文件目錄。接著進(jìn)入pxa270_linux-2.6.9 此目錄,該目錄下顯示的是嵌入式Linux的內(nèi)核代碼的組織結(jié)構(gòu):/arch 子目錄包含了所有硬件結(jié)構(gòu)特定的內(nèi)核代碼。如 i386,alpha 和 arm.。/drivers 子目錄包含了內(nèi)核中所有的設(shè)備驅(qū)動(dòng)程序,如 usb 和 sound。/fs 子目錄包含了所有的文件系統(tǒng)的代碼。如 n

35、fs,ext3 和 jffs2 等。/include 子目錄包含了建立內(nèi)核代碼時(shí)所需的大部分庫文件,這個(gè)模塊利用其它模塊重建內(nèi)核。該目錄也包括了不同平臺(tái)需要的庫文件。比如,asm-arm 是 arm 平臺(tái)需要的庫文件。 /init 子目錄包含了內(nèi)核的初始化代碼,內(nèi)核從此處工作。/ipc 子目錄包含了進(jìn)程間通信代碼/kernel 子目錄包含了主內(nèi)核代碼/mm 子目錄包含了所有內(nèi)核管理代碼/net 子目錄包含了和網(wǎng)絡(luò)相關(guān)的代碼,如 atm,ipv6 等。一般在每個(gè)目錄下都有一個(gè) depend 文件和一個(gè) Makefile 文件。這兩個(gè)文件都是編譯時(shí)使用的輔助文件。其中 Makefile 文件中指出

36、了編譯時(shí)需要用到的編譯器,也是移植內(nèi)核過程中不可缺少的。執(zhí)行 make menuconfig 命令。# cd pxa270_linux_2.6.9# make menuconfig下圖為執(zhí)行 make menuconfig 后顯示的配置菜單:用鍵盤的上下鍵可以移動(dòng)藍(lán)色選擇條到如下圖所示的位置并按回車,選擇“Load an Alternate Configuration File”欄目來裝載一個(gè)已經(jīng)存在的配置文件,如下圖:修改要 load 的配置文件名,這里裝載的配置文件為:kernel_pxa27x.cfg,如下圖:配置文件輸入后,這時(shí)可以按“OK”鍵(鍵盤的 ENTER 鍵)返回到主菜單欄中

37、。接著按“ESC”鍵,退出內(nèi)核配置菜單,這時(shí)將出現(xiàn)一個(gè)詢問是否保存配置的對話框,這時(shí)選擇“yes”回車退出,如下圖。到此為止,內(nèi)核的配置結(jié)束。接著執(zhí)行命令 make zImage 就可以進(jìn)行內(nèi)核的編譯了,如圖:# make zImage結(jié)束后可以在 arch/arm/boot 目錄下找到壓縮內(nèi)核文件 zImage。此文件可以通過 BOOTLOADER 下載運(yùn)行和燒寫到 FLASH 里去。實(shí)驗(yàn)十一 嵌入式Linux根文件系統(tǒng)制作【實(shí)驗(yàn)?zāi)康摹恳?、了解嵌入式相關(guān)文件系統(tǒng)二、了解Cramfs文件系統(tǒng)的相關(guān)特性三、學(xué)習(xí)如何去制作一個(gè)cramfs根文件系統(tǒng)【實(shí)驗(yàn)內(nèi)容】一、制作cramfs格式根文件系統(tǒng)步驟

38、首先展開原有的 cramfs 格式的根文件系統(tǒng)到一個(gè)指定的目錄,然后從這個(gè)目錄復(fù)制所有的內(nèi)容到另外一個(gè)目錄,為了便于復(fù)制,我們先用 tar -cvf 命令將展開的根文件的所有的內(nèi)容歸檔為一個(gè)文件,接著再用 tar -xvf 命令展開這個(gè)歸檔文件到新的文件夾,從而完成這個(gè)復(fù)制過程。以下就是具體的步驟:(1) 將 th_pax270_qtopia.cramfs 拷貝到任意目錄下(2) 在該目錄下建立兩個(gè)子文件夾:mkdir changmkdir guo(3) 將 th_pax270_qtopia.cramfs 掛接到 chang 目錄mount t cramfs th_pax270_qtopia.

39、cramfs chang o loop(4)將 chang 目錄下的內(nèi)容壓縮cd chang tar cvf ./1.tar ./這樣將在 chang 的上一級目錄產(chǎn)生一個(gè) 1.tar 的包(5)將包解壓到 guo 目錄下。umount chang ;卸載掛接cd . ;進(jìn)入上一級目錄mv 1.tar guo ; cd guo ;tar xvf 1.tar;將打包的根文件系統(tǒng)的里的內(nèi)容解壓rm 1.tar(6)將自己的驅(qū)動(dòng) gpiodrv.o 和應(yīng)用程序 gpio_test 拷貝到相應(yīng)的目錄下。將 gpiodrv.o 拷貝到 guo/usr/目錄下將 gpio_test 拷貝到 gpio_te

40、st 下(7)經(jīng)過上面的步驟就可以將自己的驅(qū)動(dòng)和應(yīng)用程序添加到 cramfs 根文件系統(tǒng)中了現(xiàn)在將開始制作 cramfs 根文件系統(tǒng)先將 mkcramfs 可執(zhí)行文件拷貝到 guo 所在的目錄在這個(gè)目錄下運(yùn)行命令:./mkcramfs guo th_pax270_qtopia.cramfs運(yùn)行成功后,會(huì)在該目錄下生成 th_pax270_qtopia.cramfs根文件系統(tǒng)二、根文件系統(tǒng)制作成功后,可將剛才生成的th_pax270_qtopia.cramfs文件燒錄到NorFlash中。實(shí)驗(yàn)十二 嵌入式Linux內(nèi)核和根文件系統(tǒng)的下載和燒寫【實(shí)驗(yàn)?zāi)康摹恳弧⒄莆赵趯?shí)驗(yàn)箱上進(jìn)行嵌入式Linux內(nèi)核

41、的下載和燒寫二、掌握在實(shí)驗(yàn)箱上進(jìn)行嵌入式Linux根文件系統(tǒng)的下載和燒寫【實(shí)驗(yàn)內(nèi)容】一、下載和燒寫嵌入式Linux內(nèi)核用 BOOTLOADER 的串口連接或網(wǎng)絡(luò)連接方式都可以在 DNW 里下載文件,用網(wǎng)絡(luò)方式速度會(huì)比較快一點(diǎn)。下面主要介紹通過網(wǎng)絡(luò)連接方式下載 Linux 內(nèi)核,并進(jìn)行燒寫的過程。首先使用實(shí)驗(yàn)箱附帶的 RJ45 網(wǎng)絡(luò)交叉線將 PC 機(jī)的網(wǎng)卡與教學(xué)平臺(tái)底板的 10M 網(wǎng)口(CON4 口)相連接,然后運(yùn)行 DNW 程序并設(shè)置 DNW 的串口通訊參數(shù),然后按住小鍵盤上的 E 鍵不放同時(shí)按下板子的復(fù)位鍵,這時(shí)可看到 BOOTLOADER的功能選擇界面!在 BOOTLOADER 的選擇菜單

42、里按下“5”鍵,然后回車,目的是設(shè)置 BOOTLOADER 和 PC通訊時(shí)所使用的 IP 地址,注意這個(gè) IP 地址不是 LINUX 操作系統(tǒng)啟動(dòng)后的 IP 地址,兩者并無關(guān)聯(lián),按下“5”鍵后,出現(xiàn)如下圖所示:這時(shí)請輸入一個(gè) IP 地址,這個(gè) IP 地址應(yīng)該與 PC 機(jī)的網(wǎng)卡的 IP 地址處在同一子網(wǎng),然后回車退出。另外如果要保存這個(gè) IP 地址,使得下次系統(tǒng)重啟后仍然設(shè)為這個(gè) IP 地址值,那么應(yīng)該輸入“11”,選擇 BOOTLOADER 的“11 : Save Boot Parameters”功能選項(xiàng)保存這個(gè)設(shè)置值。開始下載內(nèi)核映像文件到板子的 RAM 了,在 BOOTLOADER 的選擇

43、菜單里按下“3”鍵,然后回車,目的是進(jìn)入網(wǎng)絡(luò)下載功能,在提示下載內(nèi)存的地址時(shí)輸入 2,即進(jìn)入初始化網(wǎng)口并進(jìn)入網(wǎng)絡(luò)下載功能,如下圖所示:從提示信息可以看到一個(gè) tftp 文件傳輸服務(wù)程序已經(jīng)運(yùn)行起來了,這時(shí)需要在 PC 機(jī)上運(yùn)行 tftp 的客戶端程序,并通過客戶程序上傳 linux 內(nèi)核映像文件。方法是在存放zImage的文件夾生成一個(gè)批處理文件,并在批處理文件中輸入以下內(nèi)容,如下圖: 這個(gè)批處理文件只有一行語句:tftp -i 01 put zImage或者把光盤下目標(biāo)代碼文件夾拷貝到PC機(jī),用記事本打開zImage.bat這個(gè)批處理文件,并在批處理文件中修改IP地址并保

44、存即可。這個(gè)批處理文件的作用是將 zImage 這個(gè) linux 內(nèi)核映像文件上傳到 01 這個(gè)主機(jī)上,這個(gè) IP 地址是BOOTLOADER 中設(shè)置的 IP 地址。雙擊運(yùn)行這個(gè)批處理,然后將目光轉(zhuǎn)移到 DNW 上,正常的話,應(yīng)該看到文件被下載到板子的過程,如下圖:下載結(jié)束后輸入 n 不運(yùn)行它,會(huì)回到 BOOTLOADER 主菜單,然后按下“1”鍵,選擇把下載的文件燒寫到 Nor Flash,這時(shí)出現(xiàn)的界面如下圖:這個(gè)界面出現(xiàn)了 04 四個(gè)選項(xiàng),要用戶選擇將下載的文件燒寫到 Nor Flash的哪個(gè)分區(qū),0 是引導(dǎo)區(qū)(bootloader 分區(qū)),1是內(nèi)核分區(qū),2是根文件系

45、統(tǒng)分區(qū),3是未定義分區(qū),4是漢字庫,由于燒寫的是內(nèi)核,所以應(yīng)該選擇“1”。按下“1”鍵后,出現(xiàn)了下面的界面,如下圖,直接按“Y”,就可以開始燒寫了!二、下載和燒寫嵌入式Linux根文件系統(tǒng)下載過程和下載內(nèi)核一樣,在上傳根文件系統(tǒng)時(shí)需在存放根文件系統(tǒng)的文件夾生成一個(gè)批處理文件,并在批處理文件中輸入以下內(nèi)容,如下圖:或者直接編輯批處理文件th_pax270_qtopia.cramfs.BAT的IP地址并保存,然后雙擊該文件即可。下載結(jié)束后選擇 1 將文件燒寫到 NOR FLASH 里去,再選擇分區(qū) 2rootfs 后按 y 確認(rèn)燒寫,文件較大時(shí)燒寫時(shí)間也會(huì)變長,請耐心等待,如下圖:三、啟動(dòng)運(yùn)行Li

46、nux用交叉串口線連接開發(fā)板的全功能串口(P2 口)和 PC 的串口,關(guān)閉 DNW 程序(若先前在使用),打開超級終端,選擇 PC 和實(shí)驗(yàn)箱連接所用的串口,設(shè)置串口通訊參數(shù)如下圖:按確定保存設(shè)置后啟動(dòng)連接。然后按住 4X4 鍵盤上的 D 鍵,再打開底板電源或在已開電源情況下按一下底板的復(fù)位鍵,BOOTLOADER 會(huì)自動(dòng)啟動(dòng) Linux,啟動(dòng)后再松開 D 按鍵,出現(xiàn)如下圖:則Linux在實(shí)驗(yàn)箱上啟動(dòng)成功!實(shí)驗(yàn)十三 嵌入式Linux驅(qū)動(dòng)程序添加【實(shí)驗(yàn)?zāi)康摹恳?、了解嵌入式Linux系統(tǒng)中驅(qū)動(dòng)程序的開發(fā)過程二、掌握如何來運(yùn)行和加載驅(qū)動(dòng)程序【實(shí)驗(yàn)內(nèi)容】一、Linux中字符設(shè)備驅(qū)動(dòng)的添加在一個(gè)字符設(shè)備驅(qū)

47、動(dòng)里面實(shí)現(xiàn)對 GPIO 端口的操作。在模塊加載的時(shí)候跑馬燈運(yùn)行起來,模塊卸載的時(shí)候,跑馬燈停止。THUGA-1型實(shí)驗(yàn)箱的4個(gè)LED指示燈LED1LED4由4個(gè)I/O口控制,它們分別是:GPIO89,GPIO107,GPIO108 以及 GOIO96。當(dāng) GPIO89,GPIO107,GPIO108 以及 GOIO96 輸出低電平的時(shí)候,相應(yīng)的 LED 指示燈亮。二、字符設(shè)備的驅(qū)動(dòng)源程序 gpiodrv.c該文件在目錄:Linux實(shí)驗(yàn)源碼exp3-adddriverdriver下,該驅(qū)動(dòng)程序的 Makefile 是按照 Linux2.6 內(nèi)核的要求來編寫的。其中PXA270X_KERNEL_DI

48、R的值要修改設(shè)置為用戶本機(jī)上的PXA270的內(nèi)核源碼包的位置。接下來將gpiodrv.c和這個(gè)Makefile放置在同一個(gè)新建目錄下,進(jìn)入這個(gè)目錄,輸入make命令后,編譯成功后將在這個(gè)目錄下生成一個(gè)gpiodrv.ko的文件。三、測試程序 gpio_test.c將 gpio_test.c 放置在一個(gè)新建目錄下,進(jìn)入該目錄下,輸入命令:/usr/local/arm/3.3.2/bin/arm-linux-gcc o gpio_test gpio_test.c編譯成功后,將在該目錄下生成 gpio_test 可執(zhí)行文件,要注意交叉編譯工具arm-linux-gcc 的路徑要設(shè)置正確,這里是/us

49、r/local/arm/3.3.2/bin。為了便于操作,提供了一個(gè)用于編譯 gpio_test.c 程序的 Makefile,用戶可以到Linux實(shí)驗(yàn)源碼exp3-adddrivertest的目錄里面,直接輸入命令 make 就可以編譯該測試程序了。四、實(shí)驗(yàn)操作步驟1用交叉串口線將PC機(jī)的COM口與實(shí)驗(yàn)箱的UART(P2)相連,插上12V電源。2啟動(dòng)實(shí)驗(yàn)箱進(jìn)入 Linux 環(huán)境,利用超級終端來顯示,進(jìn)入Linux命令行模式。3輸入命令 cd /tmp,進(jìn)入 tmp 目錄,因?yàn)?tmp 是在 SDRAM 中,可以放數(shù)據(jù)。4將 gpiodrv.ko 和 gpio_test 下載到 /tmp 目錄

50、下(這2個(gè)文件可以是自己編譯的,也可以直接采用Linux實(shí)驗(yàn)源碼exp3-adddriver下的文件)。在這里采用 rz 命令來傳輸,rz 命令是通過 Zmodem協(xié)議來傳輸?shù)?。先在?shí)驗(yàn)箱的終端下輸入 rz 命令,接著點(diǎn)擊超級終端的“傳送”>“發(fā)送文件”,在彈出的對話框中設(shè)置如下:然后點(diǎn)擊發(fā)送。數(shù)據(jù)傳輸完后,再在超級終端中輸入回車,接著通過 ls 來查看/tmp 目錄下是否有 gpiodrv.ko 文件,gpio_test的下載過程是一樣的。5gpiodrv.ko 和 gpio_test 下載成功后,接下來要進(jìn)行真正的加載和運(yùn)行的工作了。首先改變 gpio_test 的屬性,命令如下:

51、chmod 755 gpio_test 6加載 gpiodrv.ko 模塊:insmod gpiodrv.ko7建立 gpio 設(shè)備節(jié)點(diǎn):mknod /dev/gpio c 220 0/dev/gpio 為該設(shè)備驅(qū)動(dòng)程序的設(shè)備名,c 表明該設(shè)備為字符設(shè)備,220 為該設(shè)備的主設(shè)備號(hào),0 為從設(shè)備號(hào)。8執(zhí)行 gpio_test 程序:./gpio_testgpio_test 程序運(yùn)行起來后,有相應(yīng)的功能選項(xiàng)說明。實(shí)驗(yàn)十四 嵌入式Linux下的音頻實(shí)驗(yàn)【實(shí)驗(yàn)?zāi)康摹恳弧⑶度胧絃inux音頻播放和音頻錄音二、了解MP3編解碼的原理三、掌握Linux下實(shí)現(xiàn)對MP3的編解碼【實(shí)驗(yàn)內(nèi)容】一、1用交叉串口線將

52、PC機(jī)的COM口與實(shí)驗(yàn)箱的UART(P2)相連,插上12V電源。2啟動(dòng)實(shí)驗(yàn)箱進(jìn)入 Linux 環(huán)境,利用超級終端來顯示,進(jìn)入Linux命令行模式。3根文件系統(tǒng)內(nèi)帶有一個(gè) mp3 的播放程序 madplay,MP3 文件可以是保存在 MMC/SD 卡、CF 存儲(chǔ)卡、U 盤上的,也可以通過前面說的網(wǎng)絡(luò)、USB 等方法下載。下面以播放放在CF卡中的mp3文件為例說明:首先將CF卡中拷入mp3文件,將CF卡插入實(shí)驗(yàn)箱卡座。掛載CF卡,輸入命令:mount t vfat /dev/ide/host0/bus0/target0/lun0/part1 /tmp/udisk/cd /tmp/udisk/ls;看到音頻文件cd /Qtopia/demo/bin/./ madplay /tmp/udisk/qiufo.mp3即可聽到播放的音樂。二、完整的代碼請看光盤目錄的 Linux 源碼包。實(shí)驗(yàn)十五 嵌入式Linux下的視頻實(shí)驗(yàn)【實(shí)驗(yàn)?zāi)康摹恳弧⒘私釳player播放器二、掌握如何在嵌入式Linux中編譯Mplayer【實(shí)驗(yàn)內(nèi)容】一、Mplayer的編譯1、將光盤的“Linuxmplayer移植work”目錄下,有一個(gè) madplay-0.15.2b.tar.gz 的壓縮包拷貝到 PC 機(jī) Linux 系統(tǒng)的任意目錄下。2、解壓 Mplayer 源碼包tar xjvf madplay-0.

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論