超聲波探傷系統驅動程序的重要性
超聲波探傷系統驅動程序工作在 Linux 操作系統的底層,負責為上層應用程序提供良好的硬件抽象。Linux 操作系統為設備驅動的開發提供了一整套機制,尤其是模塊化驅動機制,允許動態加載和卸載可裝載模塊,極大地提高了設備驅動程序的開發和調試效率,甚至根本上改變了設備驅動程序的開發方法。Linux 設備驅動程序在開發過程中要按照操作系統提供的驅動設計接口,使用系統提供的功能函數,這樣不僅可以為上層應用程序提供統一和清晰的接口,也可以提高開發效率。
探傷系統的設備驅動程序都是字符型設備驅動,針對不同的硬件特性,分別用不同的模塊或程序實現。根據數據平面和控制平面接口,可以分為探傷波形數據傳輸驅動程序、FPGA 參數配置驅動程序和 ARM 外圍設備驅動程序。根據各個設備驅動要求,使用了有針對性的開發和調試方法。系統設備驅動程序雖然代碼量并不大,但是其與硬件直接相關,在整個系統軟件中占有重要地位。在設備驅動開發過程中要先完成系統工作中最基本的設備驅動,如數據平面的FIFO 驅動模塊,ARM 外圍設備驅動的鍵盤驅動和 LCD 驅動等,然后再完成控制平面接口的設備驅動。設備驅動程序開發的另一個特點是其開發完成后,如果硬件電路不修改,設備驅動也基本上不需要修改。
我們給出了基于 Linux 的設備驅動開發方法和流程,系統中設備驅動的設計和分類,研發了有代表性的 FIFO 驅動模塊、DacMax508 驅動模塊和基于幀緩沖的 LCD 設備驅動的實現。給出了系統設備驅動的測試方法。