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