[發明專利]一種基于MFC類庫和屏幕分辨率的波形繪制和采集方法在審
| 申請號: | 201611030078.3 | 申請日: | 2016-11-15 |
| 公開(公告)號: | CN106771452A | 公開(公告)日: | 2017-05-31 |
| 發明(設計)人: | 滕友偉;劉宇;逄錦昊;吳恒奎 | 申請(專利權)人: | 中國電子科技集團公司第四十一研究所 |
| 主分類號: | G01R13/00 | 分類號: | G01R13/00 |
| 代理公司: | 濟南圣達知識產權代理有限公司37221 | 代理人: | 張勇 |
| 地址: | 266555 山東省*** | 國省代碼: | 山東;37 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 mfc 屏幕分辨率 波形 繪制 采集 方法 | ||
技術領域
本發明涉及一種基于MFC類庫和屏幕分辨率的波形繪制和采集方法。
背景技術
在航空和國防領域中,電子技術的發展對信號波形得要求越來越復雜,同時又不能降低信號的分辨率,這對測試用的信號源提出了新的挑戰。要求信號源不僅具備復雜波形的輸出能力,還對輸出頻率、波形質量、輸出通道數目以及輸出信號之間的同步能力等功能指標提出了更高的要求。
任意波形繪制及信號產生是任意波發生裝置最重要的功能,該功能注重于以靈活的方式產生任意復雜信號,并通過任意波發生裝置實現“逐點輸出”。以顯示屏幕為載體構建直角坐標系,左下角為坐標原點,向右為x正方向,對應時間信息,向上為y正方向,對應幅度信息。
采用MFC設計波形繪制軟件的基本方法是通過跟蹤鼠標響應消息(如鼠標按下WM_LBUTTONDOWN、鼠標抬起WM_LBUTTONUP、鼠標移動WM_MOUSEMOVE)來觸發操作。當鼠標按下時表示繪制開始,在鼠標移動過程中會按一定時間間隔觸發WM_MOUSEMOVE消息,每觸發一次WM_MOUSEMOVE消息,系統可以獲取一次當前鼠標的位置(以像素為單位)并存入數組pBuf,鼠標抬起表示繪制操作結束,將pBuf中的數據取出后轉化為直角坐標系中的對應的坐標點,逐點連接后顯示鼠標軌跡曲線。圖1所示繪制的正弦波,坐標系x方向長度為21個像素,x方向相鄰像素點的間隔可以等效為時域上的一個時間間隔。y方向由像素位置轉化為對應的幅度坐標,范圍為0~3V。為了能夠實時顯示鼠標運動軌跡,需設置一個定時器消息WM_TIMER,設定定時間隔,在執行波形繪制操作時,時間每過,執行一次波形重繪操作。
現有鼠標跟蹤法下,如若鼠標向左移動,如圖2所示缺點1示意圖的虛線部分,由于先前位置存儲數組pBuf中的位置數據沒有做相應的處理,導致一個x對應兩個或多個y值,造成“曲線重復”,這種波形是無法輸出的。
在波形繪制鼠標移動過程中,MFC以一定的時間間隔觸發WM_MOUSEMOVE消息,記為Δt。若鼠標繪制過程中某段移動速度非常快,如圖1所示,A->B用時Δt,B->C用時Δt,pBuf中的波形數據將會失去部分時域上的信息。該波形數據通過任意波形發生裝置輸出的后如圖2中缺點2所示,導致正弦波信號部分失真。
當鼠標向x負方向移動時,會產生類似半封閉的曲線,造成在同一時間點上對應多個不同的幅度信息,這里把這種現象稱為“曲線重復”,這顯然不是波形發生裝置希望輸出的信號。
發明內容
本發明為了解決上述問題,提出了一種基于MFC類庫和屏幕分辨率的波形繪制和采集方法,本方法解決了常用的鼠標跟蹤法存在的同一時間點,可能存在多個不同幅度的缺點,通過定時對存儲的坐標數據進行處理,實現時間和幅度的一一對應。同時通過插值的方法,以達到采集數據準確反映波形數據時域信息的目的。
為了實現上述目的,本發明采用如下技術方案:
一種基于MFC類庫和屏幕分辨率的波形繪制和采集方法,包括以下步驟:
(1)在波形繪制窗口建立直角坐標系,確定像素坐標和直角坐標之間的轉換關系,給坐標數據存儲數組分配內存空間;
(2)設定數據修正和波形重繪操作的時間間隔;
(3)記錄鼠標點擊并移動過程中的鼠標點擊時的坐標,并存儲到坐標數據存儲數組內;
(4)執行繪制操作過程中,按照設定的時間間隔,依次進行坐標數據存儲數組的數據進修正和波形重繪操作,直到檢測到鼠標釋放信息;
(5)對坐標數據存儲數組的坐標數據進行插值擬合,輸出繪制信號。
所述步驟(2)中,設置不同的存儲單元分別記錄鼠標的左鍵點擊、釋放和移動信息。
所述步驟(2)中,數據修正的時間間隔小于波形重繪的時間間隔。
所述步驟(4)中,如果坐標數據存儲數組的存在多個在時間上存在先后順序的點,用最新的數據替換最先數據,依次進行填補舍棄。
所述步驟(4)中,波形重繪操作包括背景刷新和坐標連線。
所述步驟(5)中,利用三次樣條插值運算進行擬合。
所述步驟(5)中,具體包括:
(5-1)取出坐標數據存儲數組中的坐標數據,橫坐標賦值給一維數組X,縱坐標賦值給一維數組Y;
(5-2)初始化插值后的新的橫坐標一維數組X’;
(5-3)利用三次樣條插值運算進行擬合,以新的曲線橫坐標值和縱坐標值替換坐標數據存儲數組中的數據。
本發明的有益效果為:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國電子科技集團公司第四十一研究所,未經中國電子科技集團公司第四十一研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201611030078.3/2.html,轉載請聲明來源鉆瓜專利網。





