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

正文內(nèi)容

基于linux系統(tǒng)的遠(yuǎn)程視頻監(jiān)控畢業(yè)設(shè)計說明書-預(yù)覽頁

2025-07-17 06:42 上一頁面

下一頁面
 

【正文】 技術(shù)的日益發(fā)展與成熟,這使得嵌入式視頻監(jiān)控系統(tǒng)的研究與開發(fā)具有重大的現(xiàn)實意義。 基于ARM和Linux的遠(yuǎn)程監(jiān)控系統(tǒng)正好克服了這些局限性[9]: I.?dāng)?shù)字視頻采用硬件編解碼,大大提高了圖像壓縮質(zhì)量和穩(wěn)定性。數(shù)字視頻監(jiān)控系統(tǒng)所包含的核心技術(shù)可以歸納為以下三個方面:數(shù)字視頻編解碼技術(shù),高效大容量存儲技術(shù)和網(wǎng)絡(luò)技術(shù).因此研究方向主要集中在以下幾個方面: ?MPEG4視頻壓縮編碼技術(shù)的研究。 ?高效率實時網(wǎng)絡(luò)視頻傳輸技術(shù)。 本文主要研究內(nèi)容本課題的思路是結(jié)合視頻監(jiān)控的發(fā)展趨勢,開發(fā)一套基于嵌入式ARM的遠(yuǎn)程視頻監(jiān)控系統(tǒng),在嵌入式設(shè)備終端上主要完成CMOS攝像頭驅(qū)動設(shè)計、視頻圖像采集、圖像壓縮、圖像數(shù)據(jù)的網(wǎng)絡(luò)發(fā)送、嵌入式Web服務(wù)器的設(shè)計,并通過客戶端實時監(jiān)控。嵌入式系統(tǒng)是硬件和軟件的有機(jī)結(jié)合體,并以硬件的形式表現(xiàn)出來。 iii、為了提高執(zhí)行速度和系統(tǒng)可靠性,嵌入式系統(tǒng)中的軟件一般都固化在存儲器芯片中,而不是存貯于磁盤等載體中。大量功能強(qiáng)大的RISC嵌入式處理器的出現(xiàn),多媒體視頻標(biāo)準(zhǔn)的推出都使得嵌入式系統(tǒng)向集成化,網(wǎng)絡(luò)化,多媒體化發(fā)展。目前,采用ARM技術(shù)知識產(chǎn)權(quán)(IP)核的微處理器,即我們通常所說的ARM微處理器,己遍及工業(yè)控制、消費類電子產(chǎn)品、通信系統(tǒng)、網(wǎng)絡(luò)系統(tǒng)等各類產(chǎn)品市場,基于ARM技術(shù)的微處理器應(yīng)用約占據(jù)了RISC微處理器75%以上的市場份額,ARM技術(shù)正在逐步滲入到我們生活的各個方面。 ARM7系列:、3級流水線;其內(nèi)核主要有ARM7TDMI和ARM720T;T支持16位THUMB指令,D支持在片調(diào)試,M增強(qiáng)型乘法器,產(chǎn)生全64位結(jié)果,I嵌入式ICE硬件提供片上斷點和調(diào)試點支持。 為了降低整體系統(tǒng)成本,S3C2440A 提供了一下豐富的內(nèi)部設(shè)備[12] 。S3C2440A 的杰出的特點是其核心處理器(CPU),是一個由 Advanced RISC Machines 有限公司設(shè)計的 16/32 位 ARM920T 的 RISC 處理器。綜合對芯片的功能描述,S3C2440A 集成的以下部分片上功能: ? 內(nèi)核供電, , 外部I/O供電,具備16KB的 ICache和16KB DCache/MMU微處理器 ? LCD 控制器(最大支持4K色STN和256K色TFT)提供1通道LCD 專用DMA ? 3通道UART(, 64字節(jié)Tx FIFO,64字節(jié)Rx FIFO) ? 1通道IICBUS接口(多主支持) ? 1通道IISBUS音頻編解碼器接口 ? 2端口USB主機(jī)/1端口USB 設(shè)備() ? 4通道PWM定時器和1通道內(nèi)部定時器/看門狗定時器 ? 相機(jī)接口(最大40964096像素的投入支持) ? 130 個通用I/O口和24通道外部中斷源 系統(tǒng)硬件選型設(shè)計根據(jù)課題的要求,我們選擇了S3C2440ARM處理器,在處理器豐富資源的基礎(chǔ)上,還進(jìn)行了相關(guān)的配置和擴(kuò)展。DM9000是一款完全集成的和符合成本效益的,單芯片快速以太網(wǎng)MAC控制器。其中主要芯片是OV9650。設(shè)計軟件應(yīng)遵循軟件工程的方法:首先根據(jù)軟件的功能,對軟件進(jìn)行模塊劃分和抽象,然后逐步求精,由抽象到具體地分析和構(gòu)造出軟件的層次結(jié)構(gòu),提高軟件的可理解性。系統(tǒng)軟件主要包括BootLoader的移植、嵌入式Linux操作系統(tǒng)移植、文件系統(tǒng)建立、CMOS攝像頭驅(qū)動模塊設(shè)計。然后跳轉(zhuǎn)到操作系統(tǒng)內(nèi)核的入口。 嵌入式操作系統(tǒng)的選擇 嵌入式操作系統(tǒng)主要指支持嵌入式系統(tǒng)應(yīng)用的操作系統(tǒng)軟件,通常包括與硬件相關(guān)的底層驅(qū)動軟件、系統(tǒng)內(nèi)核、設(shè)備驅(qū)動接口、通信協(xié)議、圖形界面等。這與它自身的優(yōu)良特性是分不開的。另外VxWorks提供的多任務(wù)機(jī)制,對任務(wù)的控制采用了優(yōu)先級搶占和輪轉(zhuǎn)調(diào)度機(jī)制,這充分保證了可靠的實時性,并使同樣的硬件配置能滿足更強(qiáng)的實時性要求。(3)、WindowsCEWindowsCE是微軟開發(fā)的一個開放的、可升級的嵌入式操作系統(tǒng),是基于掌上型電腦類的電子設(shè)備操作系統(tǒng)。它不僅繼承了傳統(tǒng)的Windows圖形界面,并且用戶在WindowsCE平臺上可以使用Windows上的編程工具(如VisualBasie、VisualC++等)、也可以使用同樣的函數(shù)、使用同樣的界面風(fēng)格,使絕大多數(shù)Windows上的應(yīng)用軟件只需簡單的修改和移植就可以在 WindowsCE平臺上繼續(xù)使用。因此,基于以下原因我們選擇了嵌入式Linux作為開發(fā)平臺的操作系統(tǒng)[13]:l Linux系統(tǒng)是層次結(jié)構(gòu)且內(nèi)核完全開放。l 開發(fā)成本低廉。Cramfs文件系統(tǒng)以壓縮方式存儲,在運行時解壓縮,所以不支持應(yīng)用程序以XIP(片內(nèi)運行)方式運行,所有的應(yīng)用程序要求被拷到RAM里去運行,但這并不代表比Cramfs需求的RAM空間要大一點,因為Cramfs是采用分頁壓縮的方式存放檔案,在讀取檔案時,不會一下子就耗用過多的內(nèi)存空間,只針對目前實際讀取的部分分配內(nèi)存,尚沒有讀取的部分不分配內(nèi)存空間,Cramfs文件系統(tǒng)自動計算壓縮后的資料所存的位置,再即時解壓縮到RAM中。JFFS2不適合用于NAND閃存主要是因為NAND閃存的容量一般較大,這樣導(dǎo)致JFFS為維護(hù)日志節(jié)點所占用的內(nèi)存空間迅速增大,另外,JFFSZ文件系統(tǒng)在掛載時需要掃描整個FLASH的內(nèi)容,以找出所有的日志節(jié)點,建立文件結(jié)構(gòu),對于大容量的NAND閃存會耗費大量時間。本文選擇Yaffs文件系統(tǒng),Yaffs文件系統(tǒng)以速度快,效率高,占用內(nèi)存少,其只讀的特點有利于保護(hù)文件系統(tǒng)免受破壞,提高了系統(tǒng)的可靠性。而視頻監(jiān)控軟件則是利用Linux系統(tǒng)V4L接口,實現(xiàn)數(shù)據(jù)壓縮,傳輸,連接客戶端瀏覽器來設(shè)計實現(xiàn)的。3 系統(tǒng)硬件平臺的簡單介紹 mini2440開發(fā)板主要硬件資源介紹[17]A、CPU處理器 Samsung S3C2440A,主頻 400MHz,最高 533Mhz B、SDRAM 內(nèi)存 在板 64M SDRAM 32bit 數(shù)據(jù)總線 SDRAM 時鐘頻率高達(dá) 100MHz C、FLASH 存儲 在板 256M Nand Flash, 掉電非易失在板 2M Nor Flash,掉電非易失,已經(jīng)安裝 BIOS D、接口和資源 1 個 100M以太網(wǎng) RJ45 接口(采用DM9000 網(wǎng)絡(luò)芯片) 3 個串行口 1 個 USB Host 1 個 USB Slave B 型接口 1 個 I2C 總線 AT24C08芯片,用于 I2C 總線測試 1 個 mm間距 20pin攝像頭接口 板載實時時鐘電池 電源接口(5V),帶電源開關(guān)和指示燈 主要芯片接口介紹 SDRAM 存儲系統(tǒng) Mini2440 使用了兩片外接的 32M bytes 總共 64M bytes 的 SDRAM 芯片(型號為:HY57V561620FTP/MT48LC16M16A2),一般稱之為內(nèi)存,它們并接在一起形成32bit 的總線數(shù)據(jù)寬度,這樣可以增加訪問的速度;因為是并接,故它們都使用了nGCS6 作為片選,根據(jù)S3C2440技術(shù)手冊 52 中的介紹可知,這就決定了它們的物理起始地址為 0x30000000,下面是摘自mini2440原理圖中的 SDRAM 部分原理圖。 Nand Flash不具有地址線,它有專門的控制接口與CPU 相連,數(shù)據(jù)總線為 8bit,但這并不意味著Nand Flash 讀寫數(shù)據(jù)會很慢。它是一個 20 腳 間距的針座,用戶可以直接使用我們提供的 CAM130 攝像頭模塊;其實CAM130 攝像頭模塊上面沒有任何電路,它只是一個轉(zhuǎn)接板,它直接連接使用了型號為ZT130G2 攝像頭模塊。所謂交叉編譯,簡單地說就是在一個平臺上生成另一個平臺上的可執(zhí)行代碼。Linux下的交叉編譯環(huán)境主要包括以下幾個部分:l 針對目標(biāo)系統(tǒng)的編譯器gcc;l 針對目標(biāo)系統(tǒng)的二進(jìn)制工具binutils,包括ar, objcopy, strip工具集;l 目標(biāo)系統(tǒng)的標(biāo)準(zhǔn)庫glibc;l 目標(biāo)系統(tǒng)的Linux內(nèi)核頭文件以及GNU Make工具。通過這段代碼,我們可以初始化硬件設(shè)備、建立內(nèi)存空間的映射圖,從而將系統(tǒng)的軟硬件環(huán)境帶到一個合適的狀態(tài),以便為最終調(diào)用操作系統(tǒng)內(nèi)核準(zhǔn)備好正確的環(huán)境。、內(nèi)核的啟動參數(shù)、內(nèi)核映像和根文件系統(tǒng)映像的固態(tài)存儲設(shè)備的典型空間分配結(jié)構(gòu)圖。也即BootLoade從目標(biāo)機(jī)上的某個固態(tài)存儲設(shè)備上將操作系統(tǒng)加載到RAM中運行,整個過程并沒有用戶的介入。BootLoader的這種模式通常在第一次安裝內(nèi)核與根文件系統(tǒng)時被使用。其源代碼可以在://. 。地址開始執(zhí)行的部分。主要進(jìn)行一些開發(fā)板初始化、內(nèi)存映射和內(nèi)存管理單元初始化等工作,最后會跳轉(zhuǎn)到boot_or _vivi()函數(shù)中接收命令并進(jìn)行處理。這部分初始值都在vivi/include/platform/,包括處理器時鐘、存儲器初始化、通用串口初始化及vivi初始配置等。(3)設(shè)置從NAND Flash啟動參數(shù)在文件arch/s3c2440/,添加如下語句:char linux_cmd[] = noinitrd root=/dev/mtdblock/2 int=/linuxrc console=ttyS0,其中,root=/dev/mtdblock/2表示從NAND Flash的第三個分區(qū)啟動,也就是內(nèi)核分區(qū);init=/linuxrc指出內(nèi)核執(zhí)行的初始化進(jìn)程名為linuxrc,位于根目錄下;console=ttyS0指出控制終端為串口終端。輸入“make”進(jìn)行編譯,完成后在vivi文件夾下生成vivi二進(jìn)制文件。進(jìn)入存放vivi二進(jìn)制文件的目錄,執(zhí)行“Jflashs3c2440 vivi”將vivi下載到開發(fā)板的NandFlash中。一般在Linux系統(tǒng)中的//usr/src/Linux*.*.*目錄下存放了內(nèi)核源代碼。如ntfs, ext3和yaffs2等。 /kernel子目錄包含了主內(nèi)核的代碼。一般在每個目錄下包含一個depend文件和一個Makefile文件。裁剪Linux內(nèi)核的目的就是在保證內(nèi)核穩(wěn)定的前提下,盡可能減小內(nèi)核的尺寸。修改根目錄Makefile文件。首先指定目標(biāo)平臺和交叉編譯器export KBUILD_BUILDHOST := $(SUBARCH) ARCH ?= arm CROSS_COMPILE ?= armlinux拷貝smdk2440的一個基本配置文件,以此作為參考藍(lán)本。修改nand分區(qū)選項,這個根據(jù)實際情況作修改。根據(jù)開發(fā)板上硬件的不同,內(nèi)核的具體配置也不會完全相同。生成的zImage文件與ARM平臺相關(guān),生成存放在/arch/arm/boot/zImage中,然后燒寫內(nèi)核鏡像zImage到開發(fā)板的Nand Flash中。FHS實際上是規(guī)范了在根目錄下各個主要目錄應(yīng)該放的文件類型。這些程序都是二進(jìn)制格式的。在實際開發(fā)過程中,我們對尚在開發(fā)中的驅(qū)動可以采用動態(tài)加載的方式來創(chuàng)建設(shè)備文件(用mknod命令來創(chuàng)建它),以便調(diào)試驅(qū)動程序。文件的動態(tài)庫,在運行期(動態(tài))鏈接到主調(diào)二進(jìn)制代碼中。目錄下,包括系統(tǒng)啟動時需要的配置文件和腳本程序。b)、填充etc目錄下的一些重要的系統(tǒng)文件,、inittab、fstab、profile。在調(diào)試過程中g(shù)db通過調(diào)試stub來完成通信功能,調(diào)試stub是嵌入式操作系統(tǒng)中一小段代碼,它提供了運行g(shù)db的宿主機(jī)和嵌入式系統(tǒng)進(jìn)程之間交互的一個媒介[22]。嵌入式Linux平臺的構(gòu)建為本課題視頻采集系統(tǒng)的開發(fā)打下了堅實的基礎(chǔ)。編碼完成后就建立服務(wù)器,將數(shù)據(jù)發(fā)送給有連接請求的客戶端。 在Linux操作系統(tǒng)下有三種類型的設(shè)備驅(qū)動程序:字符設(shè)備驅(qū)動程序、塊設(shè)備驅(qū)動程序和網(wǎng)絡(luò)設(shè)備驅(qū)動程序。網(wǎng)絡(luò)設(shè)備是一個能夠和其他主機(jī)交換數(shù)據(jù)的設(shè)備,它通常是個物理設(shè)備,但也可能是個軟件設(shè)備,如回環(huán)設(shè)備(loopback)。服務(wù)于I/O請求的子程序成為驅(qū)動程序的上半部分。一般來說,字符型設(shè)備驅(qū)動程序能夠提供如下接口函數(shù):(1)open():打開設(shè)備準(zhǔn)備1/O操作。(2)colse():關(guān)閉一個設(shè)備。對于有緩沖區(qū)的1/O操作,一般是從緩沖區(qū)里讀數(shù)據(jù)。對字符型設(shè)備文件進(jìn)行寫操作將調(diào)用write子程序。模塊(modoule)是在內(nèi)核空間運行的程序,實際上是一種目標(biāo)對象文件,沒有鏈接,不能獨立運行,但是可以裝載到系統(tǒng)中作為內(nèi)核的一部分運行,從而可以動態(tài)擴(kuò)充內(nèi)核的功能。設(shè)備驅(qū)動程序在加載時首先調(diào)用的入口函數(shù)是module_init (),該函數(shù)完成設(shè)備驅(qū)動程序的初始化工作,如寄存器復(fù)位、結(jié)構(gòu)體賦值等。我們要使用這個驅(qū)動程序,首先要加載運行它。而驅(qū)動就會接收到相應(yīng)的read,write操作而根據(jù)自己的模塊中的相應(yīng)函數(shù)進(jìn)行了。系統(tǒng)就可以在需要此設(shè)備支持時,正確尋找驅(qū)動模塊。視頻輸入后分兩個通道逐幀保存圖像數(shù)據(jù),一個為預(yù)覽通道(即P通道),另一個為編解碼通道(即C通道)。CAMIF對外接口信號定義如下: CAMPCLK:輸入的視頻像素同步時鐘。 CAMCLKOUT:輸出的時鐘,用于外接的沒有獨立時鐘的camera芯片的主時鐘。②選擇輸入視頻信號源水平像素大小和垂直像素大小,一定要和外接的camera設(shè)備分辨率一致。②X方向圖像放大或縮小控制,原理是截切掉左部和右部的圖像像素數(shù)。②可設(shè)置C通道輸出圖像X方向像素數(shù)。⑥可設(shè)置C通道輸出圖像180176。③可設(shè)置P通道輸出圖像X方向鏡像。 CICOSTATUS和CIPRSTATUS:狀態(tài)寄存器 CICOSTATUS反映C通道數(shù)據(jù)的寫入狀態(tài),即4組緩沖的哪一組;CIPRSTATUS反映P通道數(shù)據(jù)的寫入狀態(tài),即4組緩沖的哪一組。: S3C2440與CMOS攝像頭接口該芯片支持RGB(4:2:2),YUV(4:2:2),YCrCb(4:2:2)三種數(shù)據(jù)輸出格式,內(nèi)置138個設(shè)備控制寄存器,地址分別從0x00~0
點擊復(fù)制文檔內(nèi)容
化學(xué)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1