基于Intel 8254的運動平臺數/模轉換電路設計
3 軟件實現
8254的內部功能通過系統軟件編程來確定,系統通過接口傳送所要求的工作方式和數值來初始化計數器,每個計數器都是獨立地通過一個命令數據來編程,D/A轉換程序流程圖如圖6所示。本文引用地址:http://cafeforensic.com/article/187408.htm
程序的設計思想是首先為8254進行端口地址分配,以便CPU對硬件進行訪問并對8254賦初值。開始計數時每隔一段時間(ms)對計數器進行1次讀數,并將當前所得計數值與上一計數時間所得計數值相減,將得到的計數差值進行累加,最終所得值即為8254讀入的脈沖方波個數。將此脈沖方波輸出,就實現了D/A轉換,得到系統所需要的模擬電壓值。
8254控制字由D7~D0組成,D7D6選擇計數器0,1,2或鎖存計數器;D5D4選擇操作類型,如先讀/寫低8位,后讀/寫高8位等;D3D4D1選擇計數工作方式,有6種工作方式,如方式1為001、方式2為010等;D0位選擇計數器的數制,該系統采用二進制,D0=0,而計數初值取256,即十六進制的FF。
4 結語
基于Intel 8254的運動平臺數/模轉換電路簡單實用,實時性好,已經應用于我單位研制的某型飛機飛行模擬器的三自由度運動平臺控制系統、儀表控制系統、操縱負荷仿真系統等的數/模轉換電路中。該電路還可推廣應用于工業(yè)控制系統中的數模轉換電路中。
評論