国产精彩亚洲中文在线-特黄色一级片-亚洲欧美在线不卡-日韩视频欧美视频-国产一级在线-亚洲天堂视频图片-欧美日韩中文视频-亚洲欧美在线一区-真实人与人性恔配视频-久草免费资源-偷看洗澡一二三区美女-av大片免费-亚洲第一区久久-婷婷四房综合激情五月-天天干天天爱天天操-欧美挤奶吃奶水xxxxx-久久一二区

18931180976
超聲波探傷設(shè)備 超聲波探傷設(shè)備型號(hào)
探傷設(shè)備生產(chǎn)廠家
探傷設(shè)備案例
綜合實(shí)力
合作單位
探傷知識(shí)
招聘信息
聯(lián)系方式
當(dāng)前位置:首頁(yè) >> 探傷知識(shí)

探傷波形數(shù)據(jù)傳輸驅(qū)動(dòng)程序設(shè)計(jì)

發(fā)布時(shí)間:2023/12/18 14:45:45

探傷波形數(shù)據(jù)傳輸驅(qū)動(dòng)程序是驅(qū)動(dòng)層數(shù)據(jù)平面的實(shí)現(xiàn),在整個(gè)系統(tǒng)中具有重要的作用,它完成探傷波形數(shù)據(jù)從 FPGA 子系統(tǒng)到 ARM 子系統(tǒng)的傳送,并將探傷波形數(shù)據(jù)從 Linux 操作系統(tǒng)的內(nèi)核空間傳送到用戶空間。由于系統(tǒng)的重復(fù)頻率為 50Hz,即每隔 20ms 有一幀探傷波形數(shù)據(jù),所以該設(shè)備驅(qū)動(dòng)對(duì)時(shí)間性要求相對(duì)較高。由于探傷波形數(shù)據(jù)傳輸驅(qū)動(dòng)程序主要是從 FPGA的 FIFO 中讀取數(shù)據(jù),完成數(shù)據(jù)傳輸功能,功能單一,所以可以在一個(gè)驅(qū)動(dòng)模塊中實(shí)現(xiàn)。超聲波探傷系統(tǒng)將其定義為 FIFO 驅(qū)動(dòng)模塊。


設(shè)備驅(qū)動(dòng)的工作方式有查詢和中斷兩種方式,由于本系統(tǒng)硬件控制采樣的時(shí)序比較嚴(yán)格,每隔 20ms 有一幀波形數(shù)據(jù)到達(dá),所以該設(shè)備驅(qū)動(dòng)的工作方式采用中斷方式。


FPGA 硬件設(shè)備每隔 20ms 會(huì)完成探傷波形的采集和高速數(shù)字信號(hào)處理,并將一幀探傷波形數(shù)據(jù)存入 FIFO 然后通過(guò)硬件中斷信號(hào)通知 ARM 處理器。ARM 處理器接收到中斷信號(hào)后,由 Linux 操作系統(tǒng)負(fù)責(zé)處理中斷,并最終調(diào)用該設(shè)備驅(qū)動(dòng)已經(jīng)注冊(cè)的中斷服務(wù)程序。在中斷服務(wù)程序中完成從 FPGA 的FIFO 中讀取探傷波形數(shù)據(jù)到操作系統(tǒng)的內(nèi)核空間。


FIFO 驅(qū)動(dòng)模塊在中斷服務(wù)程序中完成從 FPGA 的 FIFO 中讀取波形數(shù)據(jù)到系統(tǒng)內(nèi)核空間,然后需要用一種方式通知上層應(yīng)用程序數(shù)據(jù)已到達(dá)。傳統(tǒng)的進(jìn)程間通信機(jī)制包括管道(Pipe)和命名管道(Named Pipe)、信號(hào)(Signal)、報(bào)文傳遞(Message)、共享內(nèi)存(Shared Memory)、信號(hào)量(Semaphore)以及套接字(Socket)等。由于 FIFO 驅(qū)動(dòng)模塊中的中斷服務(wù)程序運(yùn)行于中斷上下文,而不是進(jìn)程上下文,所以除了信號(hào)之外,無(wú)法直接使用這些機(jī)制。信號(hào)不僅可以用于兩個(gè)進(jìn)程之間進(jìn)行通信,也可以用于內(nèi)核與進(jìn)程之間的通信,但內(nèi)核只能向進(jìn)程發(fā)送信號(hào)而不能接收信號(hào)。一般來(lái)說(shuō),信號(hào)是對(duì)“中斷”概念在軟件層次上的模擬,所以也稱為“軟中斷”。所以在 FIFO 驅(qū)動(dòng)模塊中,通過(guò)向上層應(yīng)用程序發(fā)送信號(hào)來(lái)通知上層應(yīng)用程序數(shù)據(jù)已經(jīng)到達(dá)。在 Linux 操作系統(tǒng)中,內(nèi)核提供了異步通知機(jī)制,該機(jī)制即采用設(shè)備驅(qū)動(dòng)發(fā)送信號(hào)的方法,實(shí)現(xiàn)設(shè)備驅(qū)動(dòng)和應(yīng)用程序之間的通信,這樣應(yīng)用程序就不需要使用查詢來(lái)關(guān)注數(shù)據(jù)何時(shí)到達(dá)。


津南区| 铜川市| 新民市| 武清区| 正宁县| 宾川县| 金坛市| 通渭县| 枣强县| 扎鲁特旗| 礼泉县| 南投县| 远安县| 梧州市| 治多县| 扶绥县| 东宁县| 和田县| 湟中县| 山东| 克什克腾旗| 静海县| 松原市| 获嘉县| 巴青县| 阳高县| 平昌县| 海口市| 剑川县| 德阳市| 榆中县| 泾川县| 彩票| 石河子市| 镇坪县| 石河子市| 和政县| 玉田县| 台中市| 永胜县| 留坝县|