女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

二進制數據處理方法分享

美國力科TeledyneLeCroy ? 來源:美國力科TeledyneLeCroy ? 2025-07-30 15:41 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

二進制數據處理方法分享

隨著不斷增長的測試需求、更加復雜的系統集成和更多的數據處理,程序控制在示波器的應用中越來越多。在程序控制中很重要的一部分就是如何把數據從示波器中傳輸到我們的上位機上,并且當數據傳輸到我們的上位機上時,我們如何去解析數據并且應用它們。本次的技術分享文章,我們就從如何傳輸數據和解析二進制數據來一步一步剝絲抽繭,搞清楚他的運作原理和二進制數據的數據結構。

首先介紹一下力科示波器波形的保存格式,如圖1所示,力科示波器可以把波形保存成多種格式:Binary、ASCII、Excel、Matlab和Mathcad等。 Binary的格式其實就是原始的二進制數據。對ASCII、Excel、Matlab這三種格式其實示波器已經對原始的二進制波形進行了解析,已經轉換成了string類型,雖然這幾種格式便于觀察,已經解析出了幅值和時間,但是他們最大的問題就是保存下來的波形文件非常的巨大而且保存的時間相對較長,因為示波器還要對其運算和解析來得到string類型。使用二進制的格式來保存波形無論是對數據的后期處理和保存速度相對于前幾種都是有很大優勢的,通常情況下二進制波形的大小只有前幾種格式大小的十分之一左右,問題就是我們如何解析和讀懂其中的波形內容?

502dcaee-691d-11f0-a6aa-92fbcf53809c.png

圖1:示波器保存波形界面

在保存的二進制波形數據中,我們每一個采樣點的電壓值是用一串二進制數字表示的,力科的HDO系列示波器使用的是12位的ADC,也就是說一個采樣點的電壓會被量化成一串12bit的數據,使用2個字節去傳輸,2個字節是16bit,多出的四個字節補零處理即可。

想解析二進制波形那么就必須知道我們保存下來的二進制文件中都有些什么?力科官網有相應的格式模板(如圖2),目前的版本是template2_4。其中解釋了二進制波形文件中都包含哪些數據塊,每個數據塊的內容和含義是什么還有每個數據塊出現的順序。

503b90ac-691d-11f0-a6aa-92fbcf53809c.png

圖2:力科波形解析模板

通常情況下我們的波形包括幾部分(如圖3):頭字節(一些數字);WAVEDESC1(波形描述符,解析二進制數據的關鍵);DATA_ARRAY_1(其中存儲的就是我們采樣點的數據)。在我們使用上位機指令去讀取波形時,數據塊也就是block是指令中的可選參數,通常情況下解析出波形需要WAVEDESC1和DATA_ARRAY_1就足夠了。在這里的DATA_ARRAY_1里面的數據是示波器ADC采到的原始數據,我們稱它為raw data,它在這里只有大小沒有單位,可以把它理解成一個波形的形狀,通過raw data乘上相應的系數再加上相應的偏置才可以得到我們最終的電壓值。

504598e0-691d-11f0-a6aa-92fbcf53809c.png

圖3:數據block示意圖

上面提到了原始數據需要加工才能得到最終的電壓值,那么需要乘的系數和加的偏置從哪里獲得呢?就是需要從WAVEDESC1這個數據塊獲得。WAVEDESC1數據塊由346字節組成,每幾個字節就會代表一些信息,這些信息對我們解析波形有至關重要的作用,我們可以把WAVEDESC1理解成解析二進制數據的字典。

5057475c-691d-11f0-a6aa-92fbcf53809c.png

506575c0-691d-11f0-a6aa-92fbcf53809c.png

圖4:WAVEDESC1數據塊描述

可以看到WAVEDESC1中包含的內容非常的多。

506fd786-691d-11f0-a6aa-92fbcf53809c.png

圖5:WAVEDESC1數據塊內部結構(1)

507f6c00-691d-11f0-a6aa-92fbcf53809c.png

圖6:WAVEDESC1數據塊內部結構(2)

5090f1e6-691d-11f0-a6aa-92fbcf53809c.png

圖7:WAVEDESC1數據塊內部結構(3)

下面介紹一些在WAVEDESC1中比較重要的參數。0-15字節是他的一個標識符用ASCII編碼翻譯過來就是WAVEDESC,標志著WAVEDESC1數據塊的開始(如圖8)。

50a0fea6-691d-11f0-a6aa-92fbcf53809c.png

圖8:wavedesc標識符示意圖

第34字節開始的COMM_ORDER字段就代表著高位讀取還是低位讀取。第60字節開始的WAVE_ARRAY1字段讀取出的內容就是DATA_ARRAT1的字節長度也就是它的數據量。(如圖9)

50b35498-691d-11f0-a6aa-92fbcf53809c.png

圖9:字段截圖

第156字節開始的VERTICAL_GAIN字段和第160字節開始的VERTICAL_OFFSET字段就是我們需要加工raw data(DATA_ARRAY1)的比例系數和偏置。

在圖10中,也可以看到最終數據的計算方式VERTICAL_GAIN*data -VERTICAL_OFFSET。

50c1c532-691d-11f0-a6aa-92fbcf53809c.png

圖10:VERTICAL_GAIN和VERTICAL_OFFSET字段

總結

在處理二進制數據的時候,我們需要DATA_ARRAY1和WAVEDESC1兩個數據塊。在WAVEDESC1中最重要的就是VERTICAL_GAIN和VERTICAL_OFFSET。找到這些信息就可以解析出具體的電壓,連點成線恢復出我們采集的波形。

關于我們

特勵達力科(Teledyne Lecroy)是高端示波器、協議分析儀和其他測試儀器的專業制造商,可快速全面地驗證電子系統的性能和合規性,并進行復雜的調試分析。

1964 年成立以來,公司一直專注于將強大的工具整合到創新產品中,以提高“洞察時間”。更快的洞察時間使用戶能夠快速查找和修復復雜電子系統中的缺陷,從而顯著縮短產品的上市時間。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 示波器
    +關注

    關注

    113

    文章

    6726

    瀏覽量

    189635
  • adc
    adc
    +關注

    關注

    99

    文章

    6724

    瀏覽量

    549538
  • 二進制
    +關注

    關注

    2

    文章

    808

    瀏覽量

    42363
  • 數據處理
    +關注

    關注

    0

    文章

    628

    瀏覽量

    29312

原文標題:技術文章 | 二進制數據處理方法分享

文章出處:【微信號:美國力科TeledyneLeCroy,微信公眾號:美國力科TeledyneLeCroy】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    二進制數據處理

    目前有個關于二進制數據處理的問題:數據是雙字節,也就是16bit,最高1位為符號位,實際上數據表示的只有13位,也就是高三位不用來做數據表示
    發表于 04-22 10:02

    二進制相對調相(二進制差分調相2DPSK)的工作原理

    二進制相對調相(二進制差分調相2DPSK)的工作原理
    發表于 10-21 13:01 ?3336次閱讀
    <b class='flag-5'>二進制</b>相對調相(<b class='flag-5'>二進制</b>差分調相2DPSK)的工作原理

    二進制

    二進制   二進制與十進制的區別在于數碼的個數和進位規律有很大的區別,顧名思義,二進制的計數規律為逢二進一,是以2為基數的計數體制。10這
    發表于 04-06 23:48 ?8534次閱讀
    <b class='flag-5'>二進制</b>

    二進制編碼和二進制數據

    二進制編碼和二進制數據   二進制編碼是計算機內使用最多的碼制,它只使用兩個基本符號"0"和"1",并且通過由這兩個符號組成的
    發表于 10-13 16:22 ?5031次閱讀

    什么是二進制計數器,二進制計數器原理是什么?

    什么是二進制計數器,二進制計數器原理是什么? 計數器是數字系統中用得較多的基本邏輯器件。它不僅能記錄輸入時鐘脈沖的個數,還可以實現
    發表于 03-08 13:16 ?3.2w次閱讀

    二進制電平,什么是二進制電平

    二進制電平,什么是二進制電平 在二進制數字通信系統中,每個碼元或每個符號只能是“1”和“0”兩個狀態之一。若將每個碼元可能取的狀態增
    發表于 03-17 16:51 ?2520次閱讀

    二進制加法程序【匯編版】

    二進制加法程序【匯編版】二進制加法程序【匯編版】二進制加法程序【匯編版】二進制加法程序【匯編版】
    發表于 12-29 11:02 ?0次下載

    二進制加法程序【C語言版】

    二進制加法程序【C語言版】二進制加法程序【C語言版】二進制加法程序【C語言版】二進制加法程序【C語言版】
    發表于 12-29 11:03 ?0次下載

    二進制數據壓縮算法

    二進制數據壓縮算法二進制是計算技術中廣泛采用的一種數制。二進制數據是用0和1兩個數碼來表示的數。它的基數為2,進位規則是“逢
    的頭像 發表于 02-28 09:31 ?2.1w次閱讀

    二進制數據及取值范圍的計算方法

    本文介紹二進制數據的相關知識,如定義、取值范圍計算、轉換為十進制方法以及一些常見位數的二進制數據
    的頭像 發表于 11-08 15:48 ?3665次閱讀
    <b class='flag-5'>二進制</b><b class='flag-5'>數據</b>及取值范圍的計算<b class='flag-5'>方法</b>

    labview二進制字符串轉數值

    LabVIEW是一種圖形化編程環境,用于實時數據采集、信號處理以及自動化控制等領域。它采取了數據流編程的思想,用戶可以通過將各種功能模塊進行連接,輕松搭建起復雜的系統。 在LabVIEW中,
    的頭像 發表于 01-05 16:20 ?3802次閱讀

    10進制轉換為二進制的算法

    10進制轉換為二進制是計算機領域中非常重要的一個問題。在計算機中,所有的數據都是以二進制形式進行存儲和處理的。因此,我們常常需要將10
    的頭像 發表于 01-11 09:14 ?3747次閱讀

    如何實現二進制和BCD碼數據的相互轉變?

    如何實現二進制和BCD碼數據的相互轉變? 二進制碼是將十進制數字表示為二進制數和十進制數的一種表
    的頭像 發表于 02-18 14:51 ?5347次閱讀

    二進制處理中的一些技巧

    二進制和十進制處理中,有時候一些小技巧是很有用的。 1、把十進制數轉換成二進制數 (1)在MATLAB中有一個函數dec2b
    的頭像 發表于 07-05 11:51 ?996次閱讀

    二進制編碼器工作原理 如何選擇二進制編碼器

    二進制編碼器是一種數字電路,它將輸入的二進制代碼轉換為對應的輸出信號。在數字系統中,編碼器用于將數據從一種形式轉換為另一種形式,以便于處理和傳輸。
    的頭像 發表于 11-06 09:44 ?2581次閱讀