分享一個(gè)很好的畢業(yè)設(shè)計(jì)——USB照相機(jī),傳感器用的是MT9M001C12STM芯片(MT9M001C12STM數(shù)據(jù)手冊(cè)),USB微控制器用的是CY7C68013A芯片(CY7C68013A-56PVXC數(shù)據(jù)手冊(cè))。
CY7C68013A概述:
CY7C68013A是個(gè)帶8051的高速USB控制器,優(yōu)點(diǎn)是開發(fā)方便(Cypress提供了開發(fā)包)、開發(fā)成本低(直接通過USB下載程序)、便宜(中發(fā)零售價(jià)¥20)、保密性差(程序不能存在單片機(jī)里,只能每次上電后從PC下載或者存24Cxx里,要保密的話就要額外想一點(diǎn)損招,我給的電路原理圖中在I2C總線上掛了個(gè)AVR就是打算干這個(gè)用的)
USB照相機(jī)設(shè)計(jì)流程如下:
- 從零開始學(xué)68013的開發(fā)(當(dāng)然零包含會(huì)8051,否則就先去學(xué)一下51……),Cypress官方網(wǎng)站下一個(gè)叫做Cy3684的開發(fā)包,也可以下Cy4604,這兩個(gè)大同小異,如果上位機(jī)要用C#的話就下SuiteUSB.Net2.0,下載完后把該安的安上,包括Keil C(Cy3684)里有一個(gè)限制版的Keil C,足夠用了。
- 讀開發(fā)包里的文檔,明確每種傳輸都能干什么,適合干什么,根據(jù)自己的需求決定要用的傳輸方式;
- 寫固件,Cypress有個(gè)固件框架,在里面填上自己的程序就能用,怎么寫有個(gè)叫trm的文檔里也寫得挺清楚的;
- 用USB Console調(diào)固件,由于Cypress提供了個(gè)效率還不錯(cuò)的驅(qū)動(dòng)CyUSB,所以一般應(yīng)用不用自己寫驅(qū)動(dòng),直接用那個(gè)就行;
- 寫上位機(jī)程序,用CyAPI這個(gè)API就行……如果要傳得比較快的話可以參考我的上位機(jī)程序;
- 調(diào)完上位機(jī)程序,把最終的固件下載到EEPROM里;
附件內(nèi)容包括:USB照相機(jī)電路原理圖,固件的工程,上位機(jī)程序,還有release里是需要準(zhǔn)備的東西。
希望對(duì)大家有幫助~總得來說還是那句話,68013是個(gè)不錯(cuò)的東西,個(gè)人覺得比PSoC系列要成功多了。
USB照相機(jī)電路: