- 相關(guān)推薦
基于STM32和OV7670的圖像采集與顯示系統(tǒng)設(shè)計(jì)論文
摘 要:為了進(jìn)一步加深學(xué)生對嵌入式系統(tǒng)的理解, 更好地將專業(yè)課所學(xué)的知識和基本實(shí)驗(yàn)操作完整地結(jié)合起來, 提高學(xué)生的動手實(shí)踐能力和團(tuán)隊(duì)協(xié)作能力, 本學(xué)院開設(shè)了以嵌入式系統(tǒng)為研究對象的工程實(shí)訓(xùn)課程。本次工程實(shí)訓(xùn)以STM32單片機(jī)為主控單元, 采用串行攝像機(jī)控制總線 (SCCB) 驅(qū)動OV7670圖像傳感器輸出RGB565 QVGA的圖像數(shù)據(jù), 并實(shí)時(shí)顯示在TFT-LCD上的圖像采集與顯示系統(tǒng)。結(jié)果表明, 通過工程實(shí)訓(xùn)課程, 使理論和實(shí)踐緊密結(jié)合, 培養(yǎng)了學(xué)生靈活應(yīng)用嵌入式系統(tǒng)知識解決工程問題的能力, 取得了良好的教學(xué)效果。
關(guān)鍵詞: 工程實(shí)訓(xùn); STM 32; OV7670; 圖像采集與顯示;
Abstract: In order to further improve students' understanding of embedded systems, improve students' operational ability and teamwork ability, the college has set up an engineering training course for the study of embedded systems.This engineering training course group designed STM 32 MCU as the main control unit, using serial camera control bus (SCCB) control OV7670 image sensor output RGB565 QVGA image data, while real-time display on the TFT-LCD image Acquisition and display system.The results show that, through the process of engineering training, the theory and practice are closely integrated, and the students' ability to solve engineering problems by using embedded system knowledge is cultivated.
Keyword: engineering training; STM 32; OV7670; image acquisition and display;
一、引言
嵌入式系統(tǒng)工程實(shí)訓(xùn)是本學(xué)院儀器儀表類專業(yè)大學(xué)生本科期間必修的一門專業(yè)實(shí)訓(xùn)課程, 其目標(biāo)是為了讓同學(xué)們更加熟練地掌握嵌入式系統(tǒng)的實(shí)踐操作, 從而更好地將專業(yè)課知識和基本實(shí)踐操作結(jié)合。國內(nèi)現(xiàn)在普遍將嵌入式系統(tǒng)定義為以實(shí)際應(yīng)用為核心, 計(jì)算機(jī)技術(shù)為基礎(chǔ), 軟件和硬件具備可移植性, 符合系統(tǒng)對費(fèi)用、尺寸、可靠性、性能高標(biāo)準(zhǔn)的計(jì)算機(jī)系統(tǒng)。通常來說, 嵌入式系統(tǒng)是一個(gè)將控制程序存儲在ROM中的嵌入式處理器控制板。近些年, 微型電子技術(shù)和集成電路技術(shù)發(fā)展迅速, 這使得基于嵌入式系統(tǒng)的圖像獲取與處理方案越來越多。STM32F103, 一款基于ARM Cortex-M3內(nèi)核的微控制器, 它的時(shí)鐘頻率最為72MHz, 具備耗能低、功能多、體積小、可靠性高等優(yōu)點(diǎn)。OV7670, 美國OV公司出的一款 (CMOS) 圖像傳感器, 其像素為30萬, 通過串行攝像頭控制總線 (SCCB) 進(jìn)行控制, 輸出為并行的8位圖像數(shù)據(jù)。本次嵌入式系統(tǒng)工程實(shí)訓(xùn)將STM32F103ZET6微控制器作為主控處理芯片, 將OV7670作為圖像采集模塊, 將TFT-LCD作為圖像顯示模塊, 設(shè)計(jì)圖像采集顯示系統(tǒng), 并增加按鍵功能, 使采集到的圖片可調(diào)節(jié)光照模式、飽和度、亮度以及對比度。
二、系統(tǒng)總體方案
本系統(tǒng)主要分為STM32F103ZET6微控制器模塊、OV7670圖像采集模塊、TFT-LCD圖像顯示模塊。主要工作原理為:STM32F103ZET6通過對OV7670寄存器的讀寫來控制每一幀圖像的采集, 通過對TFT-LCD寄存器的讀寫控制每一幀圖像的顯示。OV7670的時(shí)鐘頻率為24MHz, 使用開發(fā)板自帶的IO接口傳輸數(shù)據(jù)難度大且對CPU的占用率非常高。為解決這一問題, 本系統(tǒng)中采用AL422B作為緩存器, 采集到的數(shù)據(jù)先進(jìn)行緩存, 一幀圖像緩存完時(shí), 通過STM32F103ZET6將這幀圖像實(shí)時(shí)顯示在TFT-LCD上。
三、硬件設(shè)計(jì)
1. OV7670.
本圖像采集與顯示系統(tǒng)用開發(fā)板上的IO接口來控制OV7670.將SIO_C口設(shè)置成推挽輸出, SIO_D口讀取數(shù)據(jù)時(shí)上拉輸入、寫入數(shù)據(jù)時(shí)設(shè)成推挽輸出, 再由SCCB的工作時(shí)序編寫程序。OV7670的圖像數(shù)據(jù)通過D[7∶0]輸出, 該功能就是在PCLK (像素時(shí)鐘) 、VSYNC (幀同步信號) 以及HREF/HSYNC (行同步信號) 的控制下進(jìn)行的。HREF為高電平時(shí), 圖像數(shù)據(jù)輸出;HREF正階躍時(shí), 每個(gè)PCLK輸出一字節(jié)數(shù)據(jù), 且數(shù)據(jù)格式為RGB565時(shí), 每兩個(gè)字節(jié)構(gòu)成一個(gè)像素的顏色。
2. TFT-LCD.
本圖像采集和顯示系統(tǒng)將TFT-LCD作為顯示模塊, 其大小為2.8寸, 分辨率為320×240.本圖像采集和顯示系統(tǒng)中一幀圖像的數(shù)據(jù)量為150KB.為加快顯示, 以STM32F103ZET6的FSMC來驅(qū)動TFT-LCD, 即靈活的靜態(tài)存儲控制器 (flexible static memory controller) , 將TFT-LCD視為外部SRAM來處理。將TFT-LCD的RS信號引腳視為地址線, 與STM32F103ZET6的FSMC_A10引腳相連。其目的是用于判斷傳輸?shù)氖敲钸是數(shù)據(jù)。TFT-LCD以及外部1MB SRAM均連接于FSMC總線, 用各自的信號加以片選, TFT-LCD和FSMC_NE4引腳相連接, SRAM和FSMC_NE3引腳相連接。特別地, TFT-LCD傳輸數(shù)據(jù)為16位時(shí), STM32F103ZET6的地址總線HADDR[0]是沒被接入的, 也就是說HADDR[25∶1]才真正處于工作狀態(tài), 則對應(yīng)關(guān)系變?yōu)椋篐ADDR[25∶1]→FSMC[24∶0].此時(shí)TFT-LCD寫命令的地址為0x6C000000+0x07FE (0x0800) .TFT-LCD中ILI9320的寫入比讀取效率高, 因此將FSMC設(shè)為異步方式A.
四、軟件設(shè)計(jì)
1. 主程序。
主程序由初始化、按鍵掃描、按鍵處理及圖像采集與顯示等模塊組成。初始化模塊包括延時(shí)函數(shù)、中斷、串口、按鍵、LCD、OV7670的初始化;按鍵掃描與處理程序用于進(jìn)行不同模式下按鍵的檢測及調(diào)用相應(yīng)的處理程序;圖像的采集與顯示模塊用于進(jìn)行OV7670 CMOS攝像頭圖像數(shù)據(jù)的采集, 并將采集的圖像直接顯示在LCD顯示屏上。
2. 按鍵掃描與處理。
我們可以通過KEY0設(shè)置光照模式 (5種模式) , 通過KEY1設(shè)置色飽和度, 通過KEY2設(shè)置亮度, 通過WK_UP設(shè)置對比度。
3. 圖像采集與顯示。
OV7670攝像頭模塊保存采集到的數(shù)據(jù)的工作原理: (1) 等待OV7670同步信號; (2) FI-FO的寫指針復(fù)位; (3) FIFO的寫使能; (4) 再次等待OV7670同步信號; (5) FIFO的寫禁止。通過上面5步, 我們就可以完成1幀圖像數(shù)據(jù)的存儲了。在存儲完了一幀圖像之后, 我們就可以開始讀取圖像數(shù)據(jù)了, 讀取圖像數(shù)據(jù)的過程: (1) FIFO的讀指針復(fù)位; (2) 給FIFO讀時(shí)鐘讀取像素高字節(jié); (3) 給FIFO讀時(shí)鐘讀取像素低字節(jié); (4) 給FIFO讀時(shí)鐘讀取下個(gè)像素高字節(jié); (5) 循環(huán)讀取剩余像素 (QVGA、RGB565格式, 1幀圖像數(shù)據(jù)共320*240=76800個(gè)像素) .一共需循環(huán)讀取320*240*2次, 這樣才能讀取1幀的圖像數(shù)據(jù), 再把這些數(shù)據(jù)寫入TFT-LCD, 這樣就可以看到攝像頭捕捉到的畫面了。
五、結(jié)論
本次嵌入式系統(tǒng)工程實(shí)訓(xùn)課程學(xué)生設(shè)計(jì)了基于STM32和OV7670的圖像采集與顯示系統(tǒng), 并增加了按鍵模塊以調(diào)節(jié)圖像顯示相關(guān)參數(shù)的功能, 工程實(shí)訓(xùn)小組成員以組內(nèi)分工的形式通過對系統(tǒng)的不斷調(diào)試和測試, 按要求實(shí)現(xiàn)了圖像采集和顯示的功能, 通過知識與實(shí)踐相結(jié)合的實(shí)踐教學(xué)方式, 在使學(xué)生進(jìn)一步了解嵌入式系統(tǒng), 提高綜合素質(zhì)和創(chuàng)新能力的同時(shí), 也圓滿完成了教學(xué)任務(wù)。
參考文獻(xiàn)
[1]嵌入式系統(tǒng)[Z].[2017-01-17].www.eeworld.com.
[2]李寧;贛DK的STM32處理器開發(fā)應(yīng)用[M].北京:北京航空航天大學(xué)出版社, 2008:7-13.
[3]羅超, 景林, 易金聰。基于STM32的便攜式海量溫濕度記錄儀設(shè)計(jì)[J].電子技術(shù)應(yīng)用, 2012, (12) :83-86.
[4]Omni Vision Technology[Z].OV7670 Datasheet[2017-01-17].http://www.ovt.com.
【基于STM32和OV7670的圖像采集與顯示系統(tǒng)設(shè)計(jì)論文】相關(guān)文章:
基于μSOS的智能家居系統(tǒng)設(shè)計(jì)論文07-04
關(guān)于基于C的在線考試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)論文07-04
基于樹莓派的智能家居系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)論文07-03
基于單片機(jī)的車牌識別系統(tǒng)設(shè)計(jì)論文07-04
基于手機(jī)控制的智能家居安防系統(tǒng)設(shè)計(jì)論文07-04
基于U盤式設(shè)計(jì)的教學(xué)信息管理系統(tǒng)設(shè)計(jì)思考論文07-03
簡析基于MVC模式的高校實(shí)驗(yàn)排課系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)論文07-03