關(guān) 閉

        新聞中心

        EEPW首頁 > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > DELPHI 語言在遠(yuǎn)程紅外測(cè)溫報(bào)警系統(tǒng)中的應(yīng)用

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

        作者: 時(shí)間:2012-03-20 來源:網(wǎng)絡(luò) 收藏

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

        上位機(jī)采用事件驅(qū)動(dòng)方式接收數(shù)據(jù)。當(dāng)下位機(jī)傳送一幀數(shù)據(jù)上來輸入緩存時(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ā)送到寫線程,然后立即返回。該方法所有的操作均在后臺(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é)束語

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

        紅外遙控器相關(guān)文章:紅外遙控器原理

        上一頁 1 2 3 下一頁

        評(píng)論


        相關(guān)推薦

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

        關(guān)閉
        主站蜘蛛池模板: 东丰县| 宁蒗| 竹溪县| 梁山县| 长阳| 宜章县| 垫江县| 兖州市| 余江县| 宜君县| 吉安县| 精河县| 余姚市| 长岛县| 察雅县| 鸡西市| 平和县| 马山县| 锡林郭勒盟| 祁门县| 浦城县| 瑞昌市| 高密市| 宁都县| 扎赉特旗| 平山县| 双江| 视频| 永登县| 咸阳市| 建宁县| 东乡| 黎平县| 铜鼓县| 南城县| 德阳市| 博爱县| 娱乐| 新巴尔虎左旗| 工布江达县| 桐乡市|