廣嵌嵌入式Linux開發(fā)環(huán)境搭建_第1頁
廣嵌嵌入式Linux開發(fā)環(huán)境搭建_第2頁
廣嵌嵌入式Linux開發(fā)環(huán)境搭建_第3頁
廣嵌嵌入式Linux開發(fā)環(huán)境搭建_第4頁
廣嵌嵌入式Linux開發(fā)環(huán)境搭建_第5頁
已閱讀5頁,還剩34頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

嵌入式Linux開發(fā)環(huán)境搭建嵌入式系統(tǒng)定義回顧嵌入到對象體中的專用計算機系統(tǒng)三要素:嵌入、專用、計算機嵌入式系統(tǒng)的特點:由三要素引出嵌入性:嵌入到對象體系中,有對象環(huán)境要求專用性:軟、硬件按對象要求裁減計算機:實現(xiàn)對象的智能化功能嵌入式系統(tǒng)的應用GEC2440開發(fā)板GEC2440開發(fā)板硬件構成◆采用三星公司的S3C2440A-40,系統(tǒng)可穩(wěn)定運行在405MHZ,主頻最高可達530多MHz;◆64M字節(jié)的SDRAM,由兩片K4S561632組成,工作在32位模式下;◆64M字節(jié)NANDFlash,采用的是K9F1208,可以兼容16M,32M或128M字節(jié);◆10M以太網接口,采用的是CS8900Q3,帶傳輸和連接指示燈;◆LCD和觸摸屏接口;◆2個USBHOST,S3C2440內置的,符合USB1.1,其中一個USBHOST接口是復用的;◆一個USBDevice,S3C2440內置的,符合USB1.1;◆支持音頻輸入和音頻輸出,音頻模塊由S3C2440的IIS音頻總線接口和UDA1341音頻編碼解碼器組成,板上還集成了一個MIC,用于音頻輸入;◆2路UART串行口,波特率可高達115200bps,并具有RS232電平轉換電路,其中一路為完整串口;◆SD卡接口,兼容SDMemoryCardProtocol1.0和SDIOCardProtocol1.0;◆Embedded-ICE(20腳標準JTAG)接口和并口式JTAG接口,支持ADS,SDT軟件的下載◆和調試以及FLASH的燒寫;◆串行EEPROM:AT24C024KbytesEEPROM,IIC接口;◆SPI接口;◆數(shù)字攝像頭接口;◆蜂鳴器,4個LED燈;◆4個按鍵;◆開關電源,分布式電源供電;◆3V鋰電池,提供RTC電源;GEC2440開發(fā)板使用啟動LINUX接上電源,接上交叉串口線,連上交叉網線,設置好串口工具串口工具的參數(shù):波特率115200,8位,無奇偶位,停止位1,無硬件流。開發(fā)板上電后,BootLoader等待一段時間,如果沒有輸入,將會自動啟動這個linux系統(tǒng)。這時將在串口和LCD屏(選配模塊)有信息顯示在串口,將進入Linux的命令模式下,在LCD屏上,將有QT界面的顯示,首次進入QT,需要先進行觸摸屏的校準。嵌入式Linux開發(fā)環(huán)境嵌入式系統(tǒng)通常是一個資源受限的系統(tǒng),因此直接在嵌入式系統(tǒng)的硬件平臺上編寫軟件比較困難,有時候甚至是不可能的。解決辦法:首先在通用計算機上編寫程序;然后通過本地編譯或者交叉編譯生成目標平臺上可以運行的二進制代碼格式;最后再下載到目標平臺上的特定位置上運行。嵌入式Linux開發(fā)環(huán)境關于交叉編譯在一種平臺上編譯出能在另一種平臺(體系結構不同)上運行的程序。在PC平臺(X86CPU)上編譯出能運行在arm平臺上的程序,編譯得到的程序在X86CPU平臺上是不能運行的,必須放到arm平臺上才能運行。用來編譯這種程序的編譯器就叫交叉編譯器。為了不跟本地編譯器混淆,交叉編譯器的名字一般都有前綴。例如:arm-linux-gcc嵌入式Linux開發(fā)環(huán)境需要交叉開發(fā)環(huán)境(CrossDevelopmentEnv)的支持是嵌入式應用軟件開發(fā)時的一個顯著特點。交叉編譯器只是交叉開發(fā)環(huán)境的一部分。交叉開發(fā)環(huán)境是指編譯、鏈接和調試嵌入式應用軟件的環(huán)境,它與運行嵌入式應用軟件的環(huán)境有所不同,通常采用宿主機-目標機模式。嵌入式Linux開發(fā)環(huán)境宿主機-目標板模式宿主機(Host)是一臺通用計算機,它通過串口或者以太網接口與目標機通信。宿主機的軟硬件資源比較豐富,能夠大大提高嵌入式應用軟件的開發(fā)速度和效率。目標板(Target),應用程序實際運行的平臺,或者是能夠替代實際運行環(huán)境的仿真系統(tǒng)。軟硬件資源通常都比較有限。嵌入式Linux開發(fā)環(huán)境宿主機-目標機模式首先利用宿主機上豐富的資源和良好的開發(fā)環(huán)境開發(fā)和仿真調試目標機上的軟件;然后通過串口或者以網絡將交叉編譯生成的目標代碼傳輸并裝載到目標機上,并在監(jiān)控程序或者操作系統(tǒng)的支持下利用交叉調試器進行分析和調試;最后目標機在特定環(huán)境下脫離宿主機單獨運行。

嵌入式Linux開發(fā)環(huán)境GNU交叉工具鏈toolchainGNU是自由軟件基金會的一個項目。

Linux的開發(fā)使用了眾多的GUN工具基于GPL協(xié)議的開發(fā)工具交叉編譯器,例如arm-linux-gcc交叉匯編器,例如arm-linux-as交叉鏈接器,例如arm-linux-ld用于處理可執(zhí)行程序和庫的一些基本工具。例如arm-linux-strip去除elf文件中的多余符號信息嵌入式Linux開發(fā)環(huán)境包的安裝:mkdir/usr/local/arm添加環(huán)境變量在文件/etc/bashrc文件最后添加:

使得配置立刻生效,需要使用source命令重新讀取配置文件。工具鏈安裝完成。嵌入式Linux開發(fā)環(huán)境GNU交叉工具鏈的常用工具介紹

遠程訪問目標板如何觀察應用程序在目標板的運行情況,即查看程序的輸出信息?通過串口線連接宿主機和目標板。配置串口做為目標板的輸出設備。例如在交叉編譯目標板的linux內核時,配置指定終端為串口:noinitrdroot=/dev/mtdblock2init=/linuxrcconsole=ttySAC0,1152002.4的內核為console=ttyS0在宿主機上通過串口通信軟件查看目標板系統(tǒng)的運行情況。遠程訪問目標板minicom的使用minicom的設置:minicom-s遠程訪問目標板遠程訪問目標板minicom的使用選擇串口 選擇菜單中的“Serialportsetup”,按回車,進入如下圖所示界面。按“A”以設置“SerialDevice”(串口1->/dev/ttyS0,串口2->/dev/ttyS1)遠程訪問目標板遠程訪問目標板minicom的使用設置波特率

按“E”鍵進入設置“bps/par/Bits”(波特率)界面。再按“I”以設置波特率為115200?!癚”數(shù)據位8,奇偶檢驗位無,停止位1遠程訪問目標板遠程訪問目標板minicom的使用設置無流控制(無硬件、無軟件)

按回車退回到上一級菜單,按“F”鍵設置“HardwareFlowControl”為“NO”,其他選項使用缺省值。遠程訪問目標板遠程訪問目標板minicom的使用保存設置

再選擇“Exit”退出設置模式。剛才的設置被保存到“/etc/minirc.dfl”。設置完畢 打開目標板電源的電源開關,minicom輸出目標板的啟動信息,當Linux啟動以后,minicom就相當于虛擬終端,可通過它來操作目標板。遠程訪問目標板minicom的使用退出minicom 同時按下“Ctrl+A”鍵,緊接著再按下“Q”鍵,在跳出的窗口中,選擇“Yes”。遠程訪問目標板下載程序映象到目標板通過串口下載使用三星公司的DNW軟件。設置波特率115200、端口號、下載地址0x30200000上電啟動開發(fā)板,進入BIOS界面選擇2串口下載點擊“serialport”菜單,選擇“Transmit”選項下載程序映象到目標板通過usb下載同樣使用三星公司的DNW軟件。設置波特率115200、端口號、下載地址0x30200000上電啟動開發(fā)板,進入BIOS界面接上USBDEVICE的連接線,選擇“0”,選擇USB下載,注意用USB下載要先在PC端裝好驅動程序,保證USB連接好。有時PC端出現(xiàn)發(fā)現(xiàn)無法識別的USB設時,可在BIOS中輸入ESC取消下載,等幾秒鐘再輸入“0”啟動USB下載。出現(xiàn)“NowUSBisconnected”說明USB正確枚舉。點擊“USBPort””Transmit”選項。下載程序映象到目標板通過掛載NFS方式下載NFS服務就是將宿主機的一個目錄通過網絡可以被掛載到其他計算機上,并且作為其他計算機的一個目錄。在嵌入式開發(fā)中,通過NFS可以很方便的將修改的文件通過NFS傳輸?shù)侥繕税迳?。不用反復燒寫鏡像文件。通過ifconfig命令修改IP下載程序映象到目標板通過掛載NFS方式下載NFS的使用分服務器端和客戶端服務器端提供要共享的文件,客戶端通過掛載“mount”實現(xiàn)對共享文件的訪問操作。

NFS服務器端通過讀取配置文件/etc/exports決定所共享的文件目錄。在超級終端或者minicom下通過NFS掛載宿主機目錄卸載NFS文件系統(tǒng)

umount/tmp/test

下載程序映象到目標板通過掛載NFS方式下載重啟NFS服務:servicenfsrestart通過showmount命令來查看開放的目錄。showmount–elocalhost

進行網絡設置,將eth0的網絡地址指定為掩碼網關不需要。設置完之后要重啟網絡。 Serviecnetworkrestart關閉防火墻,選擇系統(tǒng)設置->安全級別,將安全級別改為“無防火墻”。去掉iptables服務:選擇系統(tǒng)設置->服務器設置->服務,在彈出的界面上將optables前的“√”去掉。將主機上的目錄掛載到另一個目錄下,測試NFS是否設置成功。下載程序映象到目標板通過掛載NFS方式下載配置共享文件的語法:每一行由輸出路徑,客戶名列表以及每個客戶名后緊跟的訪問選項構成:[共享的目錄][主機名或IP(參數(shù),參數(shù))][共享的目錄][IP1(參數(shù)1,參數(shù)2)][IP2(參數(shù)3,參數(shù)4)]#vi/etc/exports/home/nfs:是宿主機上共享的文件夾;例如是/usr/local/rw:開發(fā)板(客戶端)可以讀寫訪問共享的文件夾;sync:所有數(shù)據在請求時寫入共享;no_root_squash:root用戶具有根目錄的完全管理訪問權限/home/nfs這個目錄mount到開發(fā)系統(tǒng)下下載程序映象到目標板mount文件系統(tǒng)掛載命令Linux系統(tǒng)在使用光盤、軟盤或U盤時,必須先執(zhí)行掛載(mount)命令。掛載命令會將這些存儲介質指定成系統(tǒng)中的某個目錄,以后直接訪問相應目錄即可讀寫存儲介質上的數(shù)據??梢話燧dLinux分區(qū)、Windows分區(qū)、U盤、光盤、映像文件、網絡文件系統(tǒng)、綁定umount卸載文件系統(tǒng)umount[]umount[mountpoint]下載程序映象到目標板ifconfig網絡接口設置命令查看網卡的IP設置ifconfig啟用某網卡ifconfig[netif]up禁用用某網卡ifconfig[netif]down設置網卡IP地址ifconfig[netif][address]route路由配置命令可用于設置網關routeadddefaultgw[gatewayaddress]routedeldefaultgw[gatewayaddress]/etc/resolve.conf此文件用于配置DNS交叉調試器嵌入式軟件開發(fā)過程中的交叉調試與本地軟件開發(fā)過程中的調試方式有所差別。本地軟件開發(fā)調試器與被調試的程序往往運行在同一臺計算機上。調試器是一個單獨運行著的進程,它通過操作系統(tǒng)提供的調試接口來控制被調試的進程。嵌入式軟件開發(fā)調試時采用的是在宿主機和目標機之間進行的交叉調試。調試器運行在宿主機,但被調試的進程卻是運行在目標板。調試器和被調試進程通過串口或者網絡進行通信,調試器可以控制、訪問被調試進程,讀取被調試進程的當前狀態(tài),并能夠改變被調試進程的運行狀態(tài)。

交叉調試器交叉調試器的結構交叉調試器Gdb調試器

溫馨提示

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

評論

0/150

提交評論