娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

歷史上的今天

今天是:2025年04月20日(星期日)

正在發生

2021年04月20日 | STM32和OV2640的嵌入式圖像采集系統設計

發布者:HarmonyJoy 來源: eefocus關鍵字:STM32  OV2640  圖像采集系統 手機看文章 掃描二維碼
隨時隨地手機看文章

引言


隨著電子產品向低功耗、低價格、智能化的方向發展,利用視頻傳感器采集圖像成為研究熱點,如可視門鈴、安全監控[1]、賽車自動循跡[23]、煙葉圖像采集[4]、草本葉子圖像采集[5]等。本文根據在線采集、分析、存儲圖像的需求,設計了嵌入式圖像采集系統,運用嵌入式芯片STM32對圖像信息進行采集、顯示和存儲。


1 系統結構與功能


圖像采集系統以基于ARM公司的CortexM3內核的STM32F103RBT6(以下簡稱STM32)處理器為核心,配合OV2640攝像頭和TFT液晶顯示器,是一款采集像素多、實時性好且成本低廉的圖像采集系統。


系統的硬件結構框圖如圖1所示,系統通過JLink口實現程序在STM32上的仿真、在線調試,利用JLINK仿真編程器將編譯之后的二進制文件燒寫到Flash中,系統每次上電時便可從Flash啟動文件系統,圖像采集系統采用OV2640攝像頭模塊,輸出顯示采用2.4英寸TFT液晶顯示屏,可將采集到的數據保存在SD卡中。當存儲按鍵按下時,系統接收中斷,同時將從OV2640攝像頭采集到的數據顯示在液晶顯示屏上。

圖1 系統硬件結構框圖


2 硬件設計


2.1 CPU處理器


本系統用的是32位的CortexM3內核的STM32芯片STM32F103RBT6,支持Thumb2指令集,STM32F103RBT6內部的Flash有128K,SRAM大小為20 K,有64個增強I/O口、2個USART、2個12位的A/D轉換器[6]。它的供電電壓為2.0~3.6 V,擁有省電模式,可以保證低功耗需求。CPU主頻最高可以達到72 MHz。


2.2 OV2640攝像頭


OV2640具有體積小、工作電壓低、兼容I2C總線接口等特點。通過SCCB總線控制,支持RawRGB、RGB(GRB4:2:2、RGB565/555/444)、YUV(4:2:2)和YCbCr(4:2:2)輸出格式,可以輸出整幀、二次轉換分辨率、取特定區域等方式的各種分辨率的8位或10位的圖像幀數據,UXGA(1 632×1 232)圖像最高達到15 fps。圖2OV2640攝像頭連接示意圖因此,編程者可選擇不同圖像質量、數據格式,而且,OV2640的高靈敏度適合低照度環境,它的低電壓特性適合嵌入式開發應用,攝像頭數據口連接CPU的示意圖如圖2所示。


采用攝像頭的8位數據模式,攝像頭高8位接CPU的I/O口的低8位,低2位懸空。


2.3 SCCB總線


SCCB(OmniVision Serial Camera Control Bus)與I2C總線協議類似,使用SIO0和SIO1兩根數據線進行傳輸和控制。SIO1是控制線,提供傳輸過程中的時鐘脈沖控制信號,SIO0是串行雙向數據傳輸線,根據控制信號通過串行的方式發送數據。在很多設計中,經常采用I/O口模擬I2C總線的傳輸,對于SCCB,也可以采用這樣的方式。


采用I/O口模擬SCCB總線的要點如下:對于SCL所連接的引腳,在寄存器中設置為輸出,而SDA所接的引腳,在數據傳送過程中,基于IODIR值的改變,動態改變引腳為輸入或輸出方式。


2.4 LCD顯示模塊


本設計所用的為2.4英寸的TFT液晶顯示屏,圖3系統與ILI9320連接圖內部集成有ILI9320 LCD控制芯片,可以直接控制數據的顯示。ILI9320可以用來讀寫寄存器、GRAM,還可顯示動態圖形的RGB輸入接口。顯示控制芯片有RGB接口模式與i80系統接口模式,設計選用i80system接口模式。


i80system接口是通過設置IM[3:0]來決定的,同時這幾個位也決定了數據傳輸位數的模式,通過硬件設置IM0位高電平,IM1位高電平,把模式設置為了8位i80system接口傳輸模式。連接示意圖如圖3所示。



要寫數據到屏上顯示,只需要對寄存器0x0022進行寫操作即可,當這個寄存器的數據更新時,地址指針(AC)會自動增加或減小,讀數據也是同樣的道理。


2.5 SD卡接口電路設計


通常而言,SD卡電路設計有兩種模式:SPI模式和SD卡模式,由于引腳資源限制,對于連接STM32的方式,采用第一種設計電路,通過STM32上面的SPI接口來和SD卡進行數據通信[8],引腳如圖4所示。



在SPI模式中,數據通過STM32的MOSI與MISO進行傳送,SCK信號線用來提供工作時鐘,當SD 卡收到復位命令(CMD0)時,SD卡立即進入SPI模式。要注意的是,在發送CMD0 之前須發送大于74個的時鐘周期;另外,在SD卡初始化時,CLK時鐘頻率最大不能超過400 kHz。


3軟件設計


3.1 系統初始化


系統初始化主要是對CPU時鐘進行初始化,以及設置外圍電路的時鐘分頻比,設置中斷。其流程可描述如下:


SystemInit();


if (HSEStartUpStatus == SUCCESS){


//如果HSE晶振穩定且就緒


RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_9); //PLL設置


RCC_CLKConfig();//設置外部總線時鐘


GPIO_PinRemapConfig();//改變指定引腳的映射


NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);


//設置中斷


}


3.2 攝像頭初始化


首先,通過SCCB總線設置OV2640的寄存器數據,主要是配置攝像頭輸出數據格式類型和輸出圖像數據大小,達到初始化OV2640的目的。OV2640初始化流程較為簡單,偽代碼如下:


unsigned char OV2640_init(void){


unsigned char temp;


unsigned inti=0;


OV2640_GPIO_Init();


SCCB_GPIO_Config();//攝像頭I/O口初始化


CLK_init_ON();//開攝像頭時鐘


temp=0x80;


//初始化并判斷是否成功


if(0==wrOV2640Reg(0x12, temp))


return 0;


for(i=0;i

if( 0==wrOV2640Reg(change_reg[i][0],change_reg[i][1]))


return 0;


}


return 0x01; //不成功則返回1


}


3.3 LCD顯示模塊


通過對ILI9320的讀寫操作時序控制進行仔細的分析后,初始化TFT屏幕,其實質就是對寄存器的設置。程序中對LCD控制器操作的函數接口主要有以下3個:


LCD_WR_REG16()//寫寄存器命令


LCD_WR_DATA16()//寫寄存器數據


LCD_RD_DATA16()//讀寄存器數據


3.4 主程序流程與系統實現


程序運行流程如圖5所示,系統啟動之后,先按照程序初始化設備,并打開外部中斷,如果檢測到門鈴有按鍵輸入,則啟動攝像頭與CPU之間的數據傳輸,啟動TFT液晶顯示器與CPU之間的數據傳輸,在液晶顯示器上實時顯示攝像頭所拍攝到的畫面,并鳴響蜂鳴器。


如果用戶需要,還可以啟動拍照,并將照片保存為Bmp的格式文件在SD卡上。同時,在延時一段時間之后,如果沒有任何中斷觸發,則系統運行至低功耗狀態,關液晶屏。



實驗效果圖如圖6所示。



從圖6中可以看出,STM32加OV2640方案的效果比較令人滿意,攝像頭的清晰度較高,實時性較好,2.4英寸的顯示屏能滿足圖像顯示的需求。


結語


本文基于STM32處理器和OV2640攝像頭加2.4英寸TFT液晶顯示屏的設計方案不僅成本低廉,而且功能齊全,整體效果較好,硬件平臺設備較為成熟。


在軟件方面,程序流程嚴謹,邏輯嚴密,而且驅動程序較為完善,各個模塊之間不存在耦合性,系統運行穩定、可靠。


關鍵字:STM32  OV2640  圖像采集系統 引用地址:STM32和OV2640的嵌入式圖像采集系統設計

上一篇:STM32定時器的應用
下一篇:什么是STM32以及怎樣學習?

推薦閱讀

一名直接知悉情況的中興通訊消息人士向路透表示,在美國本周對中興通訊實施制裁的一個多月前,公司首席合規官兼首席法務官程鋼遭到解職。美國本周宣布禁止美國企業七年內向中興通訊出售零部件及軟件,因中興通訊一再以虛假陳述違反與美國政府達成的協議。此舉可能切斷中興通訊的供應鏈。消息人士引述一封日期為3月8日的內部通知稱,中興通訊首席合規官兼首...
  最近幾個月,有大量令人擔憂的報道稱,Airbnb的房東們在他們的房子里安裝了隱藏攝像頭,但并沒有向住客透露。早在一月份,就有外媒報道了一名卡內基梅隆大學計算機科學教授,在一家Airbnb民宿里發現了兩臺隱藏的攝像機。就在上個月,《大西洋月刊》報道了一個新西蘭家庭在愛爾蘭租住Airbnb時發現,一個隱藏的安全攝像頭正在對他們進行直播。  不幸的...
(文章來源:網絡整理) 前幾年還比較火爆的電話營銷模式,在近幾年互聯網發展迅猛的過程中,逐漸淡出了大眾視野。雖然如此,但是我們不得不承認的是,電話營銷模式依舊是企業營銷能力的重要方式,然而成單率較低、效率不高已經成為大部分企業的共識。然而對企業而言,實際上相當為有效的恰恰還是電話營銷模式,電銷模式是一種距離用戶近的方式,也是相...
三極管的管型及管腳的判別是電子技術初學者的一項基本功,總結四句口訣:“三顛倒,找基極;PN結,定管型;順箭頭,偏轉大;測不準,動嘴巴。”下面是其詳細講解部分。1 三顛倒,找基極大家知道,三極管是含有兩個PN結的半導體器件。根據兩個PN結連接方式不同,可以分為NPN型和PNP型兩種不同導電類型的三極管,圖1是它們的電路符號和等效電路。測試三極管要...

史海拾趣

問答坊 | AI 解惑

PADS2005 系列中文教程.pdf

PADS2005 系列中文教程.pdf…

查看全部問答∨

關于ARM 及SoC,你想知道些什么?

關于ARM 及SoC,你想知道些什么?…

查看全部問答∨

問下,STM32的ADC校準是調整絕對精度還是相對精度

是不是校準了就可以不測量VREFINT 來自EEWORLD合作群:arm linux fpga 嵌入0(49900581)群主:wangkj…

查看全部問答∨

wince設備被識別為U盤問題(續)

我的WINCE設備現在已經可以識別為U盤. 還有個問題,當我把USB線插上的時候,WINCE上NAND FLASH的盤符消失,同時PC上顯示U盤盤符;但是當我拔掉USB線時,PC上的盤符消失,而WINCE上的盤符卻沒有顯示出來,怎么讓FLASH重新MOUNT一次?這個問題怎么解決啊?…

查看全部問答∨

把4的ascii碼用加偶校驗的10位串行幀表示

把4的ascii碼用加偶校驗的10位串行幀表示…

查看全部問答∨

初學者的問題:MAX7219

我用MAX7219 怎么LED不顯示,我用的單片機是C8051F360,是不是和SPI的初始化頻率有什么關系啊?請高手指點迷津!!!…

查看全部問答∨

vxworks缺省網關設置和修改的問題

問題是這樣的: vxWorks下,我用routeAdd "0.0.0.0","192.168.1.1"添加了一條路由,但是用routeDelete "0.0.0.0","192.168.1.1"刪除不掉。其實我是想修改網關的地址(先刪再重新加),但是現在刪不掉先前設置的。 請各位大大幫幫 ...…

查看全部問答∨

請問為什么要這樣處理Chache

在使用s3c44b0的時候,看到有這么一條語句 rNCACHBE0=(((Non_Cache_End)>>12)<<16)|((Non_Cache_Start)>>12); 為什么這樣就可以設置非cache區的起始和結束地址了? 另外為什么要寫成((Non_Cache_End)>>12)<<16,直接寫成Non ...…

查看全部問答∨

請教pty的使用。。。

假如創建一個pty: ptyDevCreate("/pty/my.", 512, 512);那么得到的主從設備依次為:"/pty/my.M"以及"/pty/my.S"。按照VxWorks的幫助是這么說的:主進程使用"/pty/my.M"進行寫,從進程使用"/pty/my.S"進行讀,按照,這樣理解 ...…

查看全部問答∨

【全美經典】系列教材

一個朋友最近送給我的一套【全美經典】系列教材,看了一點,感覺還可以,所以傳上來給大家分享一下,全部免費下載,需要的朋友可以看一下。 [ 本帖最后由 fengxin 于 2010-10-23 11:49 編輯 ]…

查看全部問答∨
小廣播
設計資源 培訓 開發板 精華推薦

最新單片機文章
何立民專欄 單片機及嵌入式寶典

北京航空航天大學教授,20余年來致力于單片機與嵌入式系統推廣工作。

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 宁武县| 宁都县| 九江县| 吉木乃县| 巴林左旗| 且末县| 祁东县| 海林市| 巴南区| 和龙市| 德格县| 游戏| 庆云县| 工布江达县| 浦县| 读书| 巴林左旗| 凯里市| 尖扎县| 文水县| 即墨市| 正定县| 交城县| 新闻| 陇西县| 都兰县| 荃湾区| 手游| 长武县| 同心县| 兴仁县| 绥阳县| 常熟市| 泗阳县| 金坛市| 宽甸| 那坡县| 宝坻区| 昂仁县| 钟山县| 伊金霍洛旗|