freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于arm9的流媒體播放器的設(shè)計(jì)課程設(shè)計(jì)-在線瀏覽

2024-08-08 01:31本頁面
  

【正文】 發(fā)板作為參考,這樣能大大的降低移植的難度。以下為移植的詳細(xì)步驟:(1)添加新的配置選項(xiàng)。arm920t:表示CPU的內(nèi)核類型,對(duì)應(yīng)cpu、arm920t子目錄。S3c24x0:片上系統(tǒng)定義。在board目錄下存放著許多UBoot支持的開發(fā)板的子目錄,進(jìn)行移植時(shí)要為具體的開發(fā)板建立目錄并添加相應(yīng)文件。 (3)為開發(fā)板添加新的配置文件。(4)配置和編譯。 Linux內(nèi)核的移植內(nèi)核移植主要是指操作系統(tǒng)從一種硬件平臺(tái)轉(zhuǎn)移到另一種硬件平臺(tái)上運(yùn)行。嵌入式Linux嚴(yán)重依賴于具體硬件,所以只要硬件平臺(tái)有略微差別,也需要做一些移植的工作。作為主機(jī),虛擬機(jī)安裝的是Ret Hat公司發(fā)行的 Ret Hat Enterprise Linux 5。其實(shí)Mini2440是參考三星公司的SMDK2440設(shè)計(jì)而來的,它們的核心電路基本是一樣的,而且內(nèi)核對(duì)SMDK2440的支持非常豐富,所以本文將使用Mini2440的配置并以SMDK2440為參考進(jìn)行移植Linux內(nèi)核的移植。(1) 獲取源代碼。下載好源代碼后我們可以把源代碼解壓到指定目錄,例如執(zhí)行以下命令我們可以把Linux解壓到/home/wusong 目錄:tar xvzf –C /home/wusong。(2)指定交叉編譯變量。打開Makefile文件找到以下信息:export KBUILD_BUILDHOST : = $(SUBARCH)ARCH ? = $(SUBARCH)CROSS_COMPILE ? =把它改為:export KBUILD_BUILDHOST : = $(SUBARCH)ARCH ? = armCROSS_COMPILE ? = armlinux其中,ARCH是指定目標(biāo)平臺(tái)為ARM,CROSS_COMPILE是指定交叉編譯器,這里指定為系統(tǒng)默認(rèn)的交叉編譯器。Linux對(duì)于特定的硬件平臺(tái)的軟件就叫做BSP (Board Support Package)。而以SMDK2440的BSP為參考。在GQ2440開發(fā)板上使用的晶振是12MHz,所以我們要修改BSP指定的系統(tǒng)時(shí)鐘源,把static void __init smdk2440_map_io(void)函數(shù)內(nèi)的16934400改為12000000。:make mini2440_defconfig;make zImage;mini2440_defconfig是官方自帶的對(duì)mini2440的配置。這時(shí)把zImage下到開發(fā)板里,通過串口終端可以看到內(nèi)核是能正常啟動(dòng)的,但由于大部分驅(qū)動(dòng)都沒添加,也沒有根文件系統(tǒng),所以還無法登陸,開發(fā)板上資源也還不能正常使用。 Flash驅(qū)動(dòng)的移植Flash存儲(chǔ)器在嵌入式系統(tǒng)中是必不可少的,它是Bootloader、Linux內(nèi)核、文件系統(tǒng)和數(shù)據(jù)的最佳載體。在GQ2440開發(fā)板上有256M的NAND Flash存儲(chǔ)芯片。S3C2440的NAND Flash驅(qū)動(dòng)是以platform驅(qū)動(dòng)的形式實(shí)現(xiàn)的,在執(zhí)行probe()函數(shù)時(shí),初始化nand_chip實(shí)例并運(yùn)行nand_scan()函數(shù)掃描NAND Flash設(shè)備,最后調(diào)用add_mtd_partitions()函數(shù)添加BSP文件中定義的分區(qū)表。 Flash的分區(qū)表的代碼:static struct mtd_partition friendly_arm_default_nand_part[] = { [0] = { .name = bootloader, .size = 0x00040000, .offset = 0, }, [1] = { .name = param, .offset = 0x00040000, .size = 0x00020000, }, [2] = { .name = Kernel, .offset = 0x00060000, .size = 0x00500000, }, [3] = { .name = rootfs, .offset = 0x00560000, .size = 1024 * 1024 * 1024, // }, [4] = { .name = nand, .offset = 0x00000000, .size = 1024 * 1024 * 1024, // }}。static struct s3c2410_platform_nand friendly_arm_nand_info = { .tacls = 20, .twrph0 = 60, .twrph1 = 20, .nr_sets = ARRAY_SIZE(friendly_arm_nand_sets), .sets = friendly_arm_nand_sets, .ignore_unset_ecc = 1,}。除此外我們還應(yīng)該把NAND Flash的一些特性傳遞給驅(qū)動(dòng),首先在driver/mtd/nand目錄下找到NAND Flash的驅(qū)動(dòng)程序:,打開文件,在函數(shù)static int s3c2410_nand_setrate(struct s3c2410_nand_info*info)中添加如下代碼:struct s3c2410_platform_nand * plat = infoplatform 。mini2440_nand_info 。 LCD驅(qū)動(dòng)的移植對(duì)嵌入式視頻播放器來說。分辨率為320x240,帶觸摸屏的。,S3C2440的LCD控制器是用與傳輸視頻數(shù)據(jù)和產(chǎn)生必要的控制信號(hào),如VFRAME、VLINE、VCL、VM等,此外還有視頻數(shù)據(jù)端口VD[23:0]。xres和yres則分別是屏幕的水平和垂直分辨率。這兩個(gè)結(jié)構(gòu)體是s3c2410fb_mach_info和s3c2410_fb_display。s3c2410_fb_display用來表示LCD設(shè)備的機(jī)器信息,例如LCD顯示器的寬度、高度和每個(gè)像素占多少位等信息[6]。static struct s3c2410fb_mach_info arm2440_fb_info __initdata = { .displays = amp。endif然后還要在driver/video/Kconfig中加入如下配置信息:config FB_S3C2410_T240320 Boolean “ inch 240X320 Toppoly LCD” depends on FB_S3C2410 Help inch 240X320 Toppoly LCD接著可以使用make menuconfig命令進(jìn)入內(nèi)核配置,選擇相應(yīng)的選項(xiàng)并退出保存,然后重新編譯內(nèi)核即完成了LCD驅(qū)動(dòng)的移植工作。static struct platform_device s3c24xx_uda134x = { .name = s3c24xx_uda134x, .dev = { .platform_data = amp。此外還要把UDA1341設(shè)備添加到mini2440_devices數(shù)組中以UDA1341設(shè)備注冊(cè)到內(nèi)核中。 根文件系統(tǒng)的制作對(duì)嵌入式系統(tǒng)來說,除了一個(gè)嵌入式操作系統(tǒng)以外,還需要一個(gè)嵌入式文件系統(tǒng)用來管理和存儲(chǔ)數(shù)據(jù)、程序。若系統(tǒng)正常掛載根文件系統(tǒng),則系統(tǒng)會(huì)出錯(cuò)而退出啟動(dòng),所以要為嵌入式系統(tǒng)構(gòu)建一個(gè)根文件系統(tǒng)。在嵌入式領(lǐng)域,使用哪種文件系統(tǒng)需要根據(jù)存儲(chǔ)芯片的類型來決定,在嵌入式Linux應(yīng)用中,主要的存儲(chǔ)設(shè)備為RAM(DRAM,SDRAM)和ROM(Flash存儲(chǔ)器),常用的基于Flash存儲(chǔ)設(shè)備的文件系統(tǒng)類型包括jffsYaffs、Cramfs、Romfs、Ramdisk等,而作為根文件系統(tǒng)一般會(huì)選用Yaffs和Cramfs。Yaffs文件系統(tǒng)有4個(gè)主要優(yōu)點(diǎn):速度快、占用內(nèi)存少、不支持壓縮和只支持Yaffs存儲(chǔ)器。在Cramfs文件系統(tǒng)中,每一頁(4k)被單獨(dú)壓縮,可隨機(jī)頁訪問,其壓縮比高達(dá)2:1,為嵌入式系統(tǒng)節(jié)省大量的Flash存儲(chǔ)空間[10]?;谝陨媳容^本文將選用yaffs作為根文件系統(tǒng)。根文件系統(tǒng)應(yīng)該包含的目錄和文件遵循FHS標(biāo)準(zhǔn)(Filesystem Hierarchy Standard,文件系統(tǒng)層次標(biāo)準(zhǔn)),這個(gè)標(biāo)準(zhǔn)包含了根文件系統(tǒng)中最少應(yīng)該包含哪些目錄和文件,以及這些目錄的組織原則[13]。 根文件系統(tǒng)構(gòu)建根文件系統(tǒng)除了應(yīng)該以FHS標(biāo)準(zhǔn)的格式組織外,還應(yīng)該包含一些必要的命令。一般來說構(gòu)建根文件系統(tǒng)的方法有兩種。第二種方法是使用一些開源的工具構(gòu)建根文件系統(tǒng),例如使用BusyBox、TinyLogin和Embutils。本文就將使用BusyBox來構(gòu)建一個(gè)根文件系統(tǒng),下面將詳細(xì)講解如何使用BusyBox構(gòu)建一個(gè)根文件系統(tǒng)。Busybox的源代碼可以從。然后打開Makefile文件找到如下內(nèi)容:ARCH ? = $(SUBARCH)CROSS_COMPILE ? =這兩行是表示需要移植的處理器架構(gòu)和編譯使用的交叉編譯器,修改為:ARCH ? = armCROSS_COMPILE ? = armlinux然后分別執(zhí)行如下命令:makemake install執(zhí)行make install后,入_install目錄可以看到有如下目錄:bin、linuxrc、sbin、usr。(2)創(chuàng)建其他目錄和文件。根據(jù)FHS的標(biāo)準(zhǔn)還要在rootfs目錄里面添加如下幾個(gè)目錄:boot、root、home、etc、dev、opt、mnt、lib、proc、tmp、var。此外還應(yīng)該在dev目錄下創(chuàng)建一些必要的設(shè)備文件。最后還需要使用yaffs文件系統(tǒng)制作工具把rootfs目錄生成根文件系統(tǒng)映像文件,才能下載到開發(fā)上。第四章 視頻播放器的設(shè)計(jì)與實(shí)現(xiàn) MPlayer多媒體播放器介紹本設(shè)計(jì)是以嵌入式Linux作為程序的開發(fā)平臺(tái)的,所以可以充分利用開源代碼的特性,對(duì)與應(yīng)用程序的設(shè)計(jì)可以通過移植目前已有的成熟穩(wěn)定的開源軟件來實(shí)現(xiàn),這樣不僅極大的降了低產(chǎn)品的設(shè)計(jì)難度,提高研發(fā)速度,還能大大的降低產(chǎn)品開發(fā)的成本。MPlayer是一款開源的多媒體播放器,以GNU通用公共許可證發(fā)布,MPlayer具有占用資源低、支持格式廣泛和輸出設(shè)備支持多的特點(diǎn)。MPlayer具有廣泛的輸出設(shè)備支持,它可以在X1Xv、DGA、OpenGl、SVGAlib、fbdev、AAlib、DirectFB下工作,而且也能使用GGI和SDL以及一些低級(jí)的硬件相關(guān)的驅(qū)動(dòng)模式。下面將詳細(xì)的介紹MPlayer的移植過程。 因?yàn)橐筂Player在ARM平臺(tái)上工作,所以需要根據(jù)硬件進(jìn)行配置。1 | tee logfile (2)配置好MPlayer就可以對(duì)MPlayer進(jìn)行編譯了,這時(shí)候只要執(zhí)行make命令就可以了。當(dāng)把mplayer下載到開發(fā)板后可以先利用串口終端對(duì)mplayer進(jìn)行測(cè)試,看看是否能正常播放視頻文件,在mplayer所在的目錄執(zhí)行如下命令即可播放相應(yīng)的視頻文件了:./mplayer filename移植好MPlayer后,還應(yīng)該為其編寫一個(gè)控制程序,這樣才能方便地操作和使用視頻播放器。要使按鍵能正常工作,首先還需要為按鍵編寫一個(gè)驅(qū)動(dòng)程序。 按鍵和中斷源的對(duì)應(yīng)關(guān)系按鍵KEY 1KEY 2KEY 3KEY 4KEY 5KEY 6中斷EINT8EINT11EINT13EINT14EINT15
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1