名廠專場:詳解I2C總線的圖像傳感器配置
發(fā)布時間:2015-06-25 責(zé)任編輯:sherry
【導(dǎo)讀】基于I2C總線的圖像傳感器配置在視頻圖像采集處理系統(tǒng)中非常普遍,本設(shè)計(jì)結(jié)合了FPGA 的可編程特性,采用模塊化的方法設(shè)計(jì)方法完成了I2C 配置電路的設(shè)計(jì),詳細(xì)介紹了各個模塊的設(shè)計(jì)流程和實(shí)現(xiàn)方式,最后對整個設(shè)計(jì)進(jìn)行了仿真,驗(yàn)證了設(shè)計(jì)的正確性。
基于FPGA 的嵌入式圖像檢測系統(tǒng)因其快速的處理能力和靈活的編程設(shè)計(jì)使得它在工業(yè)現(xiàn)場的應(yīng)用非常廣泛,通常這些系統(tǒng)都是通過采集圖像數(shù)據(jù)流并對它實(shí)時處理得到所需的特征信息。圖像數(shù)據(jù)的獲取是整個系統(tǒng)的第一步,作為整個系統(tǒng)的最前端,它決定了原始數(shù)據(jù)的質(zhì)量,是整個系統(tǒng)成功的關(guān)鍵。CMOS 圖像傳感器采用CMOS 工藝,可以將圖像采集單元和信號處理單元集成到同一塊芯片上,因而在集成度、功耗、成本上具有很大優(yōu)勢,這使得它在嵌入式圖像處理領(lǐng)域的運(yùn)用越來越多。CMOS 圖像傳感器芯片大都把 I2C 總線的一個子集作為控制接口,用戶可以很方便地對芯片進(jìn)行編程操作,根據(jù)設(shè)計(jì)要求的不同配置圖像傳感器內(nèi)部寄存器數(shù)據(jù),以獲取期望的圖像。
本文以Aptina 公司的MT9P031 圖像傳感器為例,用Verilog 硬件描述語言設(shè)計(jì)了I2C 總線的接口電路,以FPGA 作為核心控制器實(shí)現(xiàn)了對MT9P031 初始化操作,不僅驗(yàn)證了I2C 總線的配置效果,得到了理想的圖像數(shù)據(jù),還為后續(xù)線結(jié)構(gòu)光圖像的處理系統(tǒng)奠定了基礎(chǔ)。
1 I2C 總線協(xié)議及MT9P031 配置過程介紹
1.1 I2C 總線協(xié)議
I2C(Inter-Integrated Circuit Bus) 總線是由PHILIPS 公司開發(fā)的兩線式用于芯片之間連接的總線,由于其接口線少,控制方式簡單,通信速率較高等特點(diǎn),在單片機(jī)、串行EEPROM 等器件中有著廣泛的使用。I2C 總線用兩根信號線來進(jìn)行數(shù)據(jù)傳輸,一根為串行數(shù)據(jù)(SDA, Serial Data),另一根為串行時鐘線(SCL, Serial Clock)。若干兼容器件(如存儲器、A/D、D/A、LCD 驅(qū)動器等)可以共享I2C 總線。I2C 總線上所有器件依靠SDA 發(fā)送的地址信號尋址,不需要片選線。任何時刻總線只能由一個主器件控制,各從器件在總線空閑時啟動數(shù)據(jù)傳輸。
1.2 MT9P031 配置時序分析
由于檢測系統(tǒng)需求的不同,圖像傳感器可能要工作在不同的模式,因此需要通過外部控制器對其內(nèi)部寄存器進(jìn)行讀寫操作,完成具體的配置。典型的寫MT9P031 寄存器時序如圖1 所示,起始信號過后,F(xiàn)PGA 先寫入設(shè)備(即MT9P031)的地址0xBA,然后釋放SDATA 數(shù)據(jù)總線,隨后MT9P031 返回一個應(yīng)答信號ACK,F(xiàn)PGA 獲取應(yīng)答信號后,經(jīng)過一個時鐘周期再傳送待配置的寄存器地址0x09,在獲取應(yīng)答信號后再傳送16 位的寄存器數(shù)據(jù),由于每次只能發(fā)送8 位數(shù)據(jù),所以這16位的寄存器數(shù)據(jù)要分兩次才能發(fā)送完畢,先發(fā)送的是高八位數(shù)據(jù),后發(fā)送的為低八位數(shù)據(jù),每發(fā)送完一個字節(jié)的數(shù)據(jù),F(xiàn)PGA均會獲取一位的應(yīng)答信號,然后結(jié)束一個傳送周期,完成一個寄存器的配置,即IDAddress+ SUB-Address + W-Data 總共32位的數(shù)據(jù)。重復(fù)上述過程可以對不同的寄存器進(jìn)行不同的參數(shù)配置。
圖1 寫MT9P031 時序圖
2 FPGA 模塊設(shè)計(jì)
為了實(shí)現(xiàn)對圖像傳感器的正確配置,必須嚴(yán)格按照MT9P031 的配置時序完成設(shè)計(jì),本設(shè)計(jì)中I2C 總線配置模塊主要由三個小模塊構(gòu)成,它們分別是I2C_Clock_Generator、I2C_Controller 和Register_Value,各模塊之間的連接如圖2 所示。
圖2 I2C 總線配置模塊結(jié)構(gòu)框圖
I2C_Clock_Generator 主要產(chǎn)生負(fù)責(zé)產(chǎn)生I2C 串行時鐘信號,根據(jù)協(xié)議數(shù)據(jù)傳輸有三種速度模式:正常模式100Kb/s、快速模式400Kb/s、高速模式3.4Mb/s,為了保證配置的準(zhǔn)確性和成功率,設(shè)計(jì)中采用了100Kb/ 的速度模式,即SCLK 的頻率為100KHz,因?yàn)镕PGA 外部輸入的時鐘為50MHz,所以需要對其分頻獲得。同時該模塊還負(fù)責(zé)產(chǎn)生數(shù)據(jù)傳輸有效信號,保證SDAT 的改變發(fā)生在SCLK 的低電平時段。
Register_Value 其實(shí)一個查找表,負(fù)責(zé)保存MT9P031 內(nèi)部需要配置的寄存器地址和數(shù)據(jù),查找表內(nèi)數(shù)據(jù)的位數(shù)都是24bit,單獨(dú)作為一個模塊的目的是為了方便用戶改變配置數(shù)據(jù),決定圖像傳感器的不同工作狀態(tài)。
I2C_Controller 是圖像傳感器配置設(shè)計(jì)的核心模塊,主要完成了啟停命令產(chǎn)生、字節(jié)發(fā)送和讀取、應(yīng)答信號采集等功能。同時,I2C_Controller 模塊還產(chǎn)生I2C讀寫時序,由狀態(tài)機(jī)嚴(yán)格按照I2C 協(xié)議實(shí)現(xiàn),將Register Value 部分送出的24 位操作碼I2C_DAT 轉(zhuǎn)化成為正確的I2C 時序。一個寄存器的數(shù)據(jù)傳輸完成后,模塊還將判斷寄存器配置數(shù)據(jù)是否發(fā)送順利,如果一切正常,LUT_INDEX 信號會自動加一,控制Register Value 查找表產(chǎn)生下一個寄存器的地址和數(shù)據(jù)。
3 I2C 接口的仿真及調(diào)試
為了驗(yàn)證MT9P031 配置過程中I2C時序的正確性,本設(shè)計(jì)在Modelsim Se10.1c 版軟件平臺中對整個模塊進(jìn)行了功能仿真,在Test bench 中模擬了50MHz 控制時鐘以及復(fù)位信號,觀察最終輸出端的波形情況。圖3 是對MT9P031 的寄存器地址0x00 進(jìn)行讀操作的仿真波形圖,圖4是對寄存器地址0x01 寫入0x01EA 的仿真波形圖。
圖3 讀取寄存器0x00 的波形仿真
圖4 向寄存器0x01 寫入數(shù)據(jù)0x01EA 的波形仿真
4 總結(jié)
基于I2C總線的圖像傳感器配置在視頻圖像采集處理系統(tǒng)中非常普遍,本設(shè)計(jì)結(jié)合了FPGA 的可編程特性,采用模塊化的方法設(shè)計(jì)方法完成了I2C 配置電路的設(shè)計(jì),詳細(xì)介紹了各個模塊的設(shè)計(jì)流程和實(shí)現(xiàn)方式,最后對整個設(shè)計(jì)進(jìn)行了仿真,驗(yàn)證了設(shè)計(jì)的正確性。綜合調(diào)試后占用資源極小,可靠性高,而且利用Verilog 硬件描述語言的設(shè)計(jì)使得可移植性很強(qiáng),具有廣泛的應(yīng)用價(jià)值。
特別推薦
- 復(fù)雜的RF PCB焊接該如何確保恰到好處?
- 電源效率測試
- 科技的洪荒之力:可穿戴設(shè)備中的MEMS傳感器 助運(yùn)動員爭金奪銀
- 輕松滿足檢測距離,勞易測新型電感式傳感器IS 200系列
- Aigtek推出ATA-400系列高壓功率放大器
- TDK推出使用壽命更長和熱點(diǎn)溫度更高的全新氮?dú)馓畛淙嘟涣鳛V波電容器
- 博瑞集信推出低噪聲、高增益平坦度、低功耗 | 低噪聲放大器系列
技術(shù)文章更多>>
- 基于GD32F407VET6主控芯片的永磁同步電機(jī)控制器設(shè)計(jì)
- 如何選擇和應(yīng)用機(jī)電繼電器實(shí)現(xiàn)多功能且可靠的信號切換
- 基于APM32F411的移動電源控制板應(yīng)用方案
- 數(shù)字儀表與模擬儀表:它們有何區(qū)別?
- 聚焦制造業(yè)企業(yè)貨量旺季“急難愁盼”,跨越速運(yùn)打出紓困“連招”
技術(shù)白皮書下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
交流電機(jī)
腳踏開關(guān)
接觸器接線
接近開關(guān)
接口IC
介質(zhì)電容
介質(zhì)諧振器
金屬膜電阻
晶體濾波器
晶體諧振器
晶體振蕩器
晶閘管
精密電阻
精密工具
景佑能源
聚合物電容
君耀電子
開發(fā)工具
開關(guān)
開關(guān)電源
開關(guān)電源電路
開關(guān)二極管
開關(guān)三極管
科通
可變電容
可調(diào)電感
可控硅
空心線圈
控制變壓器
控制模塊