亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種scpi命令定義、解析、執(zhí)行和測(cè)試的方法

文檔序號(hào):9506033閱讀:2025來(lái)源:國(guó)知局
一種scpi命令定義、解析、執(zhí)行和測(cè)試的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及程序控制領(lǐng)域,特別涉及一種SCPI命令定義、解析、執(zhí)行和測(cè)試的方法。
【背景技術(shù)】
[0002]SCPI (Standard Commands for Programmable Instruments)作為智能儀器程控命令的業(yè)界標(biāo)準(zhǔn),已經(jīng)得到廣泛的應(yīng)用。
[0003]由于SCPI規(guī)范和IEEE488規(guī)范的專(zhuān)業(yè)性較強(qiáng),且不同儀器的命令和參數(shù)等方面存在較大差異。目前,常規(guī)的SCPI解析器可實(shí)現(xiàn)SCPI命令的解析,SCPI命令樹(shù)的創(chuàng)建需要另一個(gè)單獨(dú)的工具,尚沒(méi)有一套完整的解決方案。
[0004]上述方案存在一定的局限性:
[0005](1)、功能單一,可擴(kuò)展性不強(qiáng);
[0006](2)、SCPI命令的解析與SCPI命令樹(shù)的生成相互獨(dú)立,這給程控命令的后續(xù)維護(hù)和版本管理帶來(lái)不便;
[0007](3)、缺乏SCPI命令的定義、解析、執(zhí)行到測(cè)試的完整的解決方案,往往造成中間環(huán)節(jié)脫節(jié);
[0008](4)、缺乏SCPI命令的自動(dòng)測(cè)試和全面驗(yàn)證,為儀器軟件的開(kāi)發(fā)埋下了諸多隱患。

【發(fā)明內(nèi)容】

[0009]為解決上述現(xiàn)有技術(shù)的不足,本發(fā)明提出一種SCPI命令定義、解析、執(zhí)行和測(cè)試的方法。
[0010]本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的:
[0011]—種SCPI命令定義、解析、執(zhí)行和測(cè)試的方法,包括以下步驟:
[0012]步驟(1)、設(shè)計(jì)SCPI命令定義規(guī)則,定義命令的命令碼、主體、參數(shù)、命令選項(xiàng);
[0013]步驟(2)、預(yù)處理規(guī)則文件;
[0014]步驟(3)、根據(jù)SCPI數(shù)組,在內(nèi)存中動(dòng)態(tài)創(chuàng)建經(jīng)過(guò)排序的命令樹(shù);
[0015]步驟(4)、將用戶(hù)輸入的命令解析成內(nèi)部可識(shí)別的命令碼,并根據(jù)命令碼執(zhí)行預(yù)定義的命令函數(shù),對(duì)于無(wú)效命令,給出符合SCPI規(guī)范的錯(cuò)誤碼和錯(cuò)誤信息,包括:預(yù)處理、命令解析、命令執(zhí)行;
[0016]步驟(5)、將規(guī)則文件定義的命令分解成相應(yīng)形式,對(duì)每種形式進(jìn)行解析,包括創(chuàng)建SCPI數(shù)組、創(chuàng)建命令樹(shù)、解析執(zhí)行。
[0017]可選地,所述步驟(1)中,命令碼是唯一標(biāo)識(shí)命令的整數(shù),按命令的升序從1開(kāi)始遞增;
[0018]命令主體由以分號(hào)隔開(kāi)的命令關(guān)鍵字組成;對(duì)于每個(gè)關(guān)鍵字,定義其長(zhǎng)格式規(guī)范、短格式規(guī)范、數(shù)值后綴規(guī)范、缺省規(guī)范、等價(jià)規(guī)范;
[0019]參數(shù)定義命令的參數(shù)清單,包括參數(shù)類(lèi)型、參數(shù)單位、參數(shù)范圍;
[0020]命令選項(xiàng)包括命令的操作選項(xiàng)、用戶(hù)選項(xiàng)。
[0021]可選地,所述步驟(2)中,預(yù)處理規(guī)則文件具體包括以下步驟:
[0022]步驟(21)檢查規(guī)則是否有效,無(wú)效時(shí)定位錯(cuò)誤位置,并給出錯(cuò)誤信息;
[0023]步驟(22)如果規(guī)則文件有效,則產(chǎn)生加密后的SCPI格式化命令數(shù)組。
[0024]可選地,所述步驟(3)具體包括:預(yù)處理、規(guī)則解析與處理、命令樹(shù)的管理。
[0025]預(yù)處理:對(duì)SCPI數(shù)組進(jìn)行解密操作;
[0026]規(guī)則解析與處理:包括命令解析、參數(shù)解析與單位解析;
[0027]命令樹(shù)的管理:包括創(chuàng)建、插入、刪除、拷貝和查詢(xún)操作;其中,
[0028]創(chuàng)建操作:創(chuàng)建新的命令樹(shù)節(jié)點(diǎn),將新命令樹(shù)節(jié)點(diǎn)信息存儲(chǔ)到關(guān)鍵字結(jié)構(gòu)數(shù)組中;
[0029]插入操作:在指定位置插入新的節(jié)點(diǎn),插入位置是通過(guò)查詢(xún)命令樹(shù)獲??;
[0030]刪除操作:刪除指定節(jié)點(diǎn)及其子節(jié)點(diǎn);
[0031]拷貝操作:拷貝一個(gè)節(jié)點(diǎn)的所有信息到另一個(gè)節(jié)點(diǎn),節(jié)點(diǎn)的短格式首先加入命令樹(shù),長(zhǎng)格式直接拷貝短格式節(jié)點(diǎn);
[0032]查詢(xún)操作:從命令樹(shù)的指定位置查找用戶(hù)指定節(jié)點(diǎn),如果存在,則返回找到的節(jié)點(diǎn),否則返回查找前的節(jié)點(diǎn)。
[0033]可選地,所述步驟(4)中,
[0034]預(yù)處理:對(duì)命令單元進(jìn)行詞法分析,將滿(mǎn)足SCPI規(guī)范的命令單元存入命令緩沖區(qū),對(duì)于不滿(mǎn)足規(guī)范的命令單元進(jìn)行錯(cuò)誤處理;
[0035]命令解析:執(zhí)行命令的解析,將解析結(jié)果存入解析結(jié)果緩沖區(qū);
[0036]命令執(zhí)行:根據(jù)命令解析產(chǎn)生的解析結(jié)果,執(zhí)行預(yù)定義的命令函數(shù)。
[0037]可選地,所述步驟(5)具體包括:
[0038]創(chuàng)建SCPI數(shù)組:在內(nèi)存中動(dòng)態(tài)創(chuàng)建格式化的命令數(shù)組,用于創(chuàng)建命令樹(shù);
[0039]創(chuàng)建命令樹(shù):在內(nèi)存中動(dòng)態(tài)創(chuàng)建命令樹(shù);
[0040]解析執(zhí)行:對(duì)待測(cè)試的命令進(jìn)行解析,統(tǒng)計(jì)解析用時(shí)。
[0041 ] 可選地,所述步驟(6)具體包括:
[0042]生成器產(chǎn)生框架代碼的初始源代碼,該代碼可直接與儀器軟件一起編譯;
[0043]通過(guò)SCPI庫(kù)封裝的程控命令函數(shù)指針設(shè)置函數(shù)將函數(shù)列表傳給SCPI庫(kù),SCPI庫(kù)在完成用戶(hù)命令的解析后,直接根據(jù)命令碼,索引該列表,并執(zhí)行;
[0044]通過(guò)SCPI庫(kù)封裝的SCPI庫(kù)裝載函數(shù)將SCPI數(shù)組傳給SCPI庫(kù),SCPI庫(kù)進(jìn)行用戶(hù)命令樹(shù)的動(dòng)態(tài)創(chuàng)建;
[0045]儀器編程人員將接收到的命令信息存入命令接收緩沖區(qū),調(diào)用執(zhí)行框架中的函數(shù)進(jìn)行解析執(zhí)行。
[0046]本發(fā)明的有益效果是:
[0047](1)、操作簡(jiǎn)單,實(shí)現(xiàn)了一鍵式生成SCPI命令的完整解決方案,簡(jiǎn)化了儀器的程控軟件設(shè)計(jì)流程,提高了儀器軟件的開(kāi)發(fā)效率;
[0048](2)、通過(guò)制定一整套SCPI命令規(guī)則,可以定義不同風(fēng)格和需求的SCPI命令,滿(mǎn)足不同智能儀器的需要;
[0049](3)、通過(guò)將SCPI命令樹(shù)的創(chuàng)建、命令的解析、測(cè)試和執(zhí)行與儀器軟件高度集成,降低了用戶(hù)的使用門(mén)檻;
[0050](4)、SCPI命令樹(shù)的創(chuàng)建和解析是獨(dú)立于儀器軟件的,可應(yīng)用于不同操作系統(tǒng)、不同編程環(huán)境的儀器中,具有很強(qiáng)的可移植性、可擴(kuò)展性和可維護(hù)性;
[0051](5)、通過(guò)SCPI命令的測(cè)試與驗(yàn)證,保證了 SCPI命令的完整解決方案的功能和性能可靠。
【附圖說(shuō)明】
[0052]為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0053]圖1為本發(fā)明一種SCPI命令定義、解析、執(zhí)行和測(cè)試的方法的流程圖。
【具體實(shí)施方式】
[0054]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0055]本發(fā)明設(shè)計(jì)了一種SCPI命令定義、解析、執(zhí)行和測(cè)試的完整解決方案,包括SCPI命令定義、SCPI命令樹(shù)的創(chuàng)建、SCPI命令解析與執(zhí)行、SCPI命令自動(dòng)測(cè)試、SCPI執(zhí)行框架自動(dòng)產(chǎn)生。
[0056]下面結(jié)合附圖對(duì)本發(fā)明的方法進(jìn)行詳細(xì)說(shuō)明。
[0057]如圖1所示,本發(fā)明的SCPI命令定義、解析、執(zhí)行和測(cè)試的方法包括以下步驟:
[0058]步驟(1)、設(shè)計(jì)SCPI命令定義規(guī)則,定義命令的命令碼、主體、參數(shù)、命令選項(xiàng)等。
[0059]其中,命令碼是唯一標(biāo)識(shí)命令的整數(shù),按命令的升序從1開(kāi)始遞增。
[0060]命令主體由以分號(hào)隔開(kāi)的命令關(guān)鍵字組成。對(duì)于每個(gè)關(guān)鍵字,定義其長(zhǎng)格式規(guī)范、短格式規(guī)范、數(shù)值后綴規(guī)范、缺省規(guī)范、等價(jià)規(guī)范。下面對(duì)各種規(guī)范進(jìn)行詳細(xì)說(shuō)明:
[0061]長(zhǎng)格式規(guī)范:以字母開(kāi)頭,大小寫(xiě)混合表示,可含下劃線(xiàn)。長(zhǎng)型助記符由一個(gè)單詞或短語(yǔ)構(gòu)成。如果是單詞,則整個(gè)單詞構(gòu)成助記符;如果是短語(yǔ),則前面單詞的第一個(gè)字符和最后一個(gè)單詞構(gòu)成助記符。
[0062]短格式規(guī)范:是長(zhǎng)型助記符的縮寫(xiě),用大寫(xiě)字母或下劃線(xiàn)表示,不超過(guò)4個(gè)字符。通常為長(zhǎng)格式的前4個(gè)字符;長(zhǎng)格式不足4個(gè)字符時(shí),全部大寫(xiě);例外情況是長(zhǎng)格式超過(guò)4個(gè)字符,且第4個(gè)字符為元音,則短格式為前3個(gè)字符。
[0063]數(shù)值后綴規(guī)范:“[d]nl0-nll|n20-n22|...”,其中,d,nlO,nil,n20,n22 等代表整數(shù)值;后綴的范圍為0到255,遞增排列,不得重復(fù);“ [d] ”表示缺省后綴為d 表示相鄰后綴是連續(xù)的;“ | ”表示分段后綴區(qū)間。
[0064]缺省規(guī)范和等價(jià)規(guī)范:缺省關(guān)鍵字用“[]”表示,等價(jià)關(guān)鍵字用“ | ”隔開(kāi),如[:SENSe]:BANDwidth|BWIDth,第 1 個(gè)關(guān)鍵字可省略,BANDwidth 和 BWIDth 等價(jià)。
[0065]參數(shù)定義命令的參數(shù)清單,包括參數(shù)類(lèi)型,參數(shù)單位,參數(shù)范圍。參數(shù)類(lèi)型包括:整型、浮點(diǎn)型、字符型、字符串型、表達(dá)式、數(shù)據(jù)塊等;除了 IEEE488.2規(guī)定的標(biāo)準(zhǔn)單位外,還可以定義用戶(hù)特有單位。參數(shù)范圍包括參數(shù)的最小值、最大值、缺省值、步進(jìn)值。
[0066]命令選項(xiàng)包括命令的操作選項(xiàng)、用戶(hù)選項(xiàng)。操作選項(xiàng)規(guī)定命令的查詢(xún)和設(shè)置屬性,包括僅設(shè)置、僅查詢(xún)、可設(shè)置可查詢(xún);用戶(hù)選項(xiàng)規(guī)定命令是否對(duì)普通用戶(hù)開(kāi)放。
[0067]步驟⑵、規(guī)則文件的預(yù)處理,具體包括以下步驟:
[0068]步驟(21)檢查規(guī)則是否有效,無(wú)效時(shí)定位錯(cuò)誤位置,并
當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1