新聞中心

        EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > DELPHI語(yǔ)言在遠(yuǎn)程紅外測(cè)溫報(bào)警系統(tǒng)中的應(yīng)用

        DELPHI語(yǔ)言在遠(yuǎn)程紅外測(cè)溫報(bào)警系統(tǒng)中的應(yīng)用

        作者: 時(shí)間:2013-05-29 來(lái)源:網(wǎng)絡(luò) 收藏


        a)接收數(shù)據(jù)

        上位機(jī)采用事件驅(qū)動(dòng)方式接收數(shù)據(jù)。當(dāng)下位機(jī)傳送一幀數(shù)據(jù)上來(lái)輸入緩存時(shí),將觸發(fā)TCOMM 組件的OnReceiveData 事件,對(duì)數(shù)據(jù)進(jìn)行接收。然后對(duì)接收的數(shù)據(jù)進(jìn)行判斷,分別轉(zhuǎn)相應(yīng)的處理程序。下面是數(shù)據(jù)接收的程序段:

          begin

          try

          count:=form1.Comm1.ReadInputByte(pt);

          if ((count+1) mod 4>0) then

          begin

          form1.Comm1.DataCount:=0;

          exit;

          end;

          for i:=0 to 3 do

          begin

          re[i]:=pt^;

          inc(pt);

          end;

          … //數(shù)據(jù)處理部分

        b)發(fā)送數(shù)據(jù)

        發(fā)送數(shù)據(jù)采用異步I/O 方式,即將要發(fā)送的數(shù)據(jù)用WriteCommData 方法發(fā)送到寫(xiě)線程,然后立即返回。該方法所有的操作均在后臺(tái)進(jìn)行,如果發(fā)送成功,返回True, 發(fā)送失敗,返回False。下面是發(fā)送數(shù)據(jù)的主要程序段:

          form1.Comm1.PortOpen:=true;

          form1.Comm1.OutputByte(send);

          timedelay(300);

        3.4 系統(tǒng)初始化模塊設(shè)計(jì)

        本系統(tǒng)初始化部分設(shè)計(jì)程序如下:

          begin

          Position:=poscreencenter;

          form1.Comm1.DataCount:=0;

          form1.Comm1.RThreshold:=1;

          form1.Comm1.PortOpen:=true;//串行口初始化

          form1.sys_ini();//系統(tǒng)參數(shù)初始化

          …

        3.5 參數(shù)設(shè)置模塊設(shè)計(jì)

        為了系統(tǒng)的操作方便,在菜單中加入了參數(shù)的設(shè)置,可以選擇串行口,選擇通信的波特率等等。

        4 結(jié)束語(yǔ)

        系統(tǒng)經(jīng)過(guò)一個(gè)多月的觀察測(cè)試,該軟件系統(tǒng)運(yùn)行穩(wěn)定,使用操作方便,測(cè)量精度高。


        上一頁(yè) 1 2 3 下一頁(yè)

        評(píng)論


        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 伊吾县| 华池县| 开原市| 柏乡县| 六枝特区| 环江| 宝鸡市| 勃利县| 新平| 浪卡子县| 日喀则市| 射洪县| 晋州市| 潼南县| 屯留县| 思南县| 彰化市| 蒙山县| 拉萨市| 无为县| 卓尼县| 肇源县| 桐城市| 京山县| 桂林市| 岫岩| 体育| 讷河市| 天镇县| 金坛市| 永安市| 登封市| 桦南县| 通榆县| 沙河市| 琼结县| 济宁市| 如皋市| 延川县| 临颍县| 河西区|