一種應(yīng)用于ARM7的CMOS圖像采集系統(tǒng)
Samsung公司的S3C4510B是基于以太網(wǎng)系統(tǒng)高性價比的16/32位RISC微控制器,內(nèi)含一個由ARM公司設(shè)計的16/32位 ARM7TDMI RISC處理器核,ARM7TDMI為低功耗、高性能的16/32核,它具有0.9MIPS/MHz的三級流水線結(jié)構(gòu),支持32位ARM指令集和16位 Thumb指令集,有著功能豐富的片內(nèi)外圍功能模塊,可掛載大容量的存儲器,最適合用于對價格及功耗敏感的應(yīng)用場合。 CMOS(Complementary Metal Oxide Semiconfuctor),即“互補金屬氧化物半導(dǎo)體”。它是計算機系統(tǒng)內(nèi)一種重要的芯片,將它加工也可以作為圖像采集系統(tǒng)中的感光傳感器。隨著 CMOS技術(shù)的發(fā)展及市場需求的增加,這種圖像傳感器得以迅速發(fā)展,它具有高度集成化、低成本、低功耗、單一工作電壓、局部像素可編程、隨機讀取等優(yōu)點,適用于超微型數(shù)碼相機、攝像機、安防監(jiān)控、汽車防盜、機器視覺、指紋識別、手機等圖像領(lǐng)域。本文介紹的是由美國OmniVision公司生產(chǎn)的 OV7640彩色CMOS圖像傳感器,它采用獨特的傳感器專利工藝技術(shù)和先進的算法(algorithms)解決了先前CMOS感光器件固定圖像噪聲(FPN)的限制。由這兩種芯片組成的系統(tǒng)有較強的實際應(yīng)用價值。
本文引用地址:http://butianyuan.cn/article/171431.htm1 系統(tǒng)的基本硬件組成
整個圖像采集系統(tǒng)主要有CMOS圖像傳感芯片OV7640、三星4510B控制器(板載64M存儲器)、晶振電路、電源幾部分組成。
OV7640是高度集成的彩色攝像芯片,可帶1/4”鏡頭,支持多種格式,內(nèi)設(shè)的SCCB(Serial Camera Control Bus)串行控制總線接口,提供簡單控制方式,通過該接口,我們可以對OV7640芯片內(nèi)部所有寄存器值進行修改,從而完成對OV7640的控制。另外,OV7640內(nèi)置了640×480分辨率的鏡像陣列,A/D轉(zhuǎn)換器,并支持外部水平、垂直同步輸入格式,外部微控制器和RAM界面、數(shù)字視頻輸出、增益控制、黑白平和白平衡等在內(nèi)的控制寄存器功能模塊。
S3C4510B是一款不帶MMU的ARM7微處理器,可在其上運行uCLinux操作系統(tǒng)。它的系統(tǒng)時鐘最高可達60MHz,有著豐富的外部資源接口,系統(tǒng)板載了64M的存儲器,可直接利用板載的存儲器進行圖像數(shù)據(jù)的暫存,以最大限度的簡化系統(tǒng)。
系統(tǒng)的時鐘頻率由一顆24MHz的有源晶振提供,系統(tǒng)電源為5V,S3C4510B需要1.8V和3.3V的電壓,OV7640需要2.5V和3.3V的電壓輸入,可通過電平轉(zhuǎn)換芯片LM1117進行轉(zhuǎn)換得到所需要的電壓。
2 硬件設(shè)計的思路和要點
系統(tǒng)功能是應(yīng)用4510B芯片的GPIO口對OV7640圖像數(shù)據(jù)進行采集,然后進行相應(yīng)的處理和識別。OV7640包含有8位數(shù)據(jù)D0-D7、同步信號VSYNC、HREF、PCLK,這些信號需要送給CPU以讀取圖像數(shù)據(jù)和保證同步;另一方面,由于OV7640默認幀頻為30Hz,在此幀頻下的圖像數(shù)據(jù)輸出為30Hz*307.2K=9.216Mbytes/s,QVGA方式的數(shù)據(jù)率為30Hz*76.8K=2.3Mbytes/s,在不考慮同步的情況下已遠遠超過I/O口的響應(yīng)速度,因此必須重新設(shè)置以降低幀頻。因此,在本系統(tǒng)中對OV7640的訪問有三個:第一是設(shè)置地址號為0x11的幀頻控制器CLKRC以降低幀頻,第二是設(shè)置地址號為0x14的控制器COMC以設(shè)置像素為320*240,最后是設(shè)置地址號為0x28的COMH以設(shè)置掃描格式。從信號的使用角度來說,需要用到OV7640的8位數(shù)據(jù)線D0-D7(雙向),同步信號VSYNC、HREF、PCLK(單向,供控制器讀),SCCB總線SIO_C(單向)、SIO_D(雙向)。
由于4510B板上IO口資源相當(dāng)豐富,8位并行數(shù)據(jù)線和控制線都可以接在IO口上,設(shè)置好輸入輸出關(guān)系,通過軟件模擬SCCB總線實現(xiàn)控制器對 OV7640的控制。連接采用4510為主機,OV7640為從機的方式。在設(shè)置完幀頻以后就可以根據(jù)同步信號對一幀一幀的圖像進行采集了。系統(tǒng)連接圖如圖1所示。
3 圖像采集的工作過程
1)通過SCCB總線設(shè)置OV7640的幀頻
系統(tǒng)上電后需要對CMOS圖像傳感器進行初始化,以確定采集圖像的開窗位置、開窗大小和黑白工作模式等。這些參數(shù)是受OV7640內(nèi)部相應(yīng)寄存器的值控制的,可通過SCCB總線對其進行設(shè)置。SCCB的接口有SCCE、SIO_C、SIO_D(SCCE是串行總線使能信號,SIO_C是串行總線時鐘信號,SIO_D是串行總線數(shù)據(jù)信號)三條引腳。OV7640芯片上沒有SCCE引腳,但也可實現(xiàn)單主對單從方式的通訊,控制總線規(guī)定的條件如下:當(dāng) SIO_C為高電平時,如SIO_D產(chǎn)生一個下降沿表明數(shù)據(jù)傳輸?shù)拈_始,如SIO_D產(chǎn)生一個上升沿表明數(shù)據(jù)傳輸?shù)慕Y(jié)束;為了避免傳送無用的信息位,分別在傳輸開始之前、傳輸結(jié)束之后將SIO_D設(shè)置為高電平。在數(shù)據(jù)傳輸期間,SIO_D上數(shù)據(jù)的傳輸受SIO_C的控制,當(dāng)SIO_C為低電平時,SIO_D上數(shù)據(jù)有效,SIO_D為穩(wěn)定數(shù)據(jù)狀態(tài),SIO_C每出現(xiàn)一正脈沖,將傳送一位數(shù)據(jù)。其中兩根線的上升和下降時延、高低電平的維持時間都有較嚴格的要求,軟件的延時時間要根據(jù)CPU速度和GPIO口的速度精確的計算后才能使通訊保持順暢。如圖2所示:
評論