嵌入式C編程C編寫裸機(jī)程序PPT課件_第1頁
嵌入式C編程C編寫裸機(jī)程序PPT課件_第2頁
嵌入式C編程C編寫裸機(jī)程序PPT課件_第3頁
嵌入式C編程C編寫裸機(jī)程序PPT課件_第4頁
嵌入式C編程C編寫裸機(jī)程序PPT課件_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、課程安排n裸機(jī)開發(fā)板環(huán)境n裸機(jī)硬件接口n裸機(jī)驅(qū)動(dòng)程序第1頁/共37頁6410開發(fā)板采用Samsung S3C6410 為微處理器1. CPU 處理器Samsung S3C6410A,ARM1176JZF-S核,運(yùn)行主頻533MHz,最高667Mhz2. SDRAM 內(nèi)存在板128MB/256MB DDR RAM,32bit 數(shù)據(jù)總線第2頁/共37頁6410開發(fā)板底板+核心板第3頁/共37頁核心板第4頁/共37頁接口資源 1 個(gè)100M 以太網(wǎng)RJ-45 接口(采用DM9000 芯片) 4 個(gè)串行口 1 個(gè)Jtag接口 1 個(gè)mini USB Slave-OTG 2.0接口 1 個(gè)SD 卡存儲(chǔ)接

2、口 1 路立體聲音頻輸出接口,一路麥克風(fēng)接口 4 USER Leds 8個(gè)側(cè)立按鍵第5頁/共37頁接口布局第6頁/共37頁啟動(dòng)模式6410開發(fā)板選擇了其中兩種啟動(dòng)方式,nand flash啟動(dòng)和SD卡啟動(dòng):撥動(dòng)S2 開關(guān)到SDBOOT標(biāo)識(shí)一側(cè)時(shí),系統(tǒng)將從SD卡啟動(dòng):引導(dǎo)程序固化在SD卡中撥動(dòng)S2 開關(guān)到Nand標(biāo)識(shí)一側(cè)時(shí),系統(tǒng)將從Nand Flash 啟動(dòng):引導(dǎo)程序固化在Nand中第7頁/共37頁1 1、引導(dǎo)程序( (開機(jī)第一個(gè)運(yùn)行的程序) ),固化在固件(SDSD卡/Flash/Flash)上,大多嵌入式系統(tǒng)選用使用開源UbootUboot2 2、UbootUboot運(yùn)行起來后會(huì)自動(dòng)加載運(yùn)行

3、OSOS,隨后執(zhí)行APPAPP3 3、開發(fā)板系統(tǒng)啟動(dòng)過程:引導(dǎo)程序第8頁/共37頁嵌入式系統(tǒng)組成第9頁/共37頁裸機(jī)只有硬件部分,還未安裝任何軟件 -此時(shí)系統(tǒng)只是一堆廢鐵第10頁/共37頁軟件 驅(qū)動(dòng)硬件,為設(shè)備使用者提供服務(wù),典型嵌入式軟件層次劃分:第11頁/共37頁裸機(jī)程序 簡(jiǎn)單的嵌入式系統(tǒng)(如單片機(jī)系統(tǒng))不配置OS層,程序需要自己始化硬件環(huán)境來運(yùn)行 ,稱為裸機(jī)程序l 裸機(jī)程序需要直接操作硬件設(shè)備l裸機(jī)程序一般采用少量匯編加C語言來編譯,如PC的BOIS就是裸機(jī)程序l在嵌入式系統(tǒng)中,裸機(jī)程序由Bootloader來調(diào)度(當(dāng)然也可以讓裸機(jī)程序?qū)崿F(xiàn)自引導(dǎo)功能) 第12頁/共37頁裸機(jī)交叉開發(fā)在嵌

4、入式開發(fā)過程中有宿主機(jī)和目標(biāo)機(jī)的角色之分 宿主機(jī)(PC機(jī))是編譯嵌入式軟件的計(jì)算機(jī) 目標(biāo)機(jī)(開發(fā)板)是運(yùn)行嵌入式軟件的硬件平臺(tái)這里我們先聯(lián)通PC機(jī)與開發(fā)板的串口和網(wǎng)絡(luò)連接第13頁/共37頁裸機(jī)運(yùn)行環(huán)境1、連接好PC機(jī)與開發(fā)板串口,在putty啟動(dòng)串口終端 第14頁/共37頁裸機(jī)運(yùn)行環(huán)境2、從Nand Flash啟動(dòng),終止OS加載過程,進(jìn)入U(xiǎn)boot菜單 3秒內(nèi)按下任意鍵第15頁/共37頁裸機(jī)運(yùn)行環(huán)境3、進(jìn)入U(xiǎn)boot命令行shell4、檢查環(huán)境配置 進(jìn)入shell顯示環(huán)境配置服務(wù)器IP地址第16頁/共37頁裸機(jī)運(yùn)行環(huán)境5、將Linux宿主機(jī)eth0配置為serverip6、連接好PC機(jī)與開發(fā)板

5、網(wǎng)線,確認(rèn)網(wǎng)絡(luò)聯(lián)通 從開發(fā)板ping PC機(jī)網(wǎng)絡(luò)聯(lián)通第17頁/共37頁裸機(jī)運(yùn)行環(huán)境7、確認(rèn)在開發(fā)板能通過tftp服務(wù)下載在Linux宿主機(jī)上的文件 Linux宿主機(jī)/tftpboot目錄測(cè)試文件內(nèi)容下載到0 x50000000內(nèi)存起始地址0 x50000000地址內(nèi)容首先要在Linux宿主機(jī)上配置TFTP服務(wù)器:詳見“TFTP服務(wù)器配置”文檔第18頁/共37頁裸機(jī)程序模板1、匯編入口程序start.s 第19頁/共37頁裸機(jī)程序模板2、C入口程序:main.c 第20頁/共37頁裸機(jī)程序模板3、編譯腳本:build.sh 直接輸出到/tftpboot目錄第21頁/共37頁裸機(jī)程序模板4、從開發(fā)

6、板下載main.bin5、裸機(jī)運(yùn)行 下載到0 x50000000調(diào)轉(zhuǎn)到0 x50000000執(zhí)行程序程序輸出第22頁/共37頁課程安排n裸機(jī)開發(fā)板環(huán)境n裸機(jī)硬件接口n裸機(jī)驅(qū)動(dòng)程序第23頁/共37頁LED與GPIO1 1、LEDLED是開發(fā)中最常用的狀態(tài)指示設(shè)備 本開發(fā)板具有4 4 個(gè)用戶可編程LEDLED,它們直接與CPUCPU的GPIO GPIO 相連接2 2、GPIO(General-Purpose IO ports), GPIO(General-Purpose IO ports), 通用IOIO口 在數(shù)字電路中, ,往往CPUCPU會(huì)引出一些通用的管腳 某管腳可以輸出邏輯電平來表示0 0

7、、1 1,用于控制數(shù)字開關(guān):如繼電器等 有些管腳也能接收輸入:如數(shù)字報(bào)警器的輸入等 這些管腳不是針對(duì)特定硬件進(jìn)行設(shè)計(jì),因此稱為通用IOIO腳, ,即GPIOGPIO 第24頁/共37頁LED與GPIO3、LED與GPIO連接:參考主板原理圖Tiny6410-1107.pdf LED1LED4對(duì)應(yīng)的GPK4GPK7 引腳 第25頁/共37頁LED控制原理1、當(dāng)某一管腳(nLed1-nLed4)置低:電路接地,跟3.3v電源之間有壓差,Led電路被導(dǎo)通,電流流經(jīng)Led發(fā)光二極管使其點(diǎn)亮。2、當(dāng)某一管腳(nLed1-nLed4)置高:電路被切斷,Led發(fā)光二極管被熄滅 。3、因此,驅(qū)動(dòng)程序只要將GP

8、IO管腳設(shè)置為輸出,對(duì)某個(gè)GPIO管腳置低、置高,就會(huì)控發(fā)光二極管的點(diǎn)亮和熄滅。第26頁/共37頁LED占用資源第27頁/共37頁相關(guān)寄存器GPxCON用于選擇引腳功能:配置成輸入?輸出?GPxDAT用于讀/寫引腳數(shù)據(jù):輸入/輸出高電平?低電平?另外,GPxUD用于確定是否使用內(nèi)部上/下拉電阻第28頁/共37頁控制位定義每四位對(duì)應(yīng)一個(gè)引腳控制: 0000配置為輸入,0001配置為輸出第29頁/共37頁數(shù)據(jù)位定義每1位對(duì)應(yīng)一個(gè)引腳數(shù)據(jù): 0輸出低電平,1輸出高電平第30頁/共37頁課程安排n裸機(jī)開發(fā)板環(huán)境n裸機(jī)硬件接口n裸機(jī)驅(qū)動(dòng)程序第31頁/共37頁驅(qū)動(dòng)接口1、相關(guān)寄存器定義2、初始化函數(shù)3、設(shè)置函數(shù)第32頁/共37頁驅(qū)動(dòng)應(yīng)用1、流水燈程序第33頁/共37頁驅(qū)動(dòng)應(yīng)用2、裸機(jī)程序延時(shí)處理第34頁/共37頁驅(qū)動(dòng)應(yīng)用3、編譯程序4、下載到開發(fā)板5、執(zhí)行裸機(jī)程序 在開發(fā)板上可觀

溫馨提示

  • 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)論