亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于平板電腦STM32的多波長自動(dòng)旋光儀軟件設(shè)計(jì)

        2014-08-07 23:13:58陳若雷
        光學(xué)儀器 2014年3期

        文章編號(hào): 10055630(2014)03024706

        收稿日期: 20131219

        作者簡介: 陳若雷(1958),男,高級(jí)工程師,主要從事精密科學(xué)儀器的軟件編制方面的研究。

        摘要: 旋光度是反映物質(zhì)旋光性質(zhì)的指標(biāo),通過測定旋光度,可分析物質(zhì)的濃度、含量、純度等。SGW5多波長自動(dòng)旋光儀利用平面偏振光和法拉弟磁光效應(yīng)測量旋光物質(zhì)在特定檢測波長和溫度下的旋光度。為了滿足SGW5的功能需要,采用了帶WINCE嵌入式系統(tǒng)的平板電腦和STM32單片機(jī)相結(jié)合的硬件系統(tǒng),并對(duì)該系統(tǒng)進(jìn)行軟件設(shè)計(jì)。該軟件設(shè)計(jì)在幾個(gè)方面有一定特點(diǎn),達(dá)到了儀器的性能指標(biāo)要求。

        關(guān)鍵詞: WINCE; STM32; 旋光度; 多波長

        中圖分類號(hào): TH 744文獻(xiàn)標(biāo)志碼: Adoi: 10.3969/j.issn.10055630.2014.03.013

        Software design for multiwavelength automatic polarimeter

        based on a tablet PC and STM32

        CHEN Ruolei

        (Shanghai Instrument Physical Optics Instrument Co., Ltd., Shanghai 200233, China)

        Abstract: Optical rotation is the reflected material optical properties. The substance concentration, content and purity can be analyzed through the determination of optical rotation. SGW5 multiwavelength automatic polarimeter uses a plane polarized light wavelength and measuring optical rotation Faraday magnetooptical effect materials in a particular rotation of the test wavelength and temperature. In order to meet the need of SGW5 function, it adopts hardware system with WINCE embedded system flat computer and STM32 microcontroller combination, and software design of the system. This software design has certain characteristic in several aspects, and achieved the performance requirements of the instrument.

        Key words: WINCE; STM32; optical rotation; multiwavelength

        引言旋光儀是測定物質(zhì)旋光度的儀器,通過旋光度的測定,可分析物質(zhì)的濃度、含量、純度等,廣泛應(yīng)用于制糖、制藥、石油、食品、化工等工業(yè)部門及有關(guān)高等院校和科研單位。SGW5多波長自動(dòng)旋光儀利用平面偏振光和法拉弟磁光效應(yīng)測量旋光物質(zhì)在特定檢測波長和溫度下的旋光度。隨著技術(shù)的發(fā)展和人們對(duì)旋光儀功能、性能要求的不斷提高,研制了SGW5多波長自動(dòng)旋光儀。為了滿足多波長自動(dòng)旋光儀的設(shè)計(jì)要求,SGW5采用了帶WINCE嵌入式系統(tǒng)平板電腦和STM32單片機(jī)結(jié)合控制儀器。本文主要探討基于WINCE嵌入式系統(tǒng)和STM32單片機(jī)的軟件設(shè)計(jì)。1測量原理光學(xué)零位原理:若使自然光依次經(jīng)過理想起偏器和檢偏器,以起偏器和檢偏器的通光方向正交時(shí)作為零位,檢偏器偏離正交位置的角度與入射檢偏器的光強(qiáng)I之間的關(guān)系,由馬呂斯定律可表示為I=Kcos2α(1)當(dāng)法拉弟線圈兩端加以頻率為f的正弦交變電壓u=Usin2πft時(shí),按照法拉弟磁光效應(yīng),通過的平面偏振光振動(dòng)平面將迭加一個(gè)附加轉(zhuǎn)動(dòng)α=βsin2πft(2)其中β為物質(zhì)的磁光系數(shù)。儀器上電后,自動(dòng)停在正交位置上。若有樣品放進(jìn)試樣室則檢偏器相對(duì)于起偏器偏離正交位置,出現(xiàn)頻率為f的交變光強(qiáng)信號(hào),相應(yīng)地有頻率f的電信號(hào),此電信號(hào)經(jīng)過選頻放大,功率放大,驅(qū)動(dòng)伺服電機(jī)通過機(jī)械傳動(dòng)帶動(dòng)檢偏器轉(zhuǎn)動(dòng),使檢偏器向正交位置趨近直到檢偏器到達(dá)正交位置,頻率為f的電信號(hào)消失,伺服電機(jī)停轉(zhuǎn)。角度檢測器檢測出檢偏器轉(zhuǎn)過的α角度數(shù),就得到了待測樣品在特定的檢測波長和溫度下的旋光度[1] 。根據(jù)上述測量原理進(jìn)行旋光度測定的SGW5多波長自動(dòng)旋光儀的儀器結(jié)構(gòu)總框圖如圖1所示。光學(xué)儀器第36卷

        第3期陳若雷:基于平板電腦和STM32的多波長自動(dòng)旋光儀軟件設(shè)計(jì)

        圖1SGW5結(jié)構(gòu)總框圖

        Fig.1General diagram of SGW5 Structure

        2基于儀器控制系統(tǒng)的軟件設(shè)計(jì)

        2.1SGW5軟件的總體設(shè)計(jì)根據(jù)多波長自動(dòng)旋光儀多種輸入輸出的功能要求和實(shí)時(shí)性很強(qiáng)的性能需求,SGW5采用了帶WINCE嵌入式系統(tǒng)的平板電腦和STM32單片機(jī)相結(jié)合的硬件系統(tǒng)(SGW5硬件系統(tǒng)見圖2),并對(duì)該系統(tǒng)進(jìn)行軟件設(shè)計(jì)。SGW5軟件總體上分平板電腦和STM32兩部分設(shè)計(jì),平板電腦程序框圖見圖3,STM32程序框圖見圖4,圖5是平板電腦的主操作界面。從這些圖中可以看到:平板電腦的功能主要是輸入(按鍵響應(yīng))和輸出(顯示數(shù)據(jù)、保存數(shù)據(jù)、導(dǎo)出文件等)。輸入響應(yīng)可分兩個(gè)方面:(1)響應(yīng)觸摸屏按鍵,然后向STM32發(fā)控制命令。主要響應(yīng)“復(fù)測”、“清零”、“溫控”及“測量參數(shù)”和“校正參數(shù)”頁面上的按鍵操作。(2)響應(yīng)觸摸屏按鍵,然后執(zhí)行操圖2硬件系統(tǒng)框圖

        Fig.2Block diagram of hardware system作。完成“報(bào)告”、“記錄”、“信息”及“幫助”頁面上的功能。包括數(shù)據(jù)記錄的儲(chǔ)存、瀏覽和刪除、多種格式文件的導(dǎo)出、中英文信息的手寫和軟鍵盤輸入、與PC機(jī)的通信等,并且在完成這些功能時(shí),不影響測量的正常進(jìn)行。平板電腦的程序設(shè)計(jì)滿足了用戶的功能要求。STM32程序完成的是實(shí)時(shí)性要求很高的脈沖記數(shù)、溫度控制、溫度讀取等操作,這直接決定了SGW5的示值誤差、重復(fù)性、控溫準(zhǔn)確度等性能指標(biāo)的實(shí)現(xiàn)。本文主要討論STM32、平板電腦和PC機(jī)的軟件設(shè)計(jì)。

        圖3平板電腦程序框圖

        Fig.3Block diagram of flat computer圖4STM32程序框圖

        Fig.4Block diagram of STM32

        2.2SGW5幾個(gè)有特點(diǎn)的軟件設(shè)計(jì)

        2.2.1STM32軟件設(shè)計(jì)STM32軟件設(shè)計(jì)的關(guān)鍵是:(1)脈沖計(jì)數(shù)不能發(fā)生漏記或多記的情況,這是儀器測量是否可靠的基圖5平板電腦主頁面

        Fig.5Main operating page of flat computer礎(chǔ)。因此,STM32的中斷資源必須用于脈沖計(jì)數(shù),其他的功能不能和脈沖計(jì)數(shù)爭資源。(2)盡量簡化儀器結(jié)構(gòu)系統(tǒng)。DS18B20溫度傳感器是單總線器件,具有體積小,硬件開銷低,抗干擾能力強(qiáng),精度高的優(yōu)點(diǎn)。但時(shí)序要求高,使用DS18B20溫度測量時(shí),一般關(guān)閉中斷系統(tǒng),將單片機(jī)的所用資源交給它,直到測量完成后才開中斷系統(tǒng)允許處理其它事情。由于SGW5有脈沖計(jì)數(shù)、控溫過程、RS232實(shí)時(shí)通信等功能,實(shí)時(shí)性要求都非常高,不可能在DS18B20讀溫度期間不工作,所以只能采用非中斷方式讀取DS18B20值完成了功能。采用這種方式的關(guān)鍵在于延時(shí)程序和DS18B20初始化程序的編制,SGW5的程序采用非中斷方式成功地讀取了多種型號(hào)的DS18B20。圖6步進(jìn)電機(jī)控制程序框圖

        Fig.6Block diagram of

        step motor controlSGW5是多波長旋光儀,和其他旋光儀相比增加了濾光片切換功能。六種波長的濾光片放置在一個(gè)盤上,在步進(jìn)電機(jī)帶動(dòng)下自動(dòng)切換濾光片即切換波長。這種切換裝置的特點(diǎn)是:(1)機(jī)械機(jī)構(gòu)簡便,僅有一個(gè)光電傳感器通過狹縫定位。(2)濾光片盤慣性較大。實(shí)際上,這也是波長切換軟件設(shè)計(jì)的兩個(gè)關(guān)鍵點(diǎn),程序框圖見圖6[23] 。通過對(duì)光電傳感器的反復(fù)定位及步進(jìn)電機(jī)不同轉(zhuǎn)速、不同停止時(shí)間的控制,程序正確無誤地完成了濾光片切換功能。

        2.2.2平板電腦軟件設(shè)計(jì)平板電腦的廠家提供了組態(tài)軟件,但該組態(tài)軟件有兩個(gè)不足:(1)數(shù)據(jù)類型中沒有數(shù)組;(2)用組態(tài)軟件不能保存數(shù)據(jù)。因此該組態(tài)軟件的功能顯然不能滿足儀器設(shè)計(jì)要求,決定采用NCF編制平板電腦的程序。平板電腦軟件設(shè)計(jì)的關(guān)鍵是顯示和鍵盤響應(yīng)要快速無誤,程序調(diào)試要方便。STM32每20 ms將計(jì)數(shù)數(shù)據(jù)傳送給平板電腦顯示一次,因此,利用文本框顯示數(shù)據(jù)在WINCE系統(tǒng)下會(huì)有一種跳躍感。用圖片框顯示數(shù)據(jù)可以達(dá)到?jīng)]有跳躍感,但有內(nèi)存泄露問題。而.net提供了垃圾收集機(jī)制,一般認(rèn)為不需要考慮內(nèi)存泄露問題,但實(shí)際使用證明至少在WINCE系統(tǒng)中內(nèi)存泄露是存在的。SGW5解決內(nèi)存泄露的方法是:(1)在全局變量處聲明:Dim bmp1 As Bitmap(2)在循環(huán)體外實(shí)例化:bmp1=New Bitmap(Pictbox1.Width,Pictbox1.Height)(3)在循環(huán)體內(nèi)完成數(shù)據(jù)顯示(在字符串str1中):Dim Myg1 As System.Drawing.GraphicsDim Wordb As New SolidBrush(MyColor2)Pictbox1.Image=bmp1Myg1=Graphics.FromImage(bmp1)Myg1.Clear(Color.Black)Myg1.DrawString(str1,myfont1,Wordb,10,10)Wordb.Dispose()Myg1.Dispose()(4)在循環(huán)體最后強(qiáng)制回收:GC.Collect()經(jīng)上述過程就能動(dòng)態(tài)、即時(shí)、快速地記錄整個(gè)測量過程。SGW5對(duì)平板電腦程序調(diào)試時(shí)采用的方法是:將STM32和PC機(jī)的RS232口直接連接,用VS2005下的程序模擬調(diào)試,調(diào)試完成后稍改動(dòng)幾句語句即能在WINCE上使用。這樣調(diào)試的好處是避免使用Platform Builder編譯環(huán)境,避免定制WINCE內(nèi)核,用這種方法調(diào)試NCF程序更方便快速[45]。VS2005下程序調(diào)試完成后,對(duì)SGW5僅調(diào)整了兩處:(1)調(diào)用了“coredll.dll” 函數(shù)庫中的兩個(gè)函數(shù);(2)增加InputPanel控件調(diào)用軟鍵盤。下面例子是調(diào)用軟鍵盤并顯示在屏幕右下角。For Each InpM In InP1.InputMethodsIf InpM.Name="LargeKB" ThenInP1.CurrentInputMethod=InpMEnd IfNext InpMDim h As IntPtr=FindWindow("SipWndClass",Nothing)MoveWindow(h,335,295,480,420,False)可以看到,經(jīng)過兩處調(diào)整,軟鍵盤的選擇、調(diào)用、隱藏在WINCE系統(tǒng)下很方便。

        2.2.3PC機(jī)軟件設(shè)計(jì)SGW5利用平板電腦的下載線作為向PC機(jī)實(shí)時(shí)上傳數(shù)據(jù)的通訊線,這樣就簡化了儀器接口和PC機(jī)的接線。使單向下載線平板具有了雙向數(shù)據(jù)通訊的功能。上位機(jī)通訊部份的程序如下:Imports OpenNETCF.Desktop.CommunicationDim MyRapi As RAPIDim FileName(1501) As StringDim FileNum As IntegerDim Num,VrNum As IntegerDim rsorusb As BooleanPublic Function CopyFileFromSGW() As BooleanDim i As LongMyRapi=New RAPITryMyRapi.Connect()Do While Not MyRapi.DevicePresent()MyRapi.Connect()LoopIf MyRapi.DeviceFileExists("\harddisk\SGW5\data\test.stxt") ThenMyRapi.CopyFileFromDevice(Application.StartupPath & "\test.dat","\harddisk\SGW5\data\test.stxt",True)Do While (MyRapi.DeviceFileExists("\harddisk\SGW5\data\test.stxt"))MyRapi.DeleteDeviceFile("\harddisk\SGW5\data\test.stxt")LoopReturn TrueElseReturn FalseEnd IfCatch ex As ExceptionApplication.Exit()Return FalseEnd TryEnd Function這樣既達(dá)到了實(shí)時(shí)通訊的效果又簡化了儀器系統(tǒng)的設(shè)計(jì)。3結(jié)論SGW5多波長自動(dòng)旋光儀試制完成后各項(xiàng)性能指標(biāo)[6]達(dá)到設(shè)計(jì)要求,通過了上海計(jì)量測試所的測試。經(jīng)過設(shè)計(jì)、生產(chǎn)過程的調(diào)試檢測,用戶的使用,證明SGW5軟件設(shè)計(jì)是成功的,程序安全可靠,方法實(shí)用可行。參考文獻(xiàn):

        [1]馮林,金濤,賈宏志,等.新型旋光儀測量原理的研究[J].光學(xué)儀器,2009,31(2):912.

        [2]王永虹,徐煒,郝立平.STM32系列ARM Cortexm3微控制器原理與實(shí)踐[M].北京:北京航空航天大學(xué)出版社,2008.

        [3]李寧.基于MDK的STM32處理器開發(fā)應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2008.

        [4]PHUNG S.Windows CE6.0嵌入式高級(jí)編程[M].張冬松,陳芳園,譯.北京:清華大學(xué)出版社,2009.

        [5]高磊,王洪濱,張歡.Windows CE系統(tǒng)開發(fā)高級(jí)編程與典型實(shí)例[M].北京:中國電力出版社,2011.

        [6]許海濱,李宏寧,徐林麗,等.旋光檢測中角度定位算法[J].光學(xué)儀器,2013,35(5):16.

        Fig.6Block diagram of

        step motor controlSGW5是多波長旋光儀,和其他旋光儀相比增加了濾光片切換功能。六種波長的濾光片放置在一個(gè)盤上,在步進(jìn)電機(jī)帶動(dòng)下自動(dòng)切換濾光片即切換波長。這種切換裝置的特點(diǎn)是:(1)機(jī)械機(jī)構(gòu)簡便,僅有一個(gè)光電傳感器通過狹縫定位。(2)濾光片盤慣性較大。實(shí)際上,這也是波長切換軟件設(shè)計(jì)的兩個(gè)關(guān)鍵點(diǎn),程序框圖見圖6[23] 。通過對(duì)光電傳感器的反復(fù)定位及步進(jìn)電機(jī)不同轉(zhuǎn)速、不同停止時(shí)間的控制,程序正確無誤地完成了濾光片切換功能。

        2.2.2平板電腦軟件設(shè)計(jì)平板電腦的廠家提供了組態(tài)軟件,但該組態(tài)軟件有兩個(gè)不足:(1)數(shù)據(jù)類型中沒有數(shù)組;(2)用組態(tài)軟件不能保存數(shù)據(jù)。因此該組態(tài)軟件的功能顯然不能滿足儀器設(shè)計(jì)要求,決定采用NCF編制平板電腦的程序。平板電腦軟件設(shè)計(jì)的關(guān)鍵是顯示和鍵盤響應(yīng)要快速無誤,程序調(diào)試要方便。STM32每20 ms將計(jì)數(shù)數(shù)據(jù)傳送給平板電腦顯示一次,因此,利用文本框顯示數(shù)據(jù)在WINCE系統(tǒng)下會(huì)有一種跳躍感。用圖片框顯示數(shù)據(jù)可以達(dá)到?jīng)]有跳躍感,但有內(nèi)存泄露問題。而.net提供了垃圾收集機(jī)制,一般認(rèn)為不需要考慮內(nèi)存泄露問題,但實(shí)際使用證明至少在WINCE系統(tǒng)中內(nèi)存泄露是存在的。SGW5解決內(nèi)存泄露的方法是:(1)在全局變量處聲明:Dim bmp1 As Bitmap(2)在循環(huán)體外實(shí)例化:bmp1=New Bitmap(Pictbox1.Width,Pictbox1.Height)(3)在循環(huán)體內(nèi)完成數(shù)據(jù)顯示(在字符串str1中):Dim Myg1 As System.Drawing.GraphicsDim Wordb As New SolidBrush(MyColor2)Pictbox1.Image=bmp1Myg1=Graphics.FromImage(bmp1)Myg1.Clear(Color.Black)Myg1.DrawString(str1,myfont1,Wordb,10,10)Wordb.Dispose()Myg1.Dispose()(4)在循環(huán)體最后強(qiáng)制回收:GC.Collect()經(jīng)上述過程就能動(dòng)態(tài)、即時(shí)、快速地記錄整個(gè)測量過程。SGW5對(duì)平板電腦程序調(diào)試時(shí)采用的方法是:將STM32和PC機(jī)的RS232口直接連接,用VS2005下的程序模擬調(diào)試,調(diào)試完成后稍改動(dòng)幾句語句即能在WINCE上使用。這樣調(diào)試的好處是避免使用Platform Builder編譯環(huán)境,避免定制WINCE內(nèi)核,用這種方法調(diào)試NCF程序更方便快速[45]。VS2005下程序調(diào)試完成后,對(duì)SGW5僅調(diào)整了兩處:(1)調(diào)用了“coredll.dll” 函數(shù)庫中的兩個(gè)函數(shù);(2)增加InputPanel控件調(diào)用軟鍵盤。下面例子是調(diào)用軟鍵盤并顯示在屏幕右下角。For Each InpM In InP1.InputMethodsIf InpM.Name="LargeKB" ThenInP1.CurrentInputMethod=InpMEnd IfNext InpMDim h As IntPtr=FindWindow("SipWndClass",Nothing)MoveWindow(h,335,295,480,420,False)可以看到,經(jīng)過兩處調(diào)整,軟鍵盤的選擇、調(diào)用、隱藏在WINCE系統(tǒng)下很方便。

        2.2.3PC機(jī)軟件設(shè)計(jì)SGW5利用平板電腦的下載線作為向PC機(jī)實(shí)時(shí)上傳數(shù)據(jù)的通訊線,這樣就簡化了儀器接口和PC機(jī)的接線。使單向下載線平板具有了雙向數(shù)據(jù)通訊的功能。上位機(jī)通訊部份的程序如下:Imports OpenNETCF.Desktop.CommunicationDim MyRapi As RAPIDim FileName(1501) As StringDim FileNum As IntegerDim Num,VrNum As IntegerDim rsorusb As BooleanPublic Function CopyFileFromSGW() As BooleanDim i As LongMyRapi=New RAPITryMyRapi.Connect()Do While Not MyRapi.DevicePresent()MyRapi.Connect()LoopIf MyRapi.DeviceFileExists("\harddisk\SGW5\data\test.stxt") ThenMyRapi.CopyFileFromDevice(Application.StartupPath & "\test.dat","\harddisk\SGW5\data\test.stxt",True)Do While (MyRapi.DeviceFileExists("\harddisk\SGW5\data\test.stxt"))MyRapi.DeleteDeviceFile("\harddisk\SGW5\data\test.stxt")LoopReturn TrueElseReturn FalseEnd IfCatch ex As ExceptionApplication.Exit()Return FalseEnd TryEnd Function這樣既達(dá)到了實(shí)時(shí)通訊的效果又簡化了儀器系統(tǒng)的設(shè)計(jì)。3結(jié)論SGW5多波長自動(dòng)旋光儀試制完成后各項(xiàng)性能指標(biāo)[6]達(dá)到設(shè)計(jì)要求,通過了上海計(jì)量測試所的測試。經(jīng)過設(shè)計(jì)、生產(chǎn)過程的調(diào)試檢測,用戶的使用,證明SGW5軟件設(shè)計(jì)是成功的,程序安全可靠,方法實(shí)用可行。參考文獻(xiàn):

        [1]馮林,金濤,賈宏志,等.新型旋光儀測量原理的研究[J].光學(xué)儀器,2009,31(2):912.

        [2]王永虹,徐煒,郝立平.STM32系列ARM Cortexm3微控制器原理與實(shí)踐[M].北京:北京航空航天大學(xué)出版社,2008.

        [3]李寧.基于MDK的STM32處理器開發(fā)應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2008.

        [4]PHUNG S.Windows CE6.0嵌入式高級(jí)編程[M].張冬松,陳芳園,譯.北京:清華大學(xué)出版社,2009.

        [5]高磊,王洪濱,張歡.Windows CE系統(tǒng)開發(fā)高級(jí)編程與典型實(shí)例[M].北京:中國電力出版社,2011.

        [6]許海濱,李宏寧,徐林麗,等.旋光檢測中角度定位算法[J].光學(xué)儀器,2013,35(5):16.

        Fig.6Block diagram of

        step motor controlSGW5是多波長旋光儀,和其他旋光儀相比增加了濾光片切換功能。六種波長的濾光片放置在一個(gè)盤上,在步進(jìn)電機(jī)帶動(dòng)下自動(dòng)切換濾光片即切換波長。這種切換裝置的特點(diǎn)是:(1)機(jī)械機(jī)構(gòu)簡便,僅有一個(gè)光電傳感器通過狹縫定位。(2)濾光片盤慣性較大。實(shí)際上,這也是波長切換軟件設(shè)計(jì)的兩個(gè)關(guān)鍵點(diǎn),程序框圖見圖6[23] 。通過對(duì)光電傳感器的反復(fù)定位及步進(jìn)電機(jī)不同轉(zhuǎn)速、不同停止時(shí)間的控制,程序正確無誤地完成了濾光片切換功能。

        2.2.2平板電腦軟件設(shè)計(jì)平板電腦的廠家提供了組態(tài)軟件,但該組態(tài)軟件有兩個(gè)不足:(1)數(shù)據(jù)類型中沒有數(shù)組;(2)用組態(tài)軟件不能保存數(shù)據(jù)。因此該組態(tài)軟件的功能顯然不能滿足儀器設(shè)計(jì)要求,決定采用NCF編制平板電腦的程序。平板電腦軟件設(shè)計(jì)的關(guān)鍵是顯示和鍵盤響應(yīng)要快速無誤,程序調(diào)試要方便。STM32每20 ms將計(jì)數(shù)數(shù)據(jù)傳送給平板電腦顯示一次,因此,利用文本框顯示數(shù)據(jù)在WINCE系統(tǒng)下會(huì)有一種跳躍感。用圖片框顯示數(shù)據(jù)可以達(dá)到?jīng)]有跳躍感,但有內(nèi)存泄露問題。而.net提供了垃圾收集機(jī)制,一般認(rèn)為不需要考慮內(nèi)存泄露問題,但實(shí)際使用證明至少在WINCE系統(tǒng)中內(nèi)存泄露是存在的。SGW5解決內(nèi)存泄露的方法是:(1)在全局變量處聲明:Dim bmp1 As Bitmap(2)在循環(huán)體外實(shí)例化:bmp1=New Bitmap(Pictbox1.Width,Pictbox1.Height)(3)在循環(huán)體內(nèi)完成數(shù)據(jù)顯示(在字符串str1中):Dim Myg1 As System.Drawing.GraphicsDim Wordb As New SolidBrush(MyColor2)Pictbox1.Image=bmp1Myg1=Graphics.FromImage(bmp1)Myg1.Clear(Color.Black)Myg1.DrawString(str1,myfont1,Wordb,10,10)Wordb.Dispose()Myg1.Dispose()(4)在循環(huán)體最后強(qiáng)制回收:GC.Collect()經(jīng)上述過程就能動(dòng)態(tài)、即時(shí)、快速地記錄整個(gè)測量過程。SGW5對(duì)平板電腦程序調(diào)試時(shí)采用的方法是:將STM32和PC機(jī)的RS232口直接連接,用VS2005下的程序模擬調(diào)試,調(diào)試完成后稍改動(dòng)幾句語句即能在WINCE上使用。這樣調(diào)試的好處是避免使用Platform Builder編譯環(huán)境,避免定制WINCE內(nèi)核,用這種方法調(diào)試NCF程序更方便快速[45]。VS2005下程序調(diào)試完成后,對(duì)SGW5僅調(diào)整了兩處:(1)調(diào)用了“coredll.dll” 函數(shù)庫中的兩個(gè)函數(shù);(2)增加InputPanel控件調(diào)用軟鍵盤。下面例子是調(diào)用軟鍵盤并顯示在屏幕右下角。For Each InpM In InP1.InputMethodsIf InpM.Name="LargeKB" ThenInP1.CurrentInputMethod=InpMEnd IfNext InpMDim h As IntPtr=FindWindow("SipWndClass",Nothing)MoveWindow(h,335,295,480,420,False)可以看到,經(jīng)過兩處調(diào)整,軟鍵盤的選擇、調(diào)用、隱藏在WINCE系統(tǒng)下很方便。

        2.2.3PC機(jī)軟件設(shè)計(jì)SGW5利用平板電腦的下載線作為向PC機(jī)實(shí)時(shí)上傳數(shù)據(jù)的通訊線,這樣就簡化了儀器接口和PC機(jī)的接線。使單向下載線平板具有了雙向數(shù)據(jù)通訊的功能。上位機(jī)通訊部份的程序如下:Imports OpenNETCF.Desktop.CommunicationDim MyRapi As RAPIDim FileName(1501) As StringDim FileNum As IntegerDim Num,VrNum As IntegerDim rsorusb As BooleanPublic Function CopyFileFromSGW() As BooleanDim i As LongMyRapi=New RAPITryMyRapi.Connect()Do While Not MyRapi.DevicePresent()MyRapi.Connect()LoopIf MyRapi.DeviceFileExists("\harddisk\SGW5\data\test.stxt") ThenMyRapi.CopyFileFromDevice(Application.StartupPath & "\test.dat","\harddisk\SGW5\data\test.stxt",True)Do While (MyRapi.DeviceFileExists("\harddisk\SGW5\data\test.stxt"))MyRapi.DeleteDeviceFile("\harddisk\SGW5\data\test.stxt")LoopReturn TrueElseReturn FalseEnd IfCatch ex As ExceptionApplication.Exit()Return FalseEnd TryEnd Function這樣既達(dá)到了實(shí)時(shí)通訊的效果又簡化了儀器系統(tǒng)的設(shè)計(jì)。3結(jié)論SGW5多波長自動(dòng)旋光儀試制完成后各項(xiàng)性能指標(biāo)[6]達(dá)到設(shè)計(jì)要求,通過了上海計(jì)量測試所的測試。經(jīng)過設(shè)計(jì)、生產(chǎn)過程的調(diào)試檢測,用戶的使用,證明SGW5軟件設(shè)計(jì)是成功的,程序安全可靠,方法實(shí)用可行。參考文獻(xiàn):

        [1]馮林,金濤,賈宏志,等.新型旋光儀測量原理的研究[J].光學(xué)儀器,2009,31(2):912.

        [2]王永虹,徐煒,郝立平.STM32系列ARM Cortexm3微控制器原理與實(shí)踐[M].北京:北京航空航天大學(xué)出版社,2008.

        [3]李寧.基于MDK的STM32處理器開發(fā)應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2008.

        [4]PHUNG S.Windows CE6.0嵌入式高級(jí)編程[M].張冬松,陳芳園,譯.北京:清華大學(xué)出版社,2009.

        [5]高磊,王洪濱,張歡.Windows CE系統(tǒng)開發(fā)高級(jí)編程與典型實(shí)例[M].北京:中國電力出版社,2011.

        [6]許海濱,李宏寧,徐林麗,等.旋光檢測中角度定位算法[J].光學(xué)儀器,2013,35(5):16.

        好爽要高潮了在线观看| 亚洲中文字幕久久精品无码a | 国语自产偷拍在线观看| 国产中文欧美日韩在线| 国产精品无码一区二区三区| 性激烈的欧美三级视频| 免费看国产成年无码av| 亚洲av毛片成人精品| 国产白浆流出一区二区| 青青青视频手机在线观看| 成年人一区二区三区在线观看视频| 小妖精又紧又湿高潮h视频69| 小辣椒福利视频导航| 午夜福利试看120秒体验区| 亚洲av成人精品日韩一区| 麻豆国产AV网站| 性色av手机在线观看| 日韩精品视频av在线观看| 激情五月天在线观看视频| 久久久久久自慰出白浆| 亚洲伊人成综合网| AV人人操| 亚洲天堂av路线一免费观看| 精品国产一区二区三区三| 99热爱久久99热爱九九热爱| 品色堂永远的免费论坛| av永久天堂一区二区三区蜜桃| 国产一区二区三区日韩在线观看| 无套中出丰满人妻无码| 永久黄网站免费视频性色| 国产va在线观看免费| 蜜臀av一区二区| 国产一区二区在线观看我不卡| 女同av一区二区三区| 国产办公室秘书无码精品99| 青草内射中出高潮| 亚洲AV永久无码精品导航| 精品少妇白浆一二三区| 国产肥熟女免费一区二区| 国产女人高潮叫床免费视频| 连续高潮喷水无码|