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

正文內(nèi)容

畢業(yè)設(shè)計(jì)-紅外遙控攝像存儲儀的設(shè)計(jì)及實(shí)現(xiàn)-資料下載頁

2025-01-17 01:30本頁面
  

【正文】 S3C2440A 有 4 種電源模式,分別為正常、慢速、空閑和掉電模式,下面將詳細(xì)敘述每個電源管理模式,各個模式之間轉(zhuǎn)換需要滿足一定條件。 NORMAL MODE:在 NORMAL 模式,所有的外圍設(shè)備以及基本模塊,包括電源管理模塊、 CPU 核、總線控制器、內(nèi)存控制器、中斷控制器、 DMA、以及外部主控都可以完整的操作。 SLOW 模式 (非 PLL 模式 ):這個模式可以減少電源消耗,通過提供一個慢速時鐘且關(guān)閉了 PLL 模塊電源供應(yīng)。 IDLE MODE:在 IDLE 模式中, CPU 核的時鐘被關(guān)閉了,而總線控制器、內(nèi)存控制器、中斷控制器和電源管理模塊除外。 SLEEP 模式:電源管理模塊關(guān)閉內(nèi)部電源,因此, CPU 和內(nèi)部邏輯模塊都沒有電源消耗,除了此模式下的喚醒模塊。 圖 s3c2440 芯片結(jié)構(gòu)圖 中北大學(xué) 2022 屆畢業(yè)設(shè)計(jì)說明書 第 20 頁 共 37 頁 USB 攝像頭工作原理 攝像頭( CAMERA)又稱為電腦相機(jī)、電腦眼等,它作為一種視頻輸入設(shè)備,在過去被廣泛的運(yùn)用于視頻會議、遠(yuǎn)程醫(yī)療及實(shí)時監(jiān)控等方面。近年以來,隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,網(wǎng)絡(luò)速度的不斷提高,再加上感光成像器件技術(shù)的成熟并大量用于攝像頭的制造上,這使得它的價格降到普通人可以承受的水平。普通的人也可以彼此通過攝像頭在網(wǎng)絡(luò)進(jìn)行有影像、有聲音的交談和溝通,另外,人們還可以將其用于當(dāng)前各種流行的數(shù)碼影像、影音處理 [14]。 USB 攝像頭的工作原理大致為:景物通過鏡頭( LENS)生成的光學(xué)圖像投射到圖像傳感器表面上,然后轉(zhuǎn)為電信號,經(jīng)過 A/D(模數(shù) 轉(zhuǎn)換)轉(zhuǎn)換后變?yōu)閿?shù)字圖像信號,再送到數(shù)字信號處理芯片( DSP)中加工處理,再通過 USB 接口傳輸?shù)诫娔X中處理,通過顯示器就可以看到圖像了。 注 1:圖像傳感器( SENSOR)是一種半導(dǎo)體芯片,其表面包含有幾十萬到幾百萬的光電二極管。光電二極管受到光照射時,就會產(chǎn)生電荷。 注 2:數(shù)字信號處理芯片 DSP( DIGITAL SIGNAL PROCESSING)功能:主要是通過一系列復(fù)雜的數(shù)學(xué)算法運(yùn)算,對數(shù)字圖像信號參數(shù)進(jìn)行優(yōu)化處理,并把處理后的信號通過 USB 等接口傳到 PC 等設(shè)備。 DSP結(jié)構(gòu)框架 : 1. ISP( image signal processor)(鏡像信號處理器) 2. JPEG encoder( JPEG 圖像解碼器) 3. USB device controller( USB 設(shè)備控制器)。 紅外遙控器工作原理 遙控器由紅外接收及發(fā)射電路、信號調(diào)理電路、中央控制器 據(jù)存儲器、鍵盤及狀態(tài)指示電路組成。 遙控器有兩種狀態(tài):學(xué)習(xí)狀態(tài)和控制狀態(tài)。當(dāng)遙控器處于學(xué)習(xí)狀態(tài)時,使用者每按一個控制鍵,紅外線接收電路就開始接收外來紅外信號,同時將其轉(zhuǎn)換成電信號,然后經(jīng)過檢波、整形、放大,再由 CPU 定時對 其采樣,將每個采樣點(diǎn)的二進(jìn)制數(shù)據(jù)以 8 位為一個單位,分別存放到指定的存儲單元中去,供以后對該設(shè)備控制使用。當(dāng)遙控器處于控制狀態(tài)時,使用者每按下一個控制鍵, CPU 從指定的存儲單元中讀取一系列的二進(jìn)制數(shù)據(jù),串行輸出(位和位之間的時間間隔等于采樣時的時間間隔)給信號保持電路,同時由調(diào)制電路進(jìn)行信號調(diào)制,將調(diào)制信號經(jīng)放大后,由紅外線發(fā)射二極管進(jìn)行發(fā)射,從而實(shí)現(xiàn)對該鍵對應(yīng)設(shè)備功能的控制。 中北大學(xué) 2022 屆畢業(yè)設(shè)計(jì)說明書 第 21 頁 共 37 頁 該系統(tǒng)中,紅外遙控器發(fā)射出的信號由 51 單片機(jī)開發(fā)板中的紅外模塊接收,然后由 51 單片機(jī)控制步進(jìn)電機(jī)做出相應(yīng)的運(yùn)轉(zhuǎn)軌跡,并且轉(zhuǎn)速可調(diào)。 系統(tǒng)開發(fā)的軟件平臺 交叉編譯環(huán)境的搭建 交叉編譯是指在 PC 平臺上編寫出目標(biāo)平臺的代碼進(jìn)行編譯。嵌入式系統(tǒng)在設(shè)計(jì)的時候考慮到體積、功耗的要求,往往不允許獨(dú)立的開發(fā),它的程序由宿主機(jī)開發(fā)編譯,然后移植到目標(biāo)平臺。 下載開源的 編譯器,拷貝到文件系統(tǒng)中如~/dirname , 并 進(jìn) 入 該 目 錄 。 在 PC Linux 終端里 , 輸入 tar –xvzf –C /,安裝交叉編譯器(注意需要 root 權(quán)限)。輸入命 令vi ~/.bashrc 來配置當(dāng)前用戶的環(huán)境變量,可以在文件最后加入一行 export PATH=$PATH:/opt/FriendlyARM/toolschain/。在終端輸 armlinuxgcc –v,查看是否有提示信息,顯示出提示信息說明交叉編譯環(huán)境配置成功。 BootLoader 的移植 ? BootLoader 簡介 BootLoader 相當(dāng)于 PC 機(jī)上的 BIOS,在嵌入式系統(tǒng)中通常使用 BootLoader來啟動程序。 BootLoader 依賴于具體的硬件和應(yīng)用環(huán)境,不同的 CPU 有不同的BootLoader。它的操作模式分兩種:啟動加載模式 amp。下載模式。啟動加載模式是指系統(tǒng)上電后自動地將存儲器中的操作系統(tǒng)拷貝到 SDRAM 中運(yùn)行,下載模式一般針對開發(fā)人員。 BootLoader 跟硬件有很大的關(guān)聯(lián),它除了依賴于 CPU 的體系結(jié)構(gòu)外,還依賴于嵌入式系統(tǒng)的具體硬件配置,因此不可能有一個 BootLoader支持所有的 CPU和硬件電路板,開發(fā)人員必須根據(jù)板子修改代碼。目前 BootLoader 的種類有很多,在 X86 上有 LILO、 GRUB 等等,在嵌入式系統(tǒng)中有 Uboot、 VIVI、 BOLB等, VIVI 是韓國 MIZI 公司開發(fā)專門針對 Samsung 公司的 ARM 架構(gòu)的一種BootLoader,基本上可以直接使用,命令簡單方便。 BLOB 是基于 LART 硬件平臺,目前它主要支持 Intel 的 StringARM 和 XScale 體系結(jié)構(gòu)的 ARM 芯片。 ? vivivboot 簡介 這里啟動開發(fā)板 Linux 使用的是又開發(fā)板提供商 FriendlyARM 制作的中北大學(xué) 2022 屆畢業(yè)設(shè)計(jì)說明書 第 22 頁 共 37 頁 BootLoader: vboot,也是一款開源軟件,兼容 64MB1GBNand Flash。 通過 USBslave 燒寫到開發(fā)板的 NAND Flash 中。 嵌入式 Linux 內(nèi)核 ? Linux 內(nèi)核版本及特點(diǎn) 操作系統(tǒng)是一個用來和硬件打交道并為用戶程序提供一個有限服務(wù)集的低級支撐軟件。一個計(jì)算機(jī)系統(tǒng)是一個硬件和軟件的共生體,它們互相依賴,不可分割。計(jì)算機(jī)的硬件,含有外圍設(shè)備、處理器、內(nèi)存、硬盤和其他的電子設(shè)備組成計(jì)算機(jī)的發(fā)動機(jī)。但是沒有軟件來操作和控制它,自身是不能工作的。完成這個控制工作的軟件就稱為操作系統(tǒng),在 Linux 的術(shù)語中被稱為 ―內(nèi)核 ‖,也可以稱為 ―核心 ‖。 Linux 內(nèi)核的主要模塊(或組件)分以下幾個部分:存儲管理、 CPU和進(jìn)程管理、文件系統(tǒng)、設(shè)備管理和驅(qū) 動、網(wǎng)絡(luò)通信,以及系統(tǒng)的初始化(引導(dǎo))、系統(tǒng)調(diào)用等。內(nèi)核就是實(shí)現(xiàn)操作系統(tǒng)整體功能最核心的代碼,它是整個操作系統(tǒng)的核心。內(nèi)核處于硬件層和軟件層之間,作用是為底層部件提供服務(wù),為上次應(yīng)用程序提供運(yùn)行環(huán)境。不同的硬件平臺對內(nèi)核的要求也不同,所以從一個平臺到另外一個平臺就需要對內(nèi)核進(jìn)行重新配置和翻譯, Linux 是一款適應(yīng)性很強(qiáng)且容易裁剪的操作系統(tǒng)。 Linux 內(nèi)核使用三種不同的版本編號方式。第一種方式用于 版本之前(包括 )。第一個版本是 ,,, , , 。第二種方式用于 ,數(shù)字由三部分 ―‖,A 代表主版本號, B 代表次版本號, C 代表較小的末版本號。只有在內(nèi)核發(fā)生很大變化時(歷史上只發(fā)生過兩次, 1994 年的 ,1996 年的 ), A 才變化??梢酝ㄟ^數(shù)字 B 來判斷 Linux 是否穩(wěn)定,偶數(shù)的 B 代表穩(wěn)定版,奇數(shù)的 B 代表開發(fā)版。 C 代表一些 bug 修復(fù),安全更新,新特性和驅(qū)動的次數(shù)。以版本 為例, 2 代表主版本號, 4 代表次版本號, 0 代表改動較小的末版本號。在版本號中,序號的第二位為偶數(shù)的版本表明這是一個可以使用的穩(wěn)定版本,如 ,而序號的第二位為奇數(shù)的版本一般有一些新的東西加入,是個不一定很穩(wěn)定的測試版本,如 。這樣穩(wěn)定版本來源于上一個測試版升級版本號,而一個穩(wěn)定版本發(fā)展到完全成熟后就不再發(fā)展。第三種方式從 2022 年 版本開始,使用一種 ―timebased‖的方式。 版本之前,是一種 ―‖的格式。七年里,前中北大學(xué) 2022 屆畢業(yè)設(shè)計(jì)說明書 第 23 頁 共 37 頁 兩個數(shù)字 即 ―‖保持不變, C 隨著新版本的發(fā)布而增加 ,D 代表一些 bug 修復(fù),安全更新,添加新特性和驅(qū)動的次數(shù)。 版本之后是 ―‖格式, B 隨著新版本的發(fā)布而增加 ,C 代表一些 bug 修復(fù),安全更新,新特性和驅(qū)動的次數(shù)。第三種方式中不使用偶數(shù)代表穩(wěn)定版,奇數(shù)代表開發(fā)版這樣的命名方式。舉個例子: 代表的不是開發(fā)版,而是穩(wěn)定版。 ? Linux 內(nèi)核的組成部分 Linux 內(nèi)核主要由五個子系統(tǒng)組成:進(jìn)程調(diào)度,內(nèi)存管理,虛擬文件系統(tǒng),網(wǎng)絡(luò)接口,進(jìn)程間通信。 1)進(jìn)程調(diào)度( SCHED) :控制進(jìn)程對 CPU 的訪問。當(dāng)需要選擇下一個進(jìn)程運(yùn)行時,由調(diào)度程序選擇最值得運(yùn)行的進(jìn)程??蛇\(yùn)行 進(jìn)程實(shí)際上是僅等待 CPU 資源的進(jìn)程,如果某個進(jìn)程在等待其它資源,則該進(jìn)程是不可運(yùn)行進(jìn)程。 Linux 使用了比較簡單的基于優(yōu)先級的進(jìn)程調(diào)度算法選擇新的進(jìn)程。 2)內(nèi)存管理( MM)允許多個進(jìn)程安全的共享主內(nèi)存區(qū)域。 Linux 的內(nèi)存管理支持虛擬內(nèi)存,即在計(jì)算機(jī)中運(yùn)行的程序,其代碼,數(shù)據(jù),堆棧的總量可以超過實(shí)際內(nèi)存的大小,操作系統(tǒng)只是把當(dāng)前使用的程序塊保留在內(nèi)存中,其余的程序塊則保留在磁盤中。必要時,操作系統(tǒng)負(fù)責(zé)在磁盤和內(nèi)存間交換程序塊。內(nèi)存管理從邏輯上分為硬件無關(guān)部分和硬件有關(guān)部分。硬件無關(guān)部分提供了進(jìn)程的映射和 邏輯內(nèi)存的對換;硬件相關(guān)的部分為內(nèi)存管理硬件提供了虛擬接口。 3)虛擬文件系統(tǒng)( Virtual File System , VFS)隱藏了各種硬件的具體細(xì)節(jié),為所有的設(shè)備提供了統(tǒng)一的接口, VFS 提供了多達(dá)數(shù)十種不同的文件系統(tǒng)。虛擬文件系統(tǒng)可以分為邏輯文件系統(tǒng)和設(shè)備驅(qū)動程序。邏輯文件系統(tǒng)指 Linux 所支持的文件系統(tǒng),如 ext2,fat 等,設(shè)備驅(qū)動程序指為每一種硬件控制器所編寫的設(shè)備驅(qū)動程序模塊。 4)網(wǎng)絡(luò)接口( NET)提供了對各種網(wǎng)絡(luò)標(biāo)準(zhǔn)的存取和各種網(wǎng)絡(luò)硬件的支持。網(wǎng)絡(luò)接口可分為網(wǎng)絡(luò)協(xié)議和網(wǎng)絡(luò)驅(qū)動程序。網(wǎng)絡(luò)協(xié)議 部分負(fù)責(zé)實(shí)現(xiàn)每一種可能的網(wǎng)絡(luò)傳輸協(xié)議。網(wǎng)絡(luò)設(shè)備驅(qū)動程序負(fù)責(zé)與硬件設(shè)備通訊,每一種可能的硬件設(shè)備都有相應(yīng)的設(shè)備驅(qū)動程序。 5)進(jìn)程間通訊 (IPC) 支持進(jìn)程間各種通信機(jī)制。 ? Linux 內(nèi)核移植與文件系統(tǒng) 中北大學(xué) 2022 屆畢業(yè)設(shè)計(jì)說明書 第 24 頁 共 37 頁 這里使用的是 FriendlyARM提供的 zImage_X35內(nèi)核文件,其適用于 mini2440開發(fā)板,配備 x35Sony ?‘LCD 顯示屏。 文件系統(tǒng)為 FriendlyARM 制作的文件系統(tǒng) ,它集成了 ,實(shí)現(xiàn)了兩種圖形系統(tǒng)的無縫切換,在 Qtopa 中有一個圖標(biāo)直接可以 啟動 QtE,非常方便。 中北大學(xué) 2022 屆畢業(yè)設(shè)計(jì)說明書 第 25 頁 共 37 頁 3 嵌入式視頻監(jiān)控應(yīng)用程序設(shè)計(jì) V4L2 視頻圖像采集程序設(shè)計(jì) V4L2 簡介 V4L,其全稱是 Video4Linux( Video for Linux),是在 Linux 內(nèi)核中關(guān)于視頻設(shè)備的 API 接口,涉及開關(guān)視頻設(shè)備、采集并處理視頻圖像信息。 V4L 從 版本的內(nèi)核中開始出現(xiàn)。 而現(xiàn)在出現(xiàn) Video4Linux2 ( Video for Linux Two),簡稱 V4L2,他是 V4L的改進(jìn)版,修復(fù)了第一代的部分設(shè)計(jì) bug。從 開始, V4L2 就被集成到內(nèi)核里面去了。盡管如此,還是有一部分設(shè)備的驅(qū)動不支持新版本的 V4L2,所以,有時候我們會看到 V4L 跟 V4L2 同時出現(xiàn)在代碼里面。 它是一些視頻系統(tǒng),視頻軟件,音頻軟件的基礎(chǔ),經(jīng)常使用在需要采集圖像的場合,如視頻監(jiān)控, webcam,可視電話,經(jīng)常應(yīng)用在 embedded Linux 中是 Linux嵌入式開發(fā)中經(jīng)常使用的系統(tǒng)接口。它是 Linux 內(nèi)核提供給用戶空間的編程接口,各種的視頻和音頻設(shè)備開發(fā)相應(yīng)的驅(qū)動程序后,就可以通過 v4l 提供的系統(tǒng) API來控制視頻和音頻設(shè)備,也就是說 v4l 分為兩層,底層為音視頻設(shè)備在內(nèi)核中的驅(qū)動,上層為系統(tǒng)提供的 API,而對于我們來說需要的就是使用這些系統(tǒng)的 API。 圖像數(shù)據(jù)編碼的實(shí)現(xiàn) Linux 系統(tǒng)中,視頻設(shè)備被當(dāng)作一個設(shè)備文件來看待,設(shè)備文件存放在 /dev目錄下,完整路徑的設(shè)備文件名為: /dev/video0 視頻采集基本步驟流程如下:打開視頻設(shè)備,設(shè)置視頻設(shè)備屬性及采集方式、視頻數(shù)據(jù)處理,關(guān)閉視頻設(shè)備 。 打開視頻設(shè)備 打開視頻設(shè)備非常簡單,在 V4L2 中,視頻設(shè)備被看做 是 一個文件。使用 open函數(shù)打開這個設(shè)備: 攝像頭設(shè)備 int cameraFd。 cameraFd = open(/dev/video0, O_RDWR | O_NONBLOCK)。 ,上述代碼變?yōu)椋?
點(diǎn)擊復(fù)制文檔內(nèi)容
電大資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1