• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于TeeChart的89C51與PC串口通信與數(shù)據(jù)曲線繪制

      2016-08-31 06:35:04沈一凡李晨輝長安大學電控學院
      數(shù)碼世界 2016年8期
      關鍵詞:波特率PC機控件

      趙 峰 沈一凡 李晨輝長安大學電控學院

      基于TeeChart的89C51與PC串口通信與數(shù)據(jù)曲線繪制

      趙峰沈一凡李晨輝
      長安大學電控學院

      在控制系統(tǒng)中,有時候需要對采樣所得數(shù)據(jù)的曲線進行繪制以便對被研究對象進行建模、數(shù)據(jù)分析。同時,圖像分析的方法由于它獨特的優(yōu)點被廣泛的運用,實時繪圖技術就顯得十分重要。

      Teechart 曲線繪制 串口

      1 引言

      近些年來,由于控制工程發(fā)展的實際需要,控制過程中需要依賴上位機對某些重要數(shù)據(jù)進行記錄、分析與處理,有的控制過程需要對所得數(shù)據(jù)進行精確的繪圖用以追蹤數(shù)據(jù)變化曲線。目前現(xiàn)有的繪圖軟件也不少,但是主要是由于各種產(chǎn)品的制作風格,設計功能千差萬別,很多時候難以滿足控制工程人員的需求。這對標準化、模塊化、個性化、多元化的繪圖程序設計軟件提出了要求,而TeeChart控件作為一款優(yōu)秀的繪圖控件,兼容多種程序語言可以降低軟件開發(fā)的難度,同時也兼顧了縮短了軟件開發(fā)周期,也提高了系統(tǒng)的可靠性等優(yōu)點。

      2 硬件介紹

      單片機開發(fā)板核心采用的是STC公司的89c52開發(fā)板,內(nèi)部ROM為8Kb,256個字節(jié)的RAM,通過MAX232芯片與單片機連接并進行電平轉換后通過RS232直接與PC機串口連接。電路如下圖所示:

      3 下位機程序設計

      3.1程序說明

      設計一個可以使得單片機持續(xù)向PC機發(fā)送ASCII碼的程序,波特率設置為9600,這主要是因為PC上位機與下位機是以ASCII碼的形式通信,人為的在單片機端進行16進制與ASCII碼轉換,保持51單片機一直向串口發(fā)送數(shù)據(jù)“25”。程序流程圖如下:

      4 上位機程序設計思路

      4.1程序特征說明

      采用VS2010開發(fā)環(huán)境中的C++語言進行設計,通過建立MFC程序以調用較多的附加庫函數(shù),其強大的MSCOMM串口通信控件可以滿足相當多的通信要求,諸如,串口數(shù)據(jù)開放與關斷、接收與處理等相關的庫函數(shù),同時子函數(shù)的調用與開發(fā)很方便,可以大大降低編程的。

      4.2TeeChart軟件設計

      (1)串口號與相應波特率的選擇

      在表格里設置兩個下拉菜單欄,波特率從300設置到43000變化,串口號從1到15,這樣,串口選擇可以更加靈活,為了方便起見,預設波特率為9600與單片機通信速率相同。程序添加在MFC圖表程序初始化程序中:

      m_comsel.SetCurSel(0);//預置COM口

      m_bandratesel.SetCurSel(5);//預置波特率為”9600”

      (2)串口開放與關閉程序設計

      在圖表框中程序中加入兩個按鈕,分別用于控制串口開通與關斷。

      (3)在圖表框程序中加入兩個編輯框,分別用recieve與send表示,一方面可以用于檢驗得到的數(shù)據(jù)是否正確,另一方面可以判斷串口輸入的數(shù)據(jù)與圖像進行比較。在后期處理的過程中,可以將兩個編輯框縮小或直接去除。

      (4)設置Teechart曲線的橫軸與縱軸,以及部分數(shù)據(jù)的初始化,這些處理程序可以放入MSCOMM處理函數(shù)中,時間軸從電腦當前時間選擇作為參考,但是進行處理后均默認從0時0分

      CSeries(m_chart.Series(0)).Clear();//清空曲線

      CPage(m_chart. get_Page()).p u t_ MaxPointsPerPage(80);//設 置80個數(shù)據(jù)點

      COleDateTime CurTime = COleDateTime::GetCurrentTi me();//獲取當前時間

      COleDateTimeSpan tmSpan= COleDateTimeSpan(0,0,1,0);//設置時間間隔為1分鐘。

      (5)讀取時間與緩沖區(qū)的字符,由于圖像處理程序嵌入到了串口通信程序中,所以數(shù)據(jù)一被接受便被處理并暫存在PC機內(nèi)。

      (6)繪圖部分中不僅執(zhí)行繪圖功能,在繪圖結束后進行延時設計,這里不使用精確延時功能,一方面對于短時間的檢測(這里是1s)間隔而言使用Sleep函數(shù)或定時器對于程序造成的停滯非常嚴重,所以這里采用GetTickCount函數(shù)編寫延時程序,每隔1s檢測串口端是否有數(shù)據(jù),若不是則繼續(xù)保持等待,當然這樣的等待時間相對程序工作時間來說是微不足道的。

      上位機程序流程圖如下圖所示:

      5 最終曲線圖像與總結

      結束總結:本文主要針對單片機與PC機通信并進行實時通信繪制曲線進行分析,搭建了一個基本功能齊備的曲線處理程序,特別是針對8位的單片機提供了一個較好的圖像處理平臺,可以為相關工作人員進行單片機與PC機進行圖像數(shù)據(jù)處理提供參考。實際上機測試通過,程序可以實現(xiàn)功能,實際測序測試結果如下圖所示。

      [1]劉戰(zhàn)坤,曾水平,基于DSP28335與TeeChart控件的數(shù)據(jù)采集與顯示系統(tǒng)[J].中國科技信息2013.11; 113-114

      [2]梁增欣,李維嘉,TeeChart控件介紹及在實時監(jiān)控系統(tǒng)中的應用[J].工業(yè)控制計算機2010,23(12);9-10

      猜你喜歡
      波特率PC機控件
      CAN 總線波特率自適應程序設計
      智能制造(2020年5期)2020-07-03 06:24:00
      關于.net控件數(shù)組的探討
      軟件(2018年7期)2018-08-13 09:44:42
      基于FPGA的異步串行通信波特率容錯設計
      電子測試(2018年7期)2018-05-16 06:27:18
      基于PC機與單片機的多機通信技術及抗干擾方法
      基于三菱FXPLC的感應淬火機床與PC機的串行通信實現(xiàn)
      VC.NET下實現(xiàn)dsPIC單片機與PC機的通信
      電子制作(2017年23期)2017-02-02 07:16:47
      C*Core芯片SCI串口波特率容限優(yōu)化
      就這樣玩會VBA中常見的自定義控件
      電腦迷(2012年24期)2012-04-29 00:44:03
      計算機多設備接口波特率不匹配的研究
      在PowerBuUder中利用WinSock控件制作簡單的Web服務器
      波密县| 加查县| 望都县| 固镇县| 合山市| 城步| 和平县| 武隆县| 西林县| 正镶白旗| 保德县| 朝阳区| 嵊泗县| 神农架林区| 新乡县| 板桥市| 温宿县| 修文县| 汉阴县| 巴马| 简阳市| 连山| 罗城| 琼海市| 晋州市| 天长市| 瑞金市| 尉犁县| 满城县| 开封县| 富宁县| 荥阳市| 松原市| 独山县| 穆棱市| 梧州市| 同仁县| 宁海县| 沛县| 常德市| 确山县|