硬件學(xué)習(xí)方向:圖像捕獲——FPGA線
1?????? 圖像捕獲FPGA線
?
1.1 經(jīng)典案例
使用攝像頭捕獲環(huán)境圖像,在LCD屏或MCU屏上輸出動(dòng)態(tài)圖象。
?
1.2 入門(Amor)
目標(biāo):使用OV5640攝像頭捕獲環(huán)境圖像,在特定的LCD屏或MCU屏上輸出。使用現(xiàn)成的FPGA開(kāi)發(fā)板。
?
點(diǎn)評(píng):在現(xiàn)有的硬件上,主要通過(guò)現(xiàn)成代碼拼接,上電調(diào)試,滿足要求。
?
需要的技術(shù):
(FPGA)verilog語(yǔ)言組合邏輯電路,時(shí)序邏輯電路,狀態(tài)機(jī)
(FPGA)FPGA驅(qū)動(dòng)特定的攝像頭,使用指定的寄存器配置
(FPGA)FPGA驅(qū)動(dòng)特定的屏幕,分辨率提前指定
(FPGA)FPGA驅(qū)動(dòng)SDRAM,使用IP核或現(xiàn)成的代碼
(FPGA)PLL IP核使用
(圖像)RGB565圖像格式
(圖像)DVP幀時(shí)序
(協(xié)議)I2C/SCCB/SMBUS通信協(xié)議
(電路)攝像頭、屏幕、FPGA電路原理圖
?
需要的重要能力:
(FPGA)verilog代碼簡(jiǎn)單閱讀、編寫能力
(FPGA)IP核使用
(電路)原理圖閱讀,功能理解,管腳識(shí)別
?
主要流程:
閱讀原理圖→創(chuàng)建FPGA工程→加入各驅(qū)動(dòng)模塊→編譯通過(guò)→下載調(diào)試
?
1.3 熟練(Midnight Wispy)
目標(biāo):使用OV5640、OV7725等不同的攝像頭捕獲環(huán)境圖像,在640*480、320*240等不同分辨率的LCD屏或MCU屏上輸出,且可以自動(dòng)識(shí)別攝像頭的型號(hào)以及屏幕分辨率。使用現(xiàn)成的FPGA開(kāi)發(fā)板。
?
點(diǎn)評(píng):在現(xiàn)有的硬件上,通過(guò)自己編寫代碼,上電調(diào)試,滿足要求。
?
需要的技術(shù):
(FPGA)verilog語(yǔ)言組合邏輯電路,時(shí)序邏輯電路,狀態(tài)機(jī)
(FPGA)FPGA驅(qū)動(dòng)攝像頭,靈活進(jìn)行寄存器配置或自主識(shí)別
(FPGA)FPGA驅(qū)動(dòng)屏幕,分辨率靈活設(shè)定或自主識(shí)別
(FPGA)FPGA驅(qū)動(dòng)SDRAM,封裝成一個(gè)FIFO或RAM
(FPGA)FIFO或RAM控制器
(FPGA)PLL IP核使用
(FPGA)verilog語(yǔ)言同步復(fù)位電路設(shè)計(jì)
(FPGA)verilog語(yǔ)言同步時(shí)鐘電路設(shè)計(jì)
(FPGA)verilog語(yǔ)言位拼接
(FPGA)靜態(tài)時(shí)序分析
(圖像)RGB565、RGB888圖像格式
(圖像)DVP幀時(shí)序
(協(xié)議)I2C/SCCB/SMBUS通信協(xié)議
(電路)攝像頭、屏幕、FPGA電路原理圖
?
需要的重要能力:
(FPGA)verilog代碼簡(jiǎn)單閱讀能力,復(fù)雜編寫能力
(FPGA)IP核使用
(FPGA)復(fù)雜狀態(tài)機(jī)設(shè)計(jì)的能力
(FPGA)異步復(fù)位、異步時(shí)鐘處理
(FPGA)根據(jù)靜態(tài)時(shí)序分析的結(jié)果對(duì)系統(tǒng)時(shí)序進(jìn)行改進(jìn)
(圖像)DVP幀標(biāo)準(zhǔn)閱讀與理解
(協(xié)議)通信協(xié)議閱讀與理解
(器件)Datasheet閱讀能力
(電路)原理圖閱讀,功能理解,管腳識(shí)別
?
主要流程:
熟悉不同攝像頭、屏幕的配置與區(qū)別→閱讀原理圖→創(chuàng)建FPGA工程→加入各驅(qū)動(dòng)模塊→編譯通過(guò)→靜態(tài)時(shí)序分析→編譯通過(guò)→下載調(diào)試
?
1.4 精通(Aurora)
目標(biāo):使用OV5640、OV7725等不同的攝像頭捕獲環(huán)境圖像,在640*480、320*240等不同分辨率的LCD屏或MCU屏上輸出,且可以自動(dòng)識(shí)別攝像頭的型號(hào)以及屏幕分辨率。使用自己設(shè)計(jì)的FPGA電路板。
?
點(diǎn)評(píng):自己設(shè)計(jì)硬件電路,并編寫代碼,上電調(diào)試代碼功能與電路板電路,滿足要求。
?
需要的技術(shù):
(FPGA)verilog語(yǔ)言組合邏輯電路,時(shí)序邏輯電路,狀態(tài)機(jī)
(FPGA)FPGA驅(qū)動(dòng)攝像頭,靈活進(jìn)行寄存器配置或自主識(shí)別
(FPGA)FPGA驅(qū)動(dòng)屏幕,分辨率靈活設(shè)定或自主識(shí)別
(FPGA)FPGA驅(qū)動(dòng)SDRAM,封裝成一個(gè)FIFO或RAM
(FPGA)FIFO或RAM控制器
(FPGA)PLL IP核使用
(FPGA)verilog語(yǔ)言同步復(fù)位電路設(shè)計(jì)
(FPGA)verilog語(yǔ)言同步時(shí)鐘電路設(shè)計(jì)
(FPGA)verilog語(yǔ)言位拼接
(FPGA)靜態(tài)時(shí)序分析
(圖像)RGB565、RGB888圖像格式
(圖像)DVP幀時(shí)序
(協(xié)議)I2C/SCCB/SMBUS通信協(xié)議
(器件)器件選型
(器件)Datasheet閱讀能力
(電路)攝像頭、屏幕、FPGA電路原理圖設(shè)計(jì)
(電路)原理圖設(shè)計(jì)
(電路)PCB設(shè)計(jì)
(電源)多電源軌道設(shè)計(jì)
?
需要的重要能力:
(FPGA)verilog代碼復(fù)雜閱讀、編寫能力
(FPGA)IP核使用
(FPGA)復(fù)雜狀態(tài)機(jī)設(shè)計(jì)的能力
(FPGA)異步時(shí)鐘處理
(FPGA)根據(jù)靜態(tài)時(shí)序分析的結(jié)果對(duì)系統(tǒng)時(shí)序進(jìn)行改進(jìn)
(圖像)DVP幀標(biāo)準(zhǔn)閱讀與理解
(協(xié)議)通信協(xié)議閱讀與理解
(器件)器件選型能力
(器件)Datasheet閱讀能力
(電路)原理圖的設(shè)計(jì)
(電路)PCB等長(zhǎng)、阻抗設(shè)計(jì)
(電路)PCB電路調(diào)試能力
(電路)多電源軌道設(shè)計(jì)
?
主要流程:
熟悉不同攝像頭、屏幕的配置與區(qū)別→設(shè)計(jì)原理圖→設(shè)計(jì)PCB→PCB電源測(cè)試→創(chuàng)建FPGA工程→加入各驅(qū)動(dòng)模塊→編譯通過(guò)→靜態(tài)時(shí)序分析→編譯通過(guò)→下載綜合調(diào)試
?