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

正文內(nèi)容

基于s3c2440的ip可視電話的設(shè)計(jì)與實(shí)現(xiàn)-預(yù)覽頁

2024-12-14 15:04 上一頁面

下一頁面
 

【正文】 下的應(yīng)用軟件都可平滑移植到該系統(tǒng)上。目前國內(nèi)一個(gè)普遍被認(rèn)同的定義是:以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ)、軟件硬件可裁剪、適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。這是由于嵌入式系統(tǒng)的 軟件結(jié)構(gòu)已模塊化,而為了避免在軟件模塊之間出現(xiàn)錯(cuò)誤的交叉作用,需要設(shè)計(jì)強(qiáng)大的存儲(chǔ)區(qū)保護(hù)功能,同時(shí)也有利于軟件診斷。 第二章 研究了與系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn)相關(guān)的技術(shù)并給出了軟硬件總體設(shè)計(jì)方案。對(duì)全文進(jìn)行總結(jié),分析了設(shè)計(jì)中存在的不足和后續(xù)工 作的展望。越來越多的應(yīng)用處理器集成了硬件加速功能,我們可以利用硬件加速來處理視頻編碼和解碼 (見圖 )。其中,在提供最低碼率、高質(zhì)量的實(shí)時(shí)視頻方面, (也稱為 MPEG4 AVC)最優(yōu),其缺點(diǎn)是 需要比 更高的處理能力。 UDP 協(xié)議的幾個(gè)特性: ( 1) UDP 是一 個(gè)無連接協(xié)議 ,傳輸數(shù)據(jù)之前源端和終端不建立連接,當(dāng)它想傳送時(shí)就簡單地去抓取來自應(yīng)用程序的數(shù)據(jù),并盡可能快地把它扔到網(wǎng)絡(luò)上。 ( 4) 吞吐量不受擁擠控制算法的調(diào)節(jié),只受應(yīng)用軟件生成數(shù)據(jù)的速率、傳輸帶寬、源端和終端主機(jī)性能的限制。既不拆分,也不合并,而是保留這些報(bào)文的邊界,因此,應(yīng)用程序需要選擇合適的報(bào)文大小。被動(dòng)態(tài)加載的模塊仍然在內(nèi)核中運(yùn)行,而不是像在微內(nèi)核中那樣作為單獨(dú)的進(jìn)程運(yùn)行,其運(yùn)行效率也能得到保證。 (3) 支持 NFS 網(wǎng)絡(luò)文件系統(tǒng),方便程序的加載和調(diào)試。最底層的是 Bootloader 為啟動(dòng)加載代碼,負(fù)責(zé)芯片初始化和嵌入式 Linux 操作系統(tǒng)的加載;硬件驅(qū)動(dòng)程序用于驅(qū)動(dòng)底層硬件模塊; Linux 內(nèi)核實(shí)現(xiàn)了操作系統(tǒng)的功能,提供應(yīng)用程序的運(yùn)行平臺(tái);中間件是指一些軟件模塊和函數(shù)庫,例如視頻編解碼函數(shù)庫,為上層軟件提供了訪問底層硬件 的接口且屏蔽了調(diào)用底層硬件驅(qū)動(dòng)的復(fù)雜性;最上層的則是完成具體功能的應(yīng)用程序。使用該開發(fā)模式的開發(fā)步驟如下: 首先,在 Windows 上安裝 Linux 虛擬機(jī)上,并在虛擬機(jī)上安裝交叉 編譯器并建立 NFS 文件系統(tǒng)服務(wù)器;然后在 Linux 目標(biāo)板上將虛擬機(jī)的 NFS文件系統(tǒng)掛載,實(shí)現(xiàn)對(duì) Linux 虛擬機(jī)上文件的訪問;接下來在 Linux 虛擬機(jī)上運(yùn)行交叉編譯器生成可執(zhí)行代碼,并將可執(zhí)行代碼存到 NFS 文件系統(tǒng)服務(wù)器上; 12 最后在 Linux 目標(biāo)板中直接運(yùn)行編譯過的可執(zhí)行文件。其中, binutils 是 GNU 工具之一,包括連接器、匯編器和其他用于目標(biāo)文件的工具,它是二進(jìn)制代碼的處理維護(hù)工具; gcc 是 GNU 的交叉編譯器,用于完成交 叉編譯; glibc 是 GNU 的 C 庫,包含一系列的庫文件,為交叉編譯提供鏈接庫。 (3) 建立 glibc 庫:使用上一步生成的 armlinuxgcc 作為交叉編譯器,編譯生成可以在目標(biāo)板運(yùn)行的 glibc 庫。 13 Bootloader 概述 Bootloader 位于 Linux 系統(tǒng)的軟件體系結(jié)構(gòu)的最底層,也是開發(fā)嵌入式Linux 系統(tǒng)中最早需要開發(fā)的軟件模塊,但其依賴于具體的硬件實(shí)現(xiàn),不同的嵌入式系統(tǒng)上要使用不同的 Bootloader,但它一般可以分為 Stage1 和 Stage2 兩個(gè)階段, Stage1 為依賴于 CPU 體系結(jié)構(gòu)的代碼,通常用匯編實(shí)現(xiàn),達(dá)到短小精悍的目的。 (2) 下載模式:該模式用于開發(fā)人員對(duì)目標(biāo)板軟件系統(tǒng)的更新,此時(shí),目標(biāo)板上的 Bootloader 會(huì)通過串口或網(wǎng)絡(luò)連接等通信手段從主機(jī)上下載文件,例如內(nèi)核映像和根文件系統(tǒng)等。 3) Bootloader 的編譯 由于 Bootloader 需要在 目標(biāo)板上運(yùn)行,所以要使用前面生成的交叉編譯工具鏈將它重新編譯鏈接后寫到目標(biāo)板的非易失性存儲(chǔ)器中。由于免費(fèi)獲得的只是一個(gè) Linux 內(nèi)核源代碼,必須要編譯為支持目標(biāo)板硬件平臺(tái)的可執(zhí)行文件后才能在目標(biāo)板上運(yùn)行起來,這個(gè)過程稱為內(nèi)核的移植。首先要修改的是 makefile 文件,設(shè)置處理器類型和交叉編譯器的路徑;然后建立 存儲(chǔ)器分區(qū)表,筆者的目標(biāo)板存儲(chǔ)器是 NAND Flash,故要在相關(guān)設(shè)備文件中添加 NAND Flash 分區(qū)表及支持代碼;最后使用 make menuconfig 命令適當(dāng)配置內(nèi)核,包括處理器、文件系統(tǒng)和設(shè)備驅(qū)動(dòng)模塊等的設(shè)置,如圖 所示。 4. 根文件系統(tǒng)的制作 根文件系統(tǒng)是嵌入式 Linux 系統(tǒng)不可或缺的組件,用于存放可執(zhí)行文件、系統(tǒng)配置文件、必要的鏈接庫等文件。 (2) 設(shè)置根文件系統(tǒng)的內(nèi)容,首先,建立根文件系統(tǒng)對(duì)應(yīng)的目錄 rootfs,并在其下建立適當(dāng)?shù)淖幽夸?,由于嵌入?Linux 系統(tǒng)一般是單用戶系統(tǒng),所以很多只對(duì)多用戶系統(tǒng)才有意義的 Linux 系統(tǒng)子目錄可以不放到根文件系統(tǒng)目錄中,但有些子目錄是必須的,包括 /bin、 /dev、 /etc、 /lib、 /proc、 /sbin、 /usr 這些內(nèi)容。 (3) 使用特定制作工具制作特定類型的文件系統(tǒng),例如要制作 JFFS2 文件系統(tǒng), 可以使用 工具,將文件夾 rootfs 格式化為適合目標(biāo)板存儲(chǔ)器的 JFFS2 文件系統(tǒng) 。ARM 是知識(shí)產(chǎn)權(quán) (PI)供應(yīng)商,本身不生產(chǎn)芯片,主要是出售芯片設(shè)計(jì)的授權(quán),由合作伙伴公司來生產(chǎn)各具特色的芯片。 S3C2410X 處理器系統(tǒng)管理 ( 1) 支持大端( Big Endian) /小端( Little Endian)模式; ( 2) 8 個(gè)內(nèi)存塊: 6個(gè)用于 ROM、 SRAM 及其他, 2 個(gè)用于 ROM/SRAM/SDRAM; ( 3) 地址空間:每個(gè)內(nèi)存塊 128MB(共 1GB), 每個(gè)內(nèi)存支持 8/16/32 位數(shù)據(jù)總線編程; ( 4) 1 個(gè)起始地址和大小可編程的內(nèi)存塊( Bank7); ( 5) 7 個(gè)起始地址固定的內(nèi)存塊( Bank0- Bank6); 20 ( 6) 所有內(nèi)存塊可編程尋址周期; ( 7) 支持 SDRAM 自動(dòng)刷新模式; ( 8) 支持多種類型 ROM 啟動(dòng),包括 NOR/NAND Flash、 EEPROM 等。 (4) NAND FLASH 控制器外接 NAND Flash 芯片,一般用作系統(tǒng)的外部存儲(chǔ)器, 存放 Bootloader、內(nèi)核映像和文件系統(tǒng)。 (8) 時(shí)鐘和電源接口連接外部晶振和電源,構(gòu)成了芯片工作的支撐電路。電路圖如所示,圖中 Y1 和 Y2 分別為對(duì)應(yīng)的 2 個(gè)外部晶振,XTAL32K 和 EXTAL12M 分別為兩個(gè)時(shí)鐘源的輸出引腳。 V D D 33S 301R E S E TR 30310KnR E S E TR E S E TnM R1V C C2P F I4NC6R S T8nR S T7nP F O5GND3U 301S P 708S ( S O 8)V D D 33S 302R E S E T 圖 復(fù)位電路 23 4. JTAG 調(diào)試接口 JTAG(Joint Test Action Group,聯(lián)合測試行動(dòng)小組 )是一種主要用于芯片內(nèi)部測試的國際標(biāo)準(zhǔn)測試協(xié)議,兼容 [40],現(xiàn)在大多數(shù)的微處理器都支持 JTAG 協(xié)議。 2440 的 JTAG 控制器模塊用于內(nèi)部 ARM920T 內(nèi)核的調(diào)試,兼容 標(biāo)準(zhǔn)的。 2468101214135791113151617181920C O N 3 0 1J T A G amp。 使用 LCDC 顯示圖像之前,首先需要設(shè)置 LCDC 控制器內(nèi)部的寄存器SSA(Screen Start Address,屏幕起始地址 ), SSA 表示需要 顯示的圖像在內(nèi)存中的起始地址,之后 LCDC 結(jié)合特定 LCD 的顯示分辨率和色深,計(jì)算出圖像中每個(gè)像素點(diǎn)的內(nèi)存地址,從而將內(nèi)存中每個(gè)像素點(diǎn)寫入 LCD 顯示。 26 nV FR A M E nV LI NEnV C LKnV MLE NDLC D _P WR E NnV D 3 nV D 4nV D 5 nV D 6nV D 7nV D 10nV D 11nV D 12 nV D 13nV D 14 nV D 15nV D 19nV D 20 nV D 21nV D 22 nV D 23V D D LC DGNDGNDGNDGNDnR E S E T1 23 45 67 89 1011 1213 1415 1617 1819 2021 2223 2425 2627 2829 3031 3233 3435 3637 3839 4041 4243 4445 4647 4849 50C O N 2 0 1L C DT S X M T S X PGNDT S Y M T S Y PGNDGNDV D D LC D 圖 LCD液晶屏顯示電路 語音采集和播放電路 S3C2410 處理器內(nèi)置了 IIS 總線接口, S3C2410 的 IIS 總線時(shí)鐘信號(hào) SCK 與 Philip 公司的 UDA1341 的 BCK 連接,字段選擇連接于 WS 引腳。 S3C2410 與 UDA1341 IIS 接口連接 Philips 公司的 UDA1341 支持 IIS 總線數(shù)據(jù)格式,采用位元流轉(zhuǎn)換技術(shù)進(jìn)行信號(hào)處理,完成聲音信號(hào)的模數(shù)轉(zhuǎn)換,具有可編程增益放大器和數(shù)字自動(dòng)增益控制器,其低功耗、低電壓的特點(diǎn)使其非常適合用于 MD/CD、筆記本電腦等便攜式設(shè)備。顯然選用第二組可以通過 L3 總線接口控制 AGC 來實(shí)現(xiàn)。是當(dāng)今現(xiàn)有局域網(wǎng)采用的最通用的通信協(xié)議標(biāo)準(zhǔn)。 接口的工作模式 以太網(wǎng)卡可以工作在兩種模式下:半雙工和全雙工。 全雙工:全雙工傳輸是采用點(diǎn)對(duì)點(diǎn)連接,這種安排沒有沖突,因?yàn)樗鼈兪褂秒p絞線中兩個(gè)獨(dú)立的線路,這等于沒有安裝新的介質(zhì)就提高了 帶寬 。 △ 以太網(wǎng)的工作原理 以太網(wǎng)采用帶沖突檢測的載波幀聽多路訪問機(jī)制。 若沒有監(jiān)聽到任何信號(hào),就傳輸數(shù)據(jù) 傳輸?shù)臅r(shí)候繼續(xù)監(jiān)聽,如發(fā)現(xiàn)沖突則執(zhí)行退避算法,隨機(jī)等待一段時(shí)間后,重新執(zhí)行步驟 1(當(dāng)沖突發(fā)生時(shí),涉及沖突的計(jì)算機(jī)會(huì)發(fā)送會(huì)返回到監(jiān)聽信道狀態(tài)。 △ 沖突 沖突( Collision):在以太網(wǎng)中,當(dāng)兩個(gè)數(shù)據(jù)幀同時(shí)被發(fā)到物理傳輸介質(zhì)上,并完全或部分重疊時(shí),就發(fā) 生了數(shù)據(jù)沖突。產(chǎn)生沖突的原因有很多,如同一沖突域中節(jié)點(diǎn)的數(shù)量越多,產(chǎn)生沖突的可能性就越大。 △ 廣播 /廣播域 廣播:在網(wǎng)絡(luò)傳輸中,向所有連通的節(jié)點(diǎn)發(fā)送消息稱為廣播。 廣播是指由廣播幀構(gòu)成的數(shù)據(jù)流量,這些廣播幀以廣播地址(地址的每一位都為 “1” )為目的地址,告之網(wǎng)絡(luò)中所有的計(jì)算機(jī)接收此幀并處理它。 軟件總體設(shè)計(jì) 軟件總體設(shè)計(jì)包括中間件和應(yīng)用層軟件的設(shè)計(jì)。 V4L2 架構(gòu) V4L2 是 Linux 提供的一個(gè)視頻處理編程接口,包括視頻的采集和顯示、大小調(diào)整、顏色空間的轉(zhuǎn)換等處理,針對(duì)開發(fā)視頻應(yīng)用軟件的工程師來說,只需使用這些接口就可快速的實(shí)現(xiàn)視頻采集和顯示等功能。 結(jié)合模塊封裝思想,筆者實(shí)現(xiàn)了視頻采集和顯示模塊,采集模塊包括頭文件mxc_v4 和實(shí)現(xiàn)文件 ,前者用于相關(guān)常量和結(jié)構(gòu)體的定義以及函數(shù)的聲明,后者定義了前者聲明的函數(shù);顯示模塊也由頭文件 和實(shí)現(xiàn)文件 組成。 32 v4l 是 linux 中提供的一個(gè)音 視頻接口規(guī)范,所有的音視頻設(shè)備的驅(qū)動(dòng)編寫要用的這些接口,例如: (1)程序中定義的數(shù)據(jù)結(jié)構(gòu) struct video_capability grab_cap。 這些數(shù)據(jù)結(jié)構(gòu)都是 Video4Linux 支持的,它們的用途 如下: ◆ video_capability 包含攝像頭的基本信息,例如設(shè)備名稱、 支持的最大最小分辨率、信號(hào)源信息等,分別對(duì)應(yīng)著結(jié)構(gòu)體中成員變量 n a m e [ 3 2 ] 、 m a x w i d t h 、 maxheight、 minwidth、 minheight、 channels(信號(hào)源個(gè)數(shù) )、 type 等; ◆ video_picture 包含設(shè)備采集圖象的各種屬性,如 brightness(亮度 )、hue(色調(diào) )、 contrast(對(duì)比度 )、 whiteness(色度 )、 depth(深度 )等 。同時(shí)因其靈活、方便的特性,易于集成到嵌入式系統(tǒng)中。 33 USB 攝像頭驅(qū)動(dòng)的 一般編寫方法 攝像頭屬于視頻類設(shè)備。 因此, USB 攝像頭的驅(qū)動(dòng)應(yīng)當(dāng)與內(nèi)核提供的視頻驅(qū)動(dòng)掛鉤。例如: staticstructvideo_devicevdev_template= {?? }; //聲明 video_device,指出掛接驅(qū)動(dòng) staticstructfile_operationsov511_fops= {?? }; //聲明本驅(qū)動(dòng)的文件操作函數(shù)指針 structvideo_device*vdev= video_devdata(file); //從文件指針中提取出 video_device 結(jié)構(gòu) 在 video_device 結(jié)構(gòu)中,有一個(gè)私有指針 priv,可以將它指向一塊保留
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1