USB讀數(shù)裝置及上位機的設(shè)計
2 軟件程序設(shè)計
2.1 FPGA各模塊程序設(shè)計
本設(shè)計的FPGA程序采用Xilinx公司的ISE軟件。它提供給用戶一個從設(shè)計輸入到綜合、布線、仿真、下載的全套解決方案,并可以很方便的與其他EDA工具接口。
本設(shè)計中原理圖輸入采用其中的第三方軟件ECS,HDL綜合使用XST,測試臺輸入是圖形化的HDL Bencher,仿真使用Modelsim SE。簡要的流程如下:
建立工程項目;綜合;仿真;定義輸入輸出管腳約束;布局布線;下載配置。
FLASH模塊程序設(shè)計中FLASH控制模塊對FLASH存儲器K9F5608UOD執(zhí)行各種操作。K9F5608UOD芯片提供了8種命令,即8種操作:①讀1操作;②讀2操作;③讀ID操作;④復(fù)位操作;⑤頁編程操作;⑥復(fù)制回讀操作;⑦塊擦除操作;⑧讀狀態(tài)操作。
2.2 CY7C68013固件程序開發(fā)
USB功能設(shè)備的硬件功能主要由硬件上的微處理器來實現(xiàn),因此需要為USB設(shè)備編寫固件程序。本設(shè)計的USB固件程序開發(fā)中,使用Keil Software公司推出的51系列兼容單片機軟件開發(fā)系統(tǒng)Keil μVision3。本文引用地址:http://www.ex-cimer.com/article/202345.htm
圖4所示為68013A的固件程序流程圖,下面介紹如何編程。本設(shè)計采用固件框架中的Dscr.a(chǎn)51文件,修改設(shè)備描述符中的ID碼和字符串描述符,并修改相應(yīng)的端口配置,其余保持默認狀態(tài)。主機發(fā)送8字節(jié)的SETUPDAT數(shù)據(jù)包后,68013A將其進行解碼存入SETUPDAT寄存器中。
評論