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

正文內(nèi)容

基于arm9的流媒體播放器的設(shè)計課程設(shè)計-文庫吧資料

2025-07-04 01:31本頁面
  

【正文】 enablelibavcodec_a disablelive 2amp。 (1)配置MPlayer。 MPlayer的移植 要使MPlayer能運(yùn)行在ARM平臺上,需要在宿主機(jī)上對MPlayer源代碼進(jìn)行針對性的配置和編譯,在進(jìn)行移植工作之前首先應(yīng)該獲得MPlayer的源代碼,可以到MPlayer的官方網(wǎng)站:。MPlayer幾乎能播放所有流行的音視頻格式文件,例如MPEG、AVI、WMV、MOV、FLV、RMVB、VOB、OGG等[14] [15] [16]。MPlayer是Linux下的一款優(yōu)秀的開源播放器軟件,MPlayer不僅支持X86平臺,也支持ARM平臺,所以本文選擇了移植MPlayer播放器進(jìn)行移植。制作yaffs文件系統(tǒng)的工具是mkyaffs2image,我們可以從網(wǎng)上下載和安裝好,然后使用如下命令:makeyaffs2image rootfs 。(3)制作根文件系統(tǒng)映像文件。此外還要向etc目錄中添加一些必要的配置文件,其中:etc/initttab、etc/。先建立一個系統(tǒng)的根目錄比如rootfs,然后把上一步生成的_install目錄里的內(nèi)容拷貝到rootfs目錄。Bin目錄和sbin目錄中包含了系統(tǒng)命令,usr中包含的是用戶命令。先把下載到的代碼使用如下命令解壓:tar jxvf menuconfig命令對Busybox進(jìn)行配置,: Busybox的配置菜單當(dāng)選好配置選項后,保存并退出。(1)配置編譯Busybox。BusyBox是最常使用的一個工具,Busybox可以把常見的linux命令打包編譯成一個單一的可執(zhí)行文件[7]。一種是下載相應(yīng)的命令的源代碼,并移植到處理器架構(gòu)平臺上。這些命令提供給用戶使用,以使用戶能方便地操作系統(tǒng)。按照FHS標(biāo)準(zhǔn),根文件系統(tǒng)頂層目錄至少要包含如下的目錄:bin、sbin、boot、root、home、etc、dev、opt、mnt、lib、proc、tmp、usr、var。根文件系統(tǒng)以樹形結(jié)構(gòu)來組織目錄和文件的結(jié)構(gòu),系統(tǒng)上電后,根文件系統(tǒng)被掛接到根目錄“/”上。由于以上特性,Cramfs在前如斯系統(tǒng)中應(yīng)用廣泛,但由于是只讀的屬性,也使得用戶無法進(jìn)行擴(kuò)充。Cramfs是Linux的創(chuàng)始人Linus Torvalds參與開發(fā)的一種只讀的壓縮文件系統(tǒng),也是基于MTD驅(qū)動程序的。Yaffs是第一個為NAND Flash存儲器設(shè)計的嵌入式文件系統(tǒng),適用于大容量的存儲設(shè)備,并且在GPL協(xié)議下發(fā)布,可免費(fèi)獲得其代碼[9]。 根文件系統(tǒng)介紹根文件系統(tǒng)是Linux操作系統(tǒng)運(yùn)行需要的一個文件系統(tǒng)。在Linux文件系統(tǒng)結(jié)構(gòu)中,內(nèi)核層的文件系統(tǒng)實(shí)現(xiàn)是必須的,Linux啟動時,第一個必須掛載的就是根文件系統(tǒng)[8]。接著我們只要使用make menuconfig命令,選擇相應(yīng)的選項并保存退出,再使用make zImage命令重新編譯內(nèi)核即可。s3c24xx_uda134x_data, }}。 UDA1341音頻驅(qū)動的移植GQ2440開發(fā)板上使用的是UDA1341音頻芯片,:static struct s3c24xx_uda134x_platform_data s3c24xx_uda134x_data = { .l3_clk = S3C2410_GPB(4), .l3_data = S3C2410_GPB(3), .l3_mode = S3C2410_GPB(2), .model = UDA134X_UDA1341,}。arm2440_lcd_cfg, .num_displays = 1, .default_display = 0, .gpccon = 0xaa955699, .gpccon_mask = 0xffc003cc, .gpcup = 0x0000ffff, .gpcup_mask = 0xffffffff, .gpdcon = 0xaa95aaa1, .gpdcon_mask = 0xffc0fff0, .gpdup = 0x0000faff, .gpdup_mask = 0xffffffff, .lpcsel = 0xf82,}。:if defined(CONFIG_FB_S3C2410_S320240)define LCD_WIDTH 320define LCD_HEIGHT 240define LCD_PIXCLOCK 100000define LCD_RIGHT_MARGIN 8define LCD_LEFT_MARGIN 5define LCD_HSYNC_LEN 6define LCD_UPPER_MARGIN 8define LCD_LOWER_MARGIN 3define LCD_VSYNC_LEN 10endifif defined (LCD_WIDTH)static struct s3c2410fb_display arm2440_lcd_cfg __initdata = {if !defined (LCD_CON5) .lcdcon5 = S3C2410_LCDCON5_FRM565 | S3C2410_LCDCON5_INVVLINE | S3C2410_LCDCON5_INVVFRAME | S3C2410_LCDCON5_PWREN | S3C2410_LCDCON5_HWSWP,else .lcdcon5 = LCD_CON5,endif .type = S3C2410_LCDCON1_TFT, .width = LCD_WIDTH, .height = LCD_HEIGHT, .pixclock = LCD_PIXCLOCK, .xres = LCD_WIDTH, .yres = LCD_HEIGHT, .bpp = 16, .left_margin = LCD_LEFT_MARGIN + 1, .right_margin = LCD_RIGHT_MARGIN + 1, .hsync_len = LCD_HSYNC_LEN + 1, .upper_margin = LCD_UPPER_MARGIN + 1, .lower_margin = LCD_LOWER_MARGIN + 1, .vsync_len = LCD_VSYNC_LEN + 1,}。其中s3c2410fb_mach_info用于表示LCD顯示器的平臺信息。 TFT顯示屏參數(shù)。 LCD控制器方框圖,其中的上邊界和下邊界即為幀切換的回掃時間,左邊界和右邊界即為行切換的回掃時間,水平同步和垂直同步分別是行和幀同步本身需要的時間。: TFT屏?xí)r序上圖中的VCLK、HSYNC、VSYNC分別為像素時鐘信號、行同步信號和幀同步信號,VDEN為數(shù)據(jù)有效標(biāo)志信號,VD為圖像的數(shù)據(jù)信號。LCD顯示器自然是必不可少的。最后重新編譯內(nèi)核即可完成了NAND Flash驅(qū)動的移植。 void __init mini2440_machine_init(void)里面添加如下代碼: = amp。為了使NAND Flash正常工作,還需把NAND Flash設(shè)備注冊到系統(tǒng)中,把Nand 。接下來還應(yīng)把開發(fā)板的NAND Flash設(shè)置表和NAND Flash本身的一些特性注冊進(jìn)內(nèi)核,:static struct s3c2410_nand_set friendly_arm_nand_sets[] = { [0] = { .name = NAND, .nr_chips = 1, .nr_partitions = ARRAY_SIZE(friendly_arm_default_nand_part), .partitions = friendly_arm_default_nand_part, },}。 Flash的移植工作。Linux內(nèi)核在MTD的下層實(shí)現(xiàn)了通用的NAND驅(qū)動(主要通過 driver/mtd/nand/),所以要實(shí)現(xiàn)NAND Flash的驅(qū)動并不需要太大的工作量。在Linux內(nèi)核中,引入了MTD(Memory Technology Device,內(nèi)存技術(shù)設(shè)備)層為NOR Flash和NAND Flash設(shè)備提供統(tǒng)一的接口,從而使得Flash驅(qū)動的設(shè)計工作大為簡化[9]。所以接下來還應(yīng)該為具體的硬件移植相應(yīng)的硬件驅(qū)動程序。執(zhí)行make zImage命令后將開始編譯內(nèi)核,編譯完成后將在在arch/arm/boot目錄下生成內(nèi)核文件在zImage。再把smdk2440_machine_init(void)函數(shù)中的smdk_machine_init()函數(shù)刪掉。(4)修改BSP。這就是外國的開發(fā)者對Mini2440設(shè)計的BSP,因?yàn)樗鼘ini2440的支持十分有限,所以可以不使用它,把它刪掉。(3) 替換BSP。Linux內(nèi)核缺省配置的目標(biāo)平臺是X86的,要使內(nèi)核能在運(yùn)行在ARM平臺上,修改總目錄里的Makefile文件。解壓完后,在/home/wusong目錄下將生成一個 。Linux的源代碼是開源的,可以到Linux的官方網(wǎng)站: 。以下將對移植的步驟進(jìn)行詳細(xì)的講解。本文使用的硬件開發(fā)板是GQ2440,GQ2440是參照友善之臂公司設(shè)計的Mini2440進(jìn)行擴(kuò)展設(shè)計的,硬件電路完全相同,Linux內(nèi)核已經(jīng)官方支持Mini2440,但官方的支持還是很有限。 Linux內(nèi)核移植步驟在移植內(nèi)核前需要在主機(jī)上安裝好Linux操作系統(tǒng),以完成對內(nèi)核代碼的配置和編譯的工作,本文采用主機(jī)安裝虛擬機(jī)并在虛擬機(jī)安裝Linux的方法。對于嵌入式系統(tǒng)來說,有各種體系結(jié)構(gòu)的處理器平臺,使用的外圍硬件也不一樣。當(dāng)完成前面的步驟后就可以進(jìn)行編譯了,執(zhí)行:make gq2440_config命令將會配置好開發(fā)板,接著執(zhí)行:make CROSS_COMPILE=armlinux 命令系統(tǒng)將開始編譯UBoot,編譯成功后會得到UBoot的映像,即可把其下載到開發(fā)板上。,還應(yīng)該進(jìn)入include/configs目錄為我們的開發(fā)板添加配置文件,然后再根據(jù)GQ2440開發(fā)板的具體情況進(jìn)行修改。這里建立gq2440目錄并把用于參考移植的sbc2410x目錄下的內(nèi)容全部拷貝到gq2440目錄下,此外還要把拷貝過來的文件內(nèi)容進(jìn)行修改,進(jìn)入gq2440目錄。 (2)在board目錄下創(chuàng)建開發(fā)板目錄,并添加文件。NULL:這位用于表示開發(fā)商者或經(jīng)銷商。在UBoot的頂層目錄的Makefile文件中定義了所有開發(fā)板的配置選項,首先應(yīng)該為開發(fā)板添加新的配置選項,參照SMDK2410的配置,加入如下語句:gq2440_config: unconfig $(MKCONFIG) $(:_config=) arm arm920t gq2440 NULL s3c24x0開發(fā)板配置選項中各項的含義如下:arm:表示CPU的架構(gòu)是ARM體系結(jié)構(gòu)。由于UBoot目前還不支持S3C2440處理器,所以移植的時候可以我們將以SBC2410開發(fā)板為參考,移植的工作就是針對S3C2440和s3c2410的不同,以及SBC2410和GQ2440開發(fā)板外設(shè)的不同做相應(yīng)的修改。在開始移植UBoot之前,應(yīng)該分析手上的UBoot源代碼已經(jīng)支持的開發(fā)板,選擇出硬件配置最接近的開發(fā)板作為參考。而今UBoot作為一個主流Bootloader,已
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1