999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

分立器件測試系統軟件平臺的設計及實現

2011-09-12 03:22:24羅猛詹惠琴古軍
電子測試 2011年11期
關鍵詞:系統

羅猛,詹惠琴,古軍

(電子科技大學自動化工程學院,四川成都 611731)

0 引言

在早期的測試系統中,軟件平臺一般只提供文本編程方式給用戶使用,其測試程序是以測試流程為依據從上至下一步一步排下來的,所有與測試相關的參數、程控指令、測試結果等都內置于一個文本測試軟件中, 這種編程具有面向過程的編程規范,包含特定的語法規則,靈活性很強[1]。但是這種方式有其不足的一面,其一是一般測試程序編程過程較為復雜,這就要求測試人員必須具有較深的編程功底;其二是這種方式可維護性差,不適于進行快速高效的現代自動化測試。而本文提出的基于圖形化編程語言的軟件平臺為測試工程師提供一個靈活簡便的可編程環境。實現了測試參數和測試程序的分離,開發人員更加專注于測試方法本身,而不用花太多時間在構建測試系統所需的測試流程和控制策略上[2]。

1 軟件平臺的總體架構

ATS是整個測試系統的核心和關鍵,它是聯系測試資源和被測對象的軟橋梁,其體系結構的好壞直接關系到整個自動測試系統的性能[3]。硬件資源自檢與校準、軟件賬號管理、流程圖測試程序自動轉換、測試指標報表生成及打印等功能都與軟件系統的設計息息相關。本著層次化,組件化,標準化的要求,同時為了滿足測試程序的可移植性及儀器的互換性以及測試系統軟件結構的開放性、可擴充與裁減性等要求[4],我們將分立器件測試系統軟件總共分為3個層次,包括ARM程序層,USB驅動層和上位機軟件層,圖1所示為系統軟件平臺總體架構框圖。每個層的具體功能如下:

ARM程序層:主要包括各個功能板和測試板的驅動程序,以及實現ARM內核對各個功能板進行控制的執行程序。

USB驅動層:主要是USB的接口驅動函數,完成下層ARM與上位機軟件層的通信,進行數據的編排和解析,是整個測試系統軟件的紐帶。

上位機軟件層:是整個軟件系統的最上層,也是最直接與用戶接觸的層次。用戶需要設置和保存的所有個人信息、群組信息、測試工程及測試項目信息都要通過該層來完成,同時在硬件通信良好的情況下接收并在顯示屏上顯示測試儀的測試結果數據供用戶查看分析。

圖1 系統軟件平臺總體架構框圖

2 上位機軟件的設計

2.1 開發環境的選擇

C#是由Microsoft為.NET Framework量身訂做的程序設計語言。C#語言是由C/C++演變而來的,除了擁有C/C++的強大功能外,還具有Visual Basic簡易使用的特性,也是一種面向對象設計語言。它繼承了C++中類得繼承、封裝、多態、重載等特性,另外它現代、簡單、完全面向對象和類型安全等新特性,從而使我們開發出來的測試系統軟件具有良好的用戶體驗,優良的兼容性,較高的靈活性和可擴展性。基于系統開發的要求和C#語言的特點,我們最終選擇了Visual Studio 2008作為上位機軟件的開發工具。

2.2 上位機軟件的層次結構

上位機軟件層次結構如圖2所示。其中驅動層包括USB驅動以及hp萬用表驅動,其中USB通信API和hp萬用表通信API是通過動態鏈接庫(dll)形式封裝,向中間層提供通信接口。中間層包括.net平臺、微軟控件以及第三方控件,這一層起到承上啟下的作用。應用層即儀器界面,是整個程序框架的頂層。

圖2 上位機軟件層次結構圖

3 USB驅動的設計

本測試系統中USB中間層主要負責上位機與下層ARM的數據信息交換,是上位計算機與分立器件測試系統連接的紐帶。USB驅動程序主要完成兩個方面的工作:一是通過USB驅動向下層ARM發送上位機的設置數據和控制信息;二是接收下層ARM發回的測試結果數據。驅動程序采用VC++6.0進行開發,以動態鏈接庫的形式進行調用。

3.1 USB發送數據

當在界面上點擊“下載”按鈕后,上位機程序會將包含有數據類型、數據字節長度和數據信息或者控制命令信息的字符串按照規定的數據格式通過USB處理向下發送。圖3所示為USB數據的下載流程。

圖3 USB數據下載流程圖

3.2 USB接收數據

當下位機完成一個器件的完整測試后會及時將測試結果數據通過USB中間層傳輸到上位機軟件中,但是上位機軟件并不能直接接收下位機送回的測試結果數據,而需要經過USB中間層的處理。所以當USB接收到下層ARM發回的測試結果數據后,USB驅動層要對測試的結果數據進行處理,調整結果數據的格式,并將包含有數據類型信息和數據長度信息的測試結果數據以字符串的形式按照某一協議格式送回到上位機軟件中,供上位機軟件調用。圖4所示為USB數據上傳的流程。

圖4 USB上傳數據流程圖

3.3 USB驅動在系統中的調用

在分立器件測試系統中需要用到的USB動態鏈接庫函數的調用方法如下:

(a)[DllImport("2440usbDLL.dll", EntryPoint ="UsbTransmit", CallingConvention = CallingConvention.StdCall)]

public static extern void UsbTransmit(IntPtr hwnd); 該函數調用主要實現的功能是下載

ARM程序編譯生成的BIN文件。BIN文件是將系統的ARM程序編譯生成的二進制文件,只有將BIN首先下載到ARM中整個系統才能開始工作,否則后續其他一切工作都不能完成。

(b) [DllImport("2440usbDLL.dll", EntryPoint ="strpc2arm3", CharSet = CharSet.Ansi, CallingConvention=Callin gConvention.StdCall)]

public static extern int strpc2arm3(string dataString);

該函數主要實現的功能是上位機工程設置參數的下載。參數dataString表示要下載的工程設置參數。

(c)[DllImport("2440usbDLL.dll", EntryPoint = "arm2pc_Data", CharSet = CharSet.Ansi, CallingConvention=CallingConve ntion.StdCall)]

public static extern string arm2pc_Data();

該函數主要實現的功能是接收由ARM傳回的測試結果數據。

另外,本系統中USB動態鏈接庫的編寫借助了部分MFC類庫中的函數,所以在應用本動態庫時,需要同時添加四個MFC的動態庫文件:MFCD42D.DLL、MFC42D.DLL、MFCO42D.DLL和MSVCRTD.DLL。

4 下位機軟件設計

4.1 下位機arm程序的編譯方法

基于GCC的諸多優點在設計初期,我們曾經考慮過使用GCC來編譯下位機arm程序,但使用GCC需要編寫makefile文件搭建編譯平臺,這不是一件容易的事情。但后來發現ADS1.2 IDE提供了此問題的解決方案,ADS1.2 IDE提供了一個菜單項可以把ADS1.2工程轉化為一個和工程對等的.xml文件,然后調用ADS1.2提供的mcp2make工具將.xml文件轉化為makefile文件。這使得設計下位機軟件時可以用IDE界面搭建編譯環境,設置編譯信息,規避了編寫makefile文件的諸多細節問題。得到了makefile文件后,我們就可以使用VC++6.0提供的nmake工具調用makefile文件編譯整

個下位機工程。在makefile文件里分別調用ADS1.2提供armcc編譯器以及armlink連接器最終把整個下位機工程編譯成一個.axf文件;最后使用“fromelf -bin –output xxx.bin xxx.axf”命令將.axf文件轉化為.bin文件下載到下位機,圖5為測試程序自動轉換及編譯流程圖。

圖5 測試程序轉換及編譯流程圖

4.2 下位機軟件體系設計

4.2.1 下位機軟件體系結構

下位機軟件系統是運行在ARM處理器上的,直接與測試系統硬件進行接觸,控制各個功能板和測試板當前所要進行的工作,是測試系統硬件的靈魂。下位機軟件結構體系如圖6所示。

圖6 下位機軟件體系結構圖

4.2.2 下位機軟件的功能結構

下位機功能結構如圖7所示,分為工程師模式、單板模式、生產者模式。這3個模式用來配合上位機軟件的工程師模式和生產者模式。

圖7 下位機軟件功能結構

5 應用和結論

本文介紹的分立器件測試系統已經投入使用。并針對晶體管、二極管等器件進行了大量的測試。圖8所示為在軟件平臺下,針對NPN型三極管8050進行的幾項指標測試返回的測試結果截圖。看以看出測試結果符合NPN型三極管的特性參數。驗證了分立器件測試系統軟件平臺的功能。

[1]戴春翟,李曉靜,張侃諭.分立器件測試系統通用測試軟件的研究與設計[J].電子測量技術,2010,33(1):133-135.

[2]王勇.雷達通用測試軟件結構設計與實現[J].科技信息,2007(18):1-2.

[3]李寶安,李行善.自動測試系統(ATS)軟件的發展及關鍵技術[J ].測控技術,2003,22(1) :124.

[4]沈震.通用ATE軟件平臺的研究與實現[D].合肥:中國科學技術大學,2005 :10-11.

[5]張在得,曹乃森,蔣曉松.ATE通用性設計與實現[J].計算機測量與控制,2003,11(11):830-832.

[6]GEORGE SHEPHERD.Visual C++.net 技術內幕[M].6版.北京:清華大學出版社,2004.

[7]劉銳寧,梁水,宋坤.Visual C++開發技術大全[M].2版.北京:人民郵電出版社,2009:651-656.

[8]孫鑫,余安萍.VC++深入詳解[M].北京:電子工業出版社,2009.

猜你喜歡
系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
基于UG的發射箱自動化虛擬裝配系統開發
半沸制皂系統(下)
FAO系統特有功能分析及互聯互通探討
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
一德系統 德行天下
PLC在多段調速系統中的應用
主站蜘蛛池模板: 日韩一级二级三级| 亚洲成人高清在线观看| 99久久99这里只有免费的精品| 国产美女主播一级成人毛片| 激情视频综合网| 久操线在视频在线观看| 综1合AV在线播放| 国产农村妇女精品一二区| 久久久久人妻精品一区三寸蜜桃| 亚洲资源站av无码网址| 麻豆AV网站免费进入| 国产免费精彩视频| 在线中文字幕网| 精品视频在线观看你懂的一区| 青青操国产视频| 青青青国产视频| 国产日韩欧美视频| 丰满的少妇人妻无码区| 视频一区亚洲| 亚洲有码在线播放| 国产在线无码av完整版在线观看| 99久久国产自偷自偷免费一区| 亚洲精品无码在线播放网站| 自拍中文字幕| 99久视频| 久久国产精品娇妻素人| 青青草原偷拍视频| 57pao国产成视频免费播放| 精品人妻一区二区三区蜜桃AⅤ| 久久久黄色片| 国产精彩视频在线观看| 国产精品白浆无码流出在线看| 天天操精品| 欧美国产在线一区| 亚洲成人一区在线| 亚洲日本中文字幕乱码中文| 久久亚洲国产一区二区| 91网站国产| 欧美中文字幕第一页线路一| 综合色88| 在线精品亚洲国产| 国内精品自在自线视频香蕉| 亚洲视频免费在线| 国产高清在线观看| 91美女在线| 99re这里只有国产中文精品国产精品 | 久久久波多野结衣av一区二区| 伊人久久久大香线蕉综合直播| 国产毛片不卡| 国产自产视频一区二区三区| 国产精品成人一区二区不卡 | 日韩天堂视频| 国产精品福利一区二区久久| 久久香蕉国产线| 欧美成人第一页| 五月婷婷综合在线视频| 国产黄视频网站| 中文字幕调教一区二区视频| 91九色国产porny| 亚洲性视频网站| 欧美亚洲香蕉| 美女免费黄网站| 一级毛片免费观看久| 久久综合九色综合97网| 韩国福利一区| a毛片在线免费观看| 天天色综网| 免费一级全黄少妇性色生活片| 亚洲欧美成人影院| 亚洲精品不卡午夜精品| 久久亚洲日本不卡一区二区| 欧美中文字幕第一页线路一| 一本久道热中字伊人| 天堂av综合网| 重口调教一区二区视频| 色妞www精品视频一级下载| 理论片一区| 国产色婷婷| 亚洲天堂久久| 国产精品亚洲αv天堂无码| 亚洲欧洲国产成人综合不卡| 亚洲综合日韩精品|