基于RTX的舵機控制系統研制
3.1 上層軟件
在啟動(dòng)舵機控制程序之前,先要啟動(dòng)RTX實(shí)時(shí)環(huán)境,因為底層驅動(dòng)程序和上層舵機控制程序是同時(shí)運行的。軟件的具體操作流程如圖3所示。本文引用地址:http://dyxdggzs.com/article/161110.htm
3.2 底層軟件
根據舵機控制軟件對數據采集的實(shí)時(shí)性要求,首先要對各采集板卡做在RTX下的驅動(dòng)開(kāi)發(fā),這是舵機控制系統解決實(shí)時(shí)性問(wèn)題的重點(diǎn)和難點(diǎn)。編寫(xiě)基于RTX的驅動(dòng)程序,可以通過(guò)調用實(shí)時(shí)應用程序編程接口(RTAPI,Real-Time Applieation Programming Interface)函數來(lái)訪(fǎng)問(wèn)實(shí)時(shí)子系統(RTSS,Real-Time Sub-System),并維持其系統的實(shí)時(shí)性。這樣處理的優(yōu)點(diǎn)是硬件可以通過(guò)RTX函數直接訪(fǎng)問(wèn),驅動(dòng)開(kāi)發(fā)也更加簡(jiǎn)單。
所謂驅動(dòng)程序,就是直接控制設備進(jìn)行工作的底層程序,實(shí)現了硬件和高層應用程序的交互。如果要使用PXI總線(xiàn)設備上的某個(gè)功能,就需要CPU能通過(guò)某段范圍的地址訪(fǎng)問(wèn)或內存訪(fǎng)問(wèn)的方式與該功能交互。RTX驅動(dòng)程序可以將獲得的基地址轉換成系統能夠識別的虛擬地址,然后通過(guò)讀寫(xiě)函數對不同板卡的底層寄存器進(jìn)行操作,從而實(shí)現控制板卡正常工作。PCI定位寄存器配置由BIOS自動(dòng)完成初始化,如分配總線(xiàn)號、中斷向量、地址空間等,驅動(dòng)程序只需要對數據偏移寄存器,即設備內部寄存器進(jìn)行配置。訪(fǎng)問(wèn)內部寄存器,首先要獲得PCI設備在BIOS上的映射基地址,然后根據設備的寄存器偏移量和格式對寄存器進(jìn)行訪(fǎng)問(wèn)。
評論