關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 基于CMOS圖像傳感器OV7720的網絡攝像機設計

        基于CMOS圖像傳感器OV7720的網絡攝像機設計

        作者: 時間:2011-04-08 來源:網絡 收藏


        2 系統總體
        2.1 系統組成

        系統總體分為硬件和軟件設計兩個部分。硬件設計模塊主要包括微控制器模塊、接口模塊和相機控制模塊三部分。微控制器模塊主要由主控芯片、DATAFLASH和SDRAM組成,其中主控芯片是整個系統的核心,負責整個系統的調度工作。DATAFASH里固化了嵌入式Linux內核及其文件系統、應用軟件和系統配置文件。SDRAM作為內存供系統運行使用。接口模塊主要是配合主控芯片傳送MPEG-4碼流。相機的控制模塊主要是由OV529和芯片組成,通過SCCB(Serial Camera Control Bus)將的視頻流傳送到OV529;OV529通過控制將視頻流轉化成MEPG-4碼流,并完成轉發控制相機命令的功能。當系統啟動時,微控制器通過SPI將Linux內核轉入SDRAM中,系統從SDRAM中啟動。
        軟件設計部分主要包括嵌入式Linux移植、CGI控制程序和MEPG-4解碼程序三個部分。嵌入式Linux系統存放到由AT91SAM7X256控制的DAT-AFLASH中,它負責整個系統軟件的調度工作。CGI控制程序主要負責對的控制和對MPEG-4視頻流的相關設置。MEPG-4解碼程序主要負責對通過得到的MPEG-4數據流的解碼工作。
        2.2 SCCB通信規范
        SCCB(Serial Camera Control Bus)是OminiVision公司定義的主從模式串行通信協議,用于控制該公司系列芯片的內部寄存器。該協議有通信使能信號SIO_E、時鐘信號SIO_C和數據信號SIO_D,在簡化引腳的封裝中不再提供SIO_E引腳,協議也變成了兩線串行通信。協議支持的最高串行通信速率是400 Kb/s,規定在通信中只能作為SLAVE工作。一SCCBMASTER可以控制1~8個SLAVE工作,由不同的ID來識別,在只有一個SLAVE時固定SLAVE的ID為42H(寫)和43H(讀)。該協議符合網絡CPU的I2C口時序子集,設計中OV529作為SCCB的MASTER,并且只帶1個SLAVE 。協議要求數據線必須在時鐘信號高電平期間穩定,在低電平時更新。協議支持3字節寫、2字節寫和2字節讀三種傳輸模式。傳輸數據時每個字節包括9位串行數據位,除了8位數據,還有第9位不相關位或NA位,用在有多個SLAVE的系統來標識通信是否完成。SLAVE可以用兩種方式應答該位,一種是正在被寫的SLAVE在收到數據后驅動該位為0表示成功;另一種是SLAVE不應答該位,這種情況下所有SLAVE的第9位保持懸空。在3字節寫周期MASTER必須提供子地址,即芯片中寄存器的地址,第3字節為所寫數據。讀周期不提供子地址,但必須由MASTER把數據后的NA位(第9位)驅動為高電平。所以在每個讀周期前必須有3字節或2字節寫操作,使SLAVE獲得寄存器地址,其中的2字節寫周期并沒有寫數據,它的用途是在讀操作前提供給SLAVE子地址。

        3 硬件系統實現
        3.1 微控制器模塊
        微控制器模塊是該系統的核心部件,采用Atmel公司的ARM7芯片AT91SAM7X256作為系統的主控芯片。它是一款Atmel 32位ARM RISC處理器小引腳數FLASH微處理器,主頻為55 MHz,處理速度快,功能強,性價比高,能很好地滿足嵌入式Linux系統的需求。它在系統中的主要作用是在系統上電時配置其他芯片的功能寄存器,在正常工作狀態下調度整個系統工作,通過片內以太網控制器控制物理層芯片發送碼流,并通過片內的SPI總線實現對外圍DATAFLASH和SDRAM的控制。
        3.2 網絡模塊
        AT91SAM7X256的在片以太網卡端口與網絡物理層芯片DM9161E的MII接口通信。發送數據時首先置發送使能信號ETXEN有效。數據發送端ETX0~ETX1與DM9161E的ETX0~ETX1引腳對應連接,作為數據發送通道,以DM9161E的時鐘信號REF_CLK發送數據。數據接收端ERX0~ERX1與DM9161E的RXD0~RXD1引腳對應連接,作為數據接收通道。管理時鐘信號EMDC和管理數據輸入/輸出信號EMDIO用于芯片控制參數的寫入和讀取。DM9161E的MDINTR端用來產生中斷信號。片內以太網卡通過DMA通道進行數據發送,不影響AT91SAM7X256的正常運行。首先正確設置傳送控制寄存器和傳送地址寄存器的傳送數據塊字節數、數據塊存儲首地址等參數,隨后依次從指定數據存儲區地址讀取數據,送入內部發送緩沖器中,由MAC對數據進行封裝發送,同時記錄已傳送字節數,直到數據塊發送完畢。當發送完一組數據后,發出DMA中斷請求,由AT91SAM-7X256進行相應的處理。整個網絡子系統電路由AT91SAM7X256控制和調度。


        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 临沭县| 会东县| 长沙县| 青冈县| 股票| 汉川市| 罗源县| 伊吾县| 通化县| 社旗县| 安宁市| 民丰县| 额敏县| 洮南市| 金坛市| 星子县| 南靖县| 即墨市| 英德市| 宁乡县| 闽清县| 涿鹿县| 扎囊县| 金川县| 宝丰县| 万年县| 阿图什市| 阳朔县| 辽宁省| 边坝县| 富裕县| 遵义县| 林甸县| 赫章县| 密山市| 昌邑市| 天门市| 库尔勒市| 武清区| 许昌县| 桂东县|