目前,在全國高校嵌入式系統(tǒng)教學(xué)中,大部分仍是以ARM9為例來進(jìn)行講授,而實(shí)驗(yàn)教學(xué)則大部分依托三星公司的S3C24xx系列芯片來開展,因此該系列嵌入式CPU在實(shí)驗(yàn)教學(xué)上仍屬于主流。一方面,市場(chǎng)上基于S3C24xx的實(shí)驗(yàn)設(shè)備品牌眾多,都有各自的特點(diǎn);另一方面,理論教材與實(shí)驗(yàn)設(shè)備很難做到同步結(jié)合,居于上述原因,筆者參考了眾多國內(nèi)優(yōu)秀教材和實(shí)驗(yàn)器材,整理編撰了本實(shí)驗(yàn)指導(dǎo)教材,以供嵌入式系統(tǒng)課程的實(shí)驗(yàn)教學(xué)之用。 目前的嵌入式系統(tǒng)主要分為跑操作系統(tǒng)和不跑操作系統(tǒng)兩種類型,本實(shí)驗(yàn)指導(dǎo)教材側(cè)重于第1種類型,全書以Linux為操作系統(tǒng),重點(diǎn)講述了Linux基本命令、Linux下的程序開發(fā)、Linux下字符型驅(qū)動(dòng)程序開發(fā)、Linux按鍵中斷程序、Linux網(wǎng)絡(luò)應(yīng)用開發(fā)以及Linux內(nèi)核定制等相關(guān)內(nèi)容,為學(xué)生動(dòng)手實(shí)踐嵌入式Linux系統(tǒng)開發(fā)提供指導(dǎo)和幫助,力求把學(xué)生學(xué)習(xí)時(shí)的挫折感降至低。
本實(shí)驗(yàn)指導(dǎo)教材以筆者多年的嵌入式系統(tǒng)實(shí)際開發(fā)經(jīng)驗(yàn),一共選取了16個(gè)典型應(yīng)用作為實(shí)驗(yàn),每個(gè)實(shí)驗(yàn)均以實(shí)驗(yàn)?zāi)康、?shí)驗(yàn)設(shè)備、實(shí)驗(yàn)性質(zhì)、實(shí)驗(yàn)內(nèi)容、實(shí)驗(yàn)原理和實(shí)驗(yàn)步驟為序進(jìn)行講述,便于學(xué)生理解和操作。盡管嵌入式系統(tǒng)在原理上較為復(fù)雜,但本教材通過對(duì)實(shí)驗(yàn)步驟進(jìn)行較為詳細(xì)的量化分解,一步步地引導(dǎo)學(xué)生進(jìn)行操作,讓學(xué)生即使在原理上還未完全通曉,依然能夠通過實(shí)驗(yàn)指導(dǎo)教材去一步步完成實(shí)驗(yàn),減小挫折感,這樣反而容易取得更好的學(xué)習(xí)效果。因此,本書對(duì)嵌入式系統(tǒng)開發(fā)的學(xué)習(xí)者能起到積極地幫助與促進(jìn)作用,具有較好的實(shí)用價(jià)值。
目前,在全國高校嵌入式系統(tǒng)教學(xué)中,大部分仍是以ARM9為例來進(jìn)行講授,而實(shí)驗(yàn)教學(xué)則大部分依托三星公司的S3C24xx系列芯片來開展,因此該系列嵌入式CPU在實(shí)驗(yàn)教學(xué)上仍屬于主流。一方面,市場(chǎng)上基于S3C24xx的實(shí)驗(yàn)設(shè)備品牌眾多,都有各自的特點(diǎn);另一方面,理論教材與實(shí)驗(yàn)設(shè)備很難做到同步結(jié)合,居于上述原因,筆者參考了眾多國內(nèi)優(yōu)秀教材和實(shí)驗(yàn)器材,整理編撰了本實(shí)驗(yàn)指導(dǎo)教材,以供嵌入式系統(tǒng)課程的實(shí)驗(yàn)教學(xué)之用。 本實(shí)驗(yàn)指導(dǎo)教材以筆者多年的嵌入式系統(tǒng)實(shí)際開發(fā)經(jīng)驗(yàn),一共選取了16個(gè)典型應(yīng)用作為實(shí)驗(yàn),每個(gè)實(shí)驗(yàn)均以實(shí)驗(yàn)?zāi)康、?shí)驗(yàn)設(shè)備、實(shí)驗(yàn)性質(zhì)、實(shí)驗(yàn)內(nèi)容、實(shí)驗(yàn)原理和實(shí)驗(yàn)步驟為序進(jìn)行講述,便于學(xué)生理解和操作。盡管嵌入式系統(tǒng)在原理上較為復(fù)雜,但本教材通過對(duì)實(shí)驗(yàn)步驟進(jìn)行較為詳細(xì)的量化分解,一步步地引導(dǎo)學(xué)生進(jìn)行操作,讓學(xué)生即使在原理上還未完全通曉,依然能夠通過實(shí)驗(yàn)指導(dǎo)教材去一步步完成實(shí)驗(yàn),減小挫折感,這樣反而容易取得更好的學(xué)習(xí)效果。 目前的嵌入式系統(tǒng)主要分為跑操作系統(tǒng)和不跑操作系統(tǒng)兩種類型,本實(shí)驗(yàn)指導(dǎo)教材側(cè)重于第1種類型,全書以Linux為操作系統(tǒng),重點(diǎn)講述了Linux基本命令、Linux下的程序開發(fā)、Linux下字符型驅(qū)動(dòng)程序開發(fā)、Linux按鍵中斷程序、Linux網(wǎng)絡(luò)應(yīng)用開發(fā)以及Linux內(nèi)核定制等相關(guān)內(nèi)容,為學(xué)生動(dòng)手實(shí)踐嵌入式Linux系統(tǒng)開發(fā)提供指導(dǎo)和幫助。 本書由云南師范大學(xué)信息學(xué)院馮迅編寫,其間得到了學(xué)院領(lǐng)導(dǎo)的大力支持,在此表示感謝!同時(shí),還要對(duì)電子科技大學(xué)出版社提供的積極支持表示由衷的感謝!由于編者知識(shí)局限和時(shí)間倉促,書中不足之處在所難免,懇請(qǐng)廣大讀者批評(píng)指正!
實(shí)驗(yàn)一 Linux基本命令 1
一、實(shí)驗(yàn)?zāi)康?1
二、實(shí)驗(yàn)設(shè)備 1
三、實(shí)驗(yàn)性質(zhì) 1
四、實(shí)驗(yàn)內(nèi)容 1
五、實(shí)驗(yàn)原理 1
六、實(shí)驗(yàn)步驟 1
實(shí)驗(yàn)二 嵌入式系統(tǒng)開發(fā)環(huán)境的搭建
8
一、實(shí)驗(yàn)?zāi)康?8
二、實(shí)驗(yàn)設(shè)備 8
三、實(shí)驗(yàn)性質(zhì) 8
四、實(shí)驗(yàn)內(nèi)容 8
五、實(shí)驗(yàn)原理 8
六、實(shí)驗(yàn)步驟 8
實(shí)驗(yàn)三 裸機(jī)跑單燈(LED)閃爍實(shí)驗(yàn) 25
一、實(shí)驗(yàn)?zāi)康?25
二、實(shí)驗(yàn)設(shè)備 25
三、實(shí)驗(yàn)性質(zhì) 25
四、實(shí)驗(yàn)內(nèi)容 25
五、實(shí)驗(yàn)原理 25
六、實(shí)驗(yàn)步驟 25
實(shí)驗(yàn)四 Linux下C程序的編譯及調(diào)試 29
一、實(shí)驗(yàn)?zāi)康?29
二、實(shí)驗(yàn)設(shè)備 29
三、實(shí)驗(yàn)性質(zhì) 29
四、實(shí)驗(yàn)內(nèi)容 29
五、實(shí)驗(yàn)原理 29
六、實(shí)驗(yàn)步驟 29
實(shí)驗(yàn)五 Linux下C程序的交叉編譯 32
一、實(shí)驗(yàn)?zāi)康?32
二、實(shí)驗(yàn)設(shè)備 32
三、實(shí)驗(yàn)性質(zhì) 32
四、實(shí)驗(yàn)內(nèi)容 32
五、實(shí)驗(yàn)原理 32
六、實(shí)驗(yàn)步驟 32
實(shí)驗(yàn)六 Bootloader的編譯與燒寫 35
一、實(shí)驗(yàn)?zāi)康?35
二、實(shí)驗(yàn)設(shè)備 35
三、實(shí)驗(yàn)性質(zhì) 35
四、實(shí)驗(yàn)內(nèi)容 35
五、實(shí)驗(yàn)原理 35
六、實(shí)驗(yàn)步驟 35
實(shí)驗(yàn)七
嵌入式Linux內(nèi)核的配置與編譯 41
一、實(shí)驗(yàn)?zāi)康?41
二、實(shí)驗(yàn)設(shè)備 41
三、實(shí)驗(yàn)性質(zhì) 41
四、實(shí)驗(yàn)內(nèi)容 41
五、實(shí)驗(yàn)原理 41
六、實(shí)驗(yàn)步驟 41
實(shí)驗(yàn)八 嵌入式根文件系統(tǒng)的制作
44
一、實(shí)驗(yàn)?zāi)康?44
二、實(shí)驗(yàn)設(shè)備 44
三、實(shí)驗(yàn)性質(zhì) 44
四、實(shí)驗(yàn)內(nèi)容 44
五、實(shí)驗(yàn)原理 44
六、實(shí)驗(yàn)步驟 44
實(shí)驗(yàn)九 嵌入式Linux下的進(jìn)程控制 47
一、實(shí)驗(yàn)?zāi)康?47
二、實(shí)驗(yàn)設(shè)備 47
三、實(shí)驗(yàn)性質(zhì) 47
四、實(shí)驗(yàn)內(nèi)容 47
五、實(shí)驗(yàn)原理 47
六、實(shí)驗(yàn)步驟 47
實(shí)驗(yàn)十 嵌入式Linux下的文件編程 60
一、實(shí)驗(yàn)?zāi)康?60
二、實(shí)驗(yàn)設(shè)備 60
三、實(shí)驗(yàn)性質(zhì) 60
四、實(shí)驗(yàn)內(nèi)容 60
五、實(shí)驗(yàn)原理 60
六、實(shí)驗(yàn)步驟 60
實(shí)驗(yàn)十一 嵌入式Linux網(wǎng)絡(luò)應(yīng)用開發(fā) 68
一、實(shí)驗(yàn)?zāi)康?68
二、實(shí)驗(yàn)設(shè)備 68
三、實(shí)驗(yàn)性質(zhì) 68
四、實(shí)驗(yàn)內(nèi)容 68
五、實(shí)驗(yàn)原理 68
六、實(shí)驗(yàn)步驟 68
實(shí)驗(yàn)十二 嵌入式Linux內(nèi)核模塊開發(fā) 74
一、實(shí)驗(yàn)?zāi)康?74
二、實(shí)驗(yàn)設(shè)備 74
三、實(shí)驗(yàn)性質(zhì) 74
四、實(shí)驗(yàn)內(nèi)容 74
五、實(shí)驗(yàn)原理 74
六、實(shí)驗(yàn)內(nèi)容 74
實(shí)驗(yàn)十三 嵌入式Linux下的點(diǎn)燈(LED)實(shí)驗(yàn) 79
一、實(shí)驗(yàn)?zāi)康?79
二、實(shí)驗(yàn)設(shè)備 79
三、實(shí)驗(yàn)性質(zhì) 79
四、實(shí)驗(yàn)內(nèi)容 79
五、實(shí)驗(yàn)原理 79
六、實(shí)驗(yàn)步驟 79
實(shí)驗(yàn)十四 嵌入式Linux下的按鍵中斷實(shí)驗(yàn) 89
一、實(shí)驗(yàn)?zāi)康?89
二、實(shí)驗(yàn)設(shè)備 89
三、實(shí)驗(yàn)性質(zhì) 89
四、實(shí)驗(yàn)內(nèi)容 89
五、實(shí)驗(yàn)原理 89
六、實(shí)驗(yàn)步驟 89
實(shí)驗(yàn)十五 嵌入式Linux下的PWM實(shí)驗(yàn) 100
一、實(shí)驗(yàn)?zāi)康?100
二、實(shí)驗(yàn)設(shè)備 100
三、實(shí)驗(yàn)性質(zhì) 100
四、實(shí)驗(yàn)內(nèi)容 100
五、實(shí)驗(yàn)原理 100
六、實(shí)驗(yàn)步驟 100
實(shí)驗(yàn)十六 基于網(wǎng)絡(luò)的遠(yuǎn)程燈光控制實(shí)驗(yàn)
109
一、實(shí)驗(yàn)?zāi)康?109
二、實(shí)驗(yàn)設(shè)備 109
三、實(shí)驗(yàn)性質(zhì) 109
四、實(shí)驗(yàn)內(nèi)容 109
五、實(shí)驗(yàn)原理 109
六、實(shí)驗(yàn)步驟 109
參考文獻(xiàn) 119
附錄 標(biāo)準(zhǔn)ASCII碼表 120