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