基于EZ-USB的電腦眼接口設計
其采用了一種基于內部RAM的解決方案,允許客戶隨時不斷地設置和升級,不受端口數據、緩沖大小、傳輸速度及傳輸方式的限制。本文引用地址:http://www.104case.com/article/202546.htm
片內嵌有一個增強型的8051微控制器,4個時鐘的周期使它比標準8051的速度快3倍。
EZ-USB 2131Q有兩種同步傳輸方式:即普通讀寫方式和快速讀寫方式。在普通讀寫方式下,芯片從外部讀取或向外部寫入數據的速率不會超過1000字節/ms,而且數據傳輸指令只能一一列出,共要寫出1000行相同的指令。中間不能用循環來傳輸數據,而且也沒有時間來加入其它指令。這種方式對于要求同步傳輸、每幀傳輸1023字節的設備是不可取的。在快速讀寫方式下,芯片可以在0.5ms內從外部讀取或向外部寫入1023字節的數據,并且還留有足夠的時間可以加入其它指令。
本文中電腦眼的傳輸速度為9幀/s,發送一場圖像數據約111ms;而USB采集一場圖像數據約108ms,電腦眼發送圖像數據和USB接收圖像數據的時間基本相當。
根據EZ-USB 2131Q和電腦眼的總線其傳輸速率,可以利用外接存儲器來實現各功能塊的接口,電腦眼與EZ-SUB接口框圖如圖2所示。電腦眼通過8位數據線傳輸數據,如果保持電腦眼數據的連續傳輸,就用場同步和象素同步作為控制信號。EZ-USB2131Q具有8位輸入輸出數據線,多功能口可用來接收和發送控制信號,其地址線在快速傳輸模式下不可用。
芯片每幀從外部存儲器取數1023字節,在電腦眼與EZ-USB 2131Q接口時,如果利用一個2KB的異步FIFO,電腦工作如下:在電路加電后,電腦眼的場同步控制信號時FIFO進行初始化,然后電腦眼的象素同步信號選通FIFO的讀數據端口,將電腦眼采集的圖像數據寫入FIFO;當FIFO中的數據量達到1KB時(即半滿時),FIFO自動對半滿標志端口置位,EZ-USB2131Q芯片內的控制指令在USB的幀中斷時檢測到半滿標志位后,發出快速讀數據控制信號,從FIFO中取出1023個字節的圖像數據存入芯片內部的緩沖中。因電腦眼一場圖像的分辨率是384×287象素,一場圖像數據為110208(1023×107+747)字節,在取完1023×107字節數據后,芯片在USB的下一幀中斷時檢測不到FIFO半滿置位標志。為了保證電腦眼不中斷地采集數據而只能舍棄剩余的747字節的數據,并且新的場同步信號的到來又會對FIFO進行初始化,開始存入新一場圖像數據。這一接口電路雖然簡單,能實現圖像顯示,但通過USB口所顯示的圖像不完整。因此,設計了基于外接RAM的單片方案。
2.2 基于外接RAM的單片方案
介于上述接口方案存在的缺陷,即要保證電腦眼不間斷采集數據又要保證EZ-USB 2131Q芯片能獲取一場圖像的全部數據,可以采取如圖3所示的另一種單片方案。上面提到過,電腦眼一場的圖像數據是110208字節,要存入一場圖像數據就需要一個128KB的RAM。為了保證電腦眼不間斷地連續傳輸,在此單片方案中利用一個多路轉換器對兩個128KB的RAM進行切換,分別存入電腦眼連續采集的兩場圖像數據。外接RAM的電路中,包含有3大功能塊:兩個128KB的RAM組成存儲功能塊、兩個地址發生器及一個多路轉換器,如圖3所示。存儲功能塊用于存儲電腦眼的一場完整圖像數據,地址發生器用于存儲器的地址選擇,多路轉換器用于切換對存儲塊的工作路徑。
評論