超聲波流量計 超聲波換能器性能開發及設計與實現五十二
4.4。4固件程序設計(超聲波流量計)
所有基于微控制器及其井曝電路的功能設備的正常工作都離不開匿彳牛的參與,露件的工作就是輔助硬件,或者說是控制硬件來完成預期的設備功能。對于USB,固件程序主要完成以下的工作f33l:
(1)初始化工作,包括設置一些特殊功能寄存器的初值以實現所需的設備屬性或者功能,例如開中斷、使能端點、配置端口等;
(2)輔助硬件完成設備的重枚舉過程,包括模擬設備的斷開與重新連接,對收到的設置包進行分析判斷,從而對主機的設備請求作出適當的響應,完成主機對設備的配置任務;
(3)對中斷的處理;
(4)數據的接收與發送;國外圍電路的控制。
Cyress公司為EZ-USB FX2芯片提供了用Keil 51C開發的固件庫和固件框架。固件庫中,fx2.h定義了一些常量、數據結構、宏、通用函數;fx2regs.h中包括位屏蔽定義和寄存器定義;EZUSB.LIB包含庫函數的二進制代碼;USBJMPTB.OBJ包含USB中斷矢量和跳轉表;另外固件庫還包括一些函數和全局變量。固件框架實現了初始化芯片、處理USB標準設備請求及掛起狀態下的電源管理等功能。專用固件文件包括FW.C、PERIPH.C、DSCR.ASl、EZUSB.LIB、USBJMPTB.OBJ,其中DSCR.A51是描述符;FW.C是固件的原始程序代碼,主要實現設備初始化和重新列舉和響應設備請求;PERIPH.C是用戶子函數掛鉤的相關定義,包括任務分配、設備請求和USB總線中斷處理。
超聲波流量計