版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
嵌入式系統(tǒng)開發(fā)專題報告劉澤建2006年6月9日精選ppt第一章嵌入式系統(tǒng)開發(fā)基礎第一節(jié)嵌入式系統(tǒng)開發(fā)所需的硬件基礎1、核心板、擴展板需要注意的問題:遠峰給我們的電源功率只有2A,有時會出現(xiàn)沒有顯示或顯示不正常、內核不能正常啟動等問題,這時需要測量電源輸入端看輸入電壓是否是5V左右。2、普通網(wǎng)線或交叉網(wǎng)線普通網(wǎng)線用于開發(fā)板與集線器之間的連接交叉網(wǎng)線用于開發(fā)板與PC機之間的連接精選ppt3、串口線;并口線、Multi-JTAG卡、20針扁平電纜精選ppt第二節(jié)BootLoader、kernel和文件系統(tǒng)的下載1、超級終端參數(shù)的設置開始→所有程序→附件→通訊→超級終端參數(shù)設置:每秒位數(shù):115200數(shù)據(jù)位:8奇偶校驗:無停止位:1數(shù)據(jù)流控制:無使用端口:COM1精選ppt2、vivi燒錄到目標板精選ppt3、zImage下載下載vivi后通過超級終端下載內核鏡像文件:vivi>loadflashkernelx精選ppt精選ppt精選ppt4、下載文件系統(tǒng)在下載內核鏡像文件zImage后,下載文件系統(tǒng):vivi>loadflashrootx精選ppt至此整個嵌入式Linux系統(tǒng)已經(jīng)建立,按復位鍵啟動vivi,然后回車,Linux將啟動,如下:請注意:對容量較大的文件系統(tǒng)得用ztelnet或tftp來下載.精選ppt第二章基于Linux的嵌入式系統(tǒng)開發(fā)第一節(jié)嵌入式Linux開發(fā)環(huán)境的建立1、工具鏈(交叉編譯環(huán)境)的建立◆解壓到/usr/local/arm下:tar–xvjfcross-2.95.3.tar.bz2◆修改PATH變量,在/etc/profile中增加exportPATH=/usr/local/arm/2.95.3/bin然后重啟即可。精選ppt2、minicom參數(shù)設置root>minicom–s進入?yún)?shù)設置:同超級終端的參數(shù)設置,注意要是Serialdevice為ttys0!3、ztelnet的安裝安裝:#rpm–ivhztelnet-0.9.1-7mz.i386.rpm精選ppt4、NFS設置NFS:允許一個系統(tǒng)在網(wǎng)絡上與他人共享目錄和文件,通過使用NFS,用戶和程序可以像訪問本地文件一樣訪問遠端系統(tǒng)上的文件。設置:◆關閉防火墻◆編輯/etc/exports文件,添加:/home/hello1(rw,sync)其中/home/hello為主機共享目錄1為目標板的IP地址◆啟動NFS:servicenfsstart精選ppt第二節(jié)嵌入式Linux的移植1、配置和編譯vivi#tar-jxvfvivi-20030629.tar.bz2#cdvivi#makemenuconfig選擇LoadonAlternateConfigurationFile調入arch/def-configs/smdk2410然后選擇exit和save,最后編譯:#make精選ppt如果在編譯vivi時出現(xiàn)錯誤:make./opt/host/armv41/bin/armv41-redhat-linux-gcccommandnotfound是因為交叉編譯的目錄不對,解決辦法將CROSS_COMPILE=/opt/host………這一行改為CROSS_COMPILE=arm-linux-如果在編譯vivi時出現(xiàn)錯誤:arm-linux-ld:cannnotfind-lgcc是因為找不交叉編譯的庫,解決辦法將ARM-GCC-LIBS=/opt/host………這一行改為ARM-GCC-LIBS=/usr/local/arm/2.95.3/gcc-lib/arm-linux/2.95.3精選ppt2、配置和編譯kernel#tar–zxvflinux-2.4.18-rmk7-pxal-m24.tar.gz#cdkernel#makemenuconfig選擇LoadonAlternateConfigurationFile調入arch/arm/def-configs/smdk2410然后選擇exit和save,最后編譯:#makedep#makezImage精選ppt3、文件系統(tǒng)的生成和移植#tar–jxvfbusybox-1.00.tar.gz#makemenuconfig#make#makeinstall之后將在根文件系統(tǒng)建立/usr、/bin、/sbin等,在這些目錄可看到可執(zhí)行文件和其他應用命令的符號鏈接。精選ppt4、啟動文件的含義及編寫執(zhí)行步驟:/etc/init.d/rcS→/etc/rc.local→/etc/profile如rcS如下:#!/bin/sh/bin/mount-aexec/etc/rc.local如rc.local如下:#!/bin/sh./etc/profile/bin/date061316302006/sbin/ifconfigloup/sbin/inetd/sbin/ifconfigeth01/sbin/modprobes3c2410-ts/sbin/modprobes3c2410-uda1341/sbin/modprobes3c2410_gpio_buttonsecho"static">/var/run/pcmcia-scheme………..具體參考我的論文第三章第一節(jié)精選ppt第三節(jié)嵌入式Linux應用程序開發(fā)入門1、應用程序的編寫,如main.c;main.cpp2、應用程序的編譯#gcc–omainmain.c#gcc–omainmain.c–lm#arm-linux-gccmainmain.c#g++–omainmain.c#g++–omainmain.c–lm#arm-linux-g++mainmain.c3、應用程序下載運行通過NFSmount到目標板或直接放到文件系統(tǒng)下載到開發(fā)板上調試運行./main精選ppt第三節(jié)嵌入式Linux驅動程序開發(fā)1、驅動程序基本概念Linux系統(tǒng)中,設備驅動程序是操作系統(tǒng)內核的重要組成部分,在與硬件設備之間建立了標準的抽象接口。通過這個接口,用戶可以像處理普通文件一樣,對硬件設備進行打開(open)、關閉(close)、讀寫(read/write)等操作。通過分析和設計設備驅動程序,可以深入理解Linux系統(tǒng)和進行系統(tǒng)開發(fā)。精選ppt2、一個驅動程序設計實例#include<linux/module.h>//同kernel.h,最基本的內核模塊頭文件#include<linux/kernel.h>//同module.h,最基本的內核模塊頭文件#include<linux/sched.h>//這里包含了進行正確性檢查的宏#include<linux/fs.h>//文件系統(tǒng)所必需的頭文件#include<asm/uaccess.h>//包含內核空間與用戶空間進行數(shù)據(jù)交換時的函數(shù)宏#include<asm/io.h>//I/O訪問intmy_open(structinode*inode,structfile*file){//每當應用程序用open打開設備時,此函數(shù)被調用}staticvoidmy_release(structinode*inode,structfile*file){//每當應用程序用close關閉設備時,此函數(shù)被調用}ssize_tmy_read(structfile*f,char*buf,intsize,loff_toff){//每當應用程序用read訪問設備時,此函數(shù)被調用}ssize_tmy_write(structfile*f,constchar*buf,intsize,loff_toff){//每當應用程序用write訪問設備時,此函數(shù)被調用}intmy_ioctl(structinode*inod,structfile*f,unsignedintarg1,unsignedintarg2){//每當應用程序用ioctl訪問設備時,此函數(shù)被調用}精選pptstructfile_operationsmy_fops={NULL,/*lseek*/my_read,my_write,NULL,NULL,my_ioctl,NULL,my_open,my_release,/*nothingmore,fillwithNULLs*/};module_init(){//每當裝配設備驅動程序時,系統(tǒng)自動調用此函數(shù)}module_exit(){//每當卸載設備驅動程序時,系統(tǒng)自動調用此函數(shù)}精選ppt編寫Makefile文件:CC=arm-linux-gccLD=arm-linux-ldCFLAGS=-D__KERNEL__-I/home/liu/embedsys/linuxkernel/usr/src/kernel/include/linux-I/home/liu/embedsys/linuxkernel/usr/src/kernel/include-Wall-Wstrict-prototypes-Wno-trigraphs-Os-mapcs-fno-strict-aliasing-fno-common-fno-common-pipe-mapcs-32-march=armv4-mtune=arm9tdmi-mshort-load-bytes-msoft-float-DKBUILD_BASENAME=s3c2410_testirq-I/usr/local/arm/2.95.3/include-DMODULE#spi.o:spi.cspi.o:spi.c $(CC)$(CFLAGS)-c$^-o$@
#all:spix.oall:spi.o.PHONY:cleanclean: -rm-f*.odistclean: @makeclean rm-ftags*~精選ppt編譯以后生成驅動程序模塊,然后可在啟動是加載或手動加載該驅動:#insmodspi.o//加載#rmmodspi//卸載精選ppt第五節(jié)基于嵌入式Linux的GUI開發(fā)請參考“基于Linux的QT程序設計專題報告”精選ppt第三章基于WinCE.net的嵌入式系統(tǒng)開發(fā)第一節(jié)WinCE.NET內核文件的生成WindowsCE.NET4.2+PlatformBuild4.2精選ppt具體WinCE.NET內核文件的生成和下載步驟請參考遠峰文檔《YF2410開發(fā)系統(tǒng)WINCE用戶手冊》精選ppt第二節(jié)應用程序開發(fā)環(huán)境的建立開發(fā)環(huán)境的兩種方式:eM
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 我的家鄉(xiāng)敘事課程設計
- 弦樂小夜曲課程設計
- 中西醫(yī)執(zhí)業(yè)醫(yī)師模擬試卷16
- 礦井灌漿設計課程設計
- 站姿坐姿課程設計
- 花藝烘焙課程設計
- 藥品驗收入門課程設計
- 互聯(lián)網(wǎng)行業(yè)安全管理實踐
- 領導班子與教學院校協(xié)調計劃
- 火災中的風險評估和分析培訓
- 職業(yè)生涯規(guī)劃班會課教案設計
- 微觀經(jīng)濟學(對外經(jīng)濟貿易大學)智慧樹知到期末考試答案2024年
- (正式版)HGT 6277-2024 甲醇制烯烴(MTO)級甲醇
- 注射用更昔洛韋的臨床療效研究
- 2023年1月廣東省自考00634廣告策劃試題及答案含解析
- 2024年青海西部機場集團青海機場有限公司招聘筆試參考題庫含答案解析
- 中國綠色建筑現(xiàn)狀與未來展望
- 河南省洛陽市2023-2024學年高二上學期期末考試英語試題(解析版)
- 超聲檢查醫(yī)療糾紛的防范培訓課件
- 采購管理的流程與原則
- 2022-2023學年山東省東營市東營區(qū)七年級(上)期末歷史試卷(五四學制)(附答案詳解)
評論
0/150
提交評論