亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? econv230p.~pas

?? Delphi編寫的ModBus協議上位機軟件
?? ~PAS
?? 第 1 頁 / 共 4 頁
字號:
//-----------------------------------------------------------
//* Copyright (c) 2001,北京易控微網科技有限公司
//* All rights reserved.
//*
//* 文件名稱:econv230p.pas
//* 摘    要:主程序文件
//* 當前版本:2.30
//
//* 作    者:夏紅健
//* 完成日期:2004年5月26日

//* 取代版本:2.21
//* 原作者  :夏紅健
//* 完成日期:2005年6月2日

//* 修改說明:
//  1.增加用戶訂制波特率功能
//  2.終端錯誤幀數據采取丟棄處理
//  3.將STRTOINT函數改為STRTOINTDEF函數,防出錯
//  4.將編程風格規范化
//-----------------------------------------------------------


unit econv230p; //單元名

interface

uses

//-----------------------------------------------------------
//* 外部單元說明:
// VaClasses, VaComm 串口通訊控件 版本 Version 2.01 (Info@varian-software.com)
// func 為外部函數庫
// aboutp 為關于窗口
// tempp 為設置數據臨時窗口
// filedefine 為teconfile類的定義
//-----------------------------------------------------------
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Grids, StdCtrls, ComCtrls, Menus,  ExtCtrls, Buttons,
  VaClasses,VaComm, func, aboutp, tempp, filedefine;

type
  TMainForm = class(TForm)
    PAGECON: TPageControl;          
    INPUTSTATE: TTabSheet;             // 開關量輸入頁面
    COILSTATE: TTabSheet;              // 開關量輸出頁面
    HOLDREGISTER: TTabSheet;           // 保持寄存器頁面
    INPUTREGISTER: TTabSheet;          // 輸入寄存器頁面
    PROTECT: TTabSheet;                // 保護頁面
    COMMUNICATION: TTabSheet;          // 通訊頁面
    HELP: TTabSheet;                   // 幫助頁面
    DATADEF: TTabSheet;                // 數據定義頁面
    POWER: TTabSheet;                  // 電度頁面
    XIANGLIANG: TTabSheet;             // 相量圖頁面
    TESTRPT: TTabSheet;                // 測試報告頁面

    helpMemo: TMemo;                   // 幫助MEMO
    datamemo: TMemo;                   // 數據定義MEMO
    sendmemo: TMemo;                   // 計算機發送數據MEMO
    revmemo: TMemo;                    // 計算機接收數據MEMO
    eventmemo: TMemo;                  // 事件MEMO
    testrptmemo: TMemo;                // 測試報告MEMO

    inputregistergrid: TStringGrid;    // 輸入寄存器表
    protectgrid: TStringGrid;          // 保護數據表
    holdregistergrid: TStringGrid;     // 保持寄存器表
    coilstategrid: TStringGrid;        // 開關量輸出表
    inputstategrid: TStringGrid;       // 開關量輸入表
    PowerGrid: TStringGrid;            // 電度數據表
    xianglianggrid: TStringGrid;       // 相量數據表

    MainMenu: TMainMenu;

    m_rtutpye: TMenuItem;              // 終端類型子菜單

    fileopen: TMenuItem;             // 打開終端類型描述文件

    m_comset: TMenuItem;               // 通訊設置子菜單

    m_baudrate: TMenuItem;           // 波特率菜單
          b110: TMenuItem;             // 110
          b300: TMenuItem;             // 300
          b600: TMenuItem;             // 600
          b1200: TMenuItem;            // 1200
          b2400: TMenuItem;            // 2400
          b4800: TMenuItem;            // 4800
          b9600: TMenuItem;            // 9600
          b14400: TMenuItem;           // 14400
          b19200: TMenuItem;           // 19200
          b38400: TMenuItem;           // 38400
          b56000: TMenuItem;           // 56000
          b57600: TMenuItem;           // 57600
          b115200: TMenuItem;          // 115200
          b128000: TMenuItem;          // 128000
          b256000: TMenuItem;          // 256000
          buser: TMenuItem;            // 用戶定義波特率

      m_protocol: TMenuItem;           // 通訊協議菜單
          MODBUSRTU1: TMenuItem;       // MODBUS RTU
          MODBUSASCII1: TMenuItem;     // MODBUS ASCII
          cdt1: TMenuItem;             // 其它協議 空

      m_port: TMenuItem;               // 通訊端口菜單
          COM11: TMenuItem;            // com0
          COM21: TMenuItem;            // com1
          COM31: TMenuItem;            // com2
          COM41: TMenuItem;            // com3
          COM51: TMenuItem;            // com4
          COM61: TMenuItem;            // com5
          COM71: TMenuItem;            // com6
          COM81: TMenuItem;            // com7
          COM91: TMenuItem;            // com8
          COM101: TMenuItem;           // com9

      m_verify: TMenuItem;             // 通訊奇偶校驗菜單
          paritynone: TMenuItem;       // 無
          parityodd: TMenuItem;        // 奇校驗
          parityeven: TMenuItem;       // 偶校驗

      m_address: TMenuItem;            // 通訊終端地址菜單
          address1: TMenuItem;         // 1
          address2: TMenuItem;         // 2
          address3: TMenuItem;         // 3
          address4: TMenuItem;         // 4
          address5: TMenuItem;         // 5
          address6: TMenuItem;         // 6
          address7: TMenuItem;         // 7
          address8: TMenuItem;         // 8
          address9: TMenuItem;         // 9
          address10: TMenuItem;        // 10
          address11: TMenuItem;        // 11
          address12: TMenuItem;        // 12
          address13: TMenuItem;        // 13
          address14: TMenuItem;        // 14
          address15: TMenuItem;        // 15
          address16: TMenuItem;        // 16
          address17: TMenuItem;        // 17
          address18: TMenuItem;        // 18
          address19: TMenuItem;        // 19
          address20: TMenuItem;        // 20
          address21: TMenuItem;        // 21
          address22: TMenuItem;        // 22
          address23: TMenuItem;        // 23
          address24: TMenuItem;        // 24
          address25: TMenuItem;        // 25
          address26: TMenuItem;        // 26
          address27: TMenuItem;        // 27
          address28: TMenuItem;        // 28
          address29: TMenuItem;        // 29
          address30: TMenuItem;        // 30
          address31: TMenuItem;        // 31
          address32: TMenuItem;         // 接收等待時間菜單
    m_comcontrol: TMenuItem;         // 通訊啟停控制菜單

    m_help: TMenuItem;                 // 幫助菜單
    m_about: TMenuItem;              // 關于菜單

    StatusBar1: TStatusBar;            // 通訊狀態指示欄

    sendtimer: TTimer;                 // 發送時間定時器
    revtimer: TTimer;                  // 接收時間定時器
    readholdtimer: TTimer;             // 讀保持寄存器定時器  自動讀取
    readfifotimer: TTimer;             // 讀FIFO定時器  自動讀取

    PopupMenu1: TPopupMenu;            // 右鍵彈出菜單1 用在數據定義頁面
    save: TMenuItem;                   // 保存數據定義文件
    saveas: TMenuItem;                 // 另存數據定義

    Save1: TSaveDialog;                // 保存對話框
    open1: TOpenDialog;                  // 串口通訊控件
    PopupMenu2: TPopupMenu;            // 右鍵彈出菜單2 用在保存幫助文件
    save2: TMenuItem;                  // 保存幫助文件

    rptbtn: TBitBtn;                   // 生成報告按鈕
    saverptbtn: TBitBtn;               // 保存報告按鈕
    ClrRptBtn: TBitBtn;                // 清除報告按鈕

    Splitter1: TSplitter;
    Splitter2: TSplitter;

    Panel1: TPanel;
    Image1: TImage;
    XIEBO: TTabSheet;
    XieBoGrid: TStringGrid;
    N1: TMenuItem;
    TimerOut1: TTimer;
    N2: TMenuItem;
    VaComm1: TVaComm;                    // 相量圖形顯示

    procedure FormActivate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);

    // 菜單處理
    procedure fileopenClick(Sender: TObject); // 打開數據定義文件
    procedure b110Click(Sender: TObject);  // 修改波特率
    procedure MODBUSRTU1Click(Sender: TObject); // 修改協議
    procedure COM11Click(Sender: TObject); // 修改端口
    procedure paritynoneClick(Sender: TObject); // 修改奇偶校驗
    procedure address1Click(Sender: TObject); // 修改地址
    procedure m_comcontrolClick(Sender: TObject); // 開停通訊
    procedure m_aboutClick(Sender: TObject);  // 顯示關于窗口

    // 通訊定時器處理
    procedure VaComm1RxFlag(Sender: TObject); // 產生數據接收標志處理
    procedure revtimerTimer(Sender: TObject); // 接收定時器處理
    procedure sendtimerTimer(Sender: TObject); // 發送定時器處理
    procedure readholdtimerTimer(Sender: TObject); // 讀保持寄存器間隔
    procedure readfifotimerTimer(Sender: TObject); // 讀FIFO間隔

    // 文件保存
    procedure saveClick(Sender: TObject); // 保存數據定義
    procedure saveasClick(Sender: TObject); // 另存數據定義
    procedure save2Click(Sender: TObject); // 保存幫助

    // 終端數據處理
    procedure coilstategridSelectCell(Sender: TObject; ACol, ARow: Integer;
      var CanSelect: Boolean); // 遙控繼電器
    procedure holdregistergridSelectCell(Sender: TObject; ACol,
      ARow: Integer; var CanSelect: Boolean); // 修改保持寄存器
    procedure PowerGridSelectCell(Sender: TObject; ACol, ARow: Integer;
      var CanSelect: Boolean);  // 修改電度初值
    procedure protectgridSelectCell(Sender: TObject; ACol, ARow: Integer;
      var CanSelect: Boolean);  // 修改保護定值
    procedure inputregistergridSelectCell(Sender: TObject; ACol,
      ARow: Integer; var CanSelect: Boolean); // 修改輸入寄存器對應系數

    // 測試報告相關處理
    procedure saverptbtnClick(Sender: TObject);
    procedure rptbtnClick(Sender: TObject);
    procedure ClrRptBtnClick(Sender: TObject);
    procedure XieBoGridSelectCell(Sender: TObject; ACol, ARow: Integer;
      var CanSelect: Boolean);
    procedure N1Click(Sender: TObject);
    procedure TimerOut1Timer(Sender: TObject);
    procedure N2Click(Sender: TObject);
    procedure VaComm1RxChar(Sender: TObject; Count: Integer);

  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  MainForm: TMainForm;
  econfile: Teconfile;
  getfilename: string;
  smindex: integer;       // 存貯表格操作的列值
  comm_status: bool;      // 通訊狀態,TRUE為運行狀態,FALSE為停止狀態
  poll_count: integer;
  read_index: integer;
  sendflag1: boolean;//特殊幀標志
  
procedure system_init;    // 系統初始化
procedure drawxiangliang; // 畫相量圖
procedure start_comm;     // 啟動通訊
procedure stop_comm;      // 停止通訊

implementation


{$R *.DFM}



//----------------------系統初始化---------------------------
procedure system_init;
var
  temp: string;
begin
  with mainform do
  begin

    helpmemo.lines.loadfromfile('help.txt'); // 調入幫助文件

    datainit;  // 初始化變量
    comm_status := false;   // 通訊狀態初始為停止
    smindex := 0;
    poll_count := 0;
    read_index := 0;
    sendflag1 :=  false;
    econfile := Teconfile.init; // 構造ECONFILE對象
    getdatafromfile(datamemo, getfilename, econfile);// 調入數據定義中的系統設置


    // 根據數據定義文件初始化界面
    if econfile.coilstatetotal>0 then displaycoilstate(econfile,coilstategrid);
    coilstate.TabVisible := econfile.coilstatetotal>0;

    if econfile.inputstatetotal>0 then displayinputstate(econfile,inputstategrid);
    inputstate.TabVisible := econfile.inputstatetotal>0;

    if econfile.holdregistertotal>0 then displayholdregister(econfile,holdregistergrid);
    holdregister.TabVisible := econfile.holdregistertotal>0;

    if econfile.inputregistertotal>0 then displayinputregister(econfile,inputregistergrid);
    inputregister.TabVisible := econfile.inputregistertotal>0;

    if econfile.setprotecttotal>0 then  displayprotect(econfile,protectgrid);
    protect.TabVisible := econfile.setprotecttotal>0;

    if econfile.setpowertotal>0 then displaypower(econfile,powergrid);
    power.TabVisible := econfile.setpowertotal>0;

    if econfile.setxiangliangtotal>0 then displayxiangliang(econfile,xianglianggrid);
    xiangliang.TabVisible := econfile.setxiangliangtotal>0;

    if econfile.setxiebototal>0 then displayxiebo(econfile,xiebogrid);
    xiebo.TabVisible := econfile.setxiebototal>0;

    mainform.pagecon.Visible := true;


    statusbar1.Panels[0].Text := '通訊未開始';
    temp := econfile.comm.mode;
    if (uppercase(temp)='RTU') then modbusrtu1.Checked:=true;
    if (uppercase(temp)='ASCII') then modbusascii1.Checked:=true;

    case econfile.comm.portnum of
      1: com11.Checked := true;
      2: com21.Checked := true;
      3: com31.checked := true;
      4: com41.checked := true;
      else com11.checked := true;
    end;

    case econfile.comm.parity of
      0: paritynone.Checked := true;
      1: parityodd.Checked := true;
      2: parityeven.checked := true;
    end;

    case econfile.comm.baudrate of
      110: b110.Checked := true;
      300: b300.Checked := true;
      600: b600.Checked := true;
      1200: b1200.Checked := true;
      2400: b2400.Checked := true;
      4800: b4800.Checked := true;
      9600: b9600.Checked := true;
      14400: b14400.Checked := true;
      19200: b19200.Checked := true;
      38400: b38400.Checked := true;
      56000: b56000.Checked := true;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
制服丝袜亚洲色图| 在线观看日韩精品| 黄色小说综合网站| 激情图片小说一区| 国产精品乡下勾搭老头1| 色噜噜狠狠成人中文综合| 丝袜诱惑亚洲看片 | 亚洲免费观看高清完整| 亚洲免费看黄网站| 一区二区国产盗摄色噜噜| 亚洲欧美日韩国产综合| 午夜精品国产更新| 精品一区二区日韩| 成人午夜激情视频| 在线中文字幕一区二区| 日韩一区二区在线免费观看| 欧美一级片在线看| 国产亚洲短视频| 亚洲美女在线一区| 美女高潮久久久| 成人av网在线| 久久亚洲一区二区三区四区| 亚洲精品精品亚洲| 麻豆国产精品官网| 欧美亚洲另类激情小说| 久久久久久一级片| 日韩电影在线免费观看| 91免费视频网| 亚洲国产精品成人综合色在线婷婷| 亚洲视频一二区| 不卡的电影网站| 久久精品视频一区二区| 久久国产日韩欧美精品| 欧美调教femdomvk| 亚洲国产日韩a在线播放性色| 国产乱国产乱300精品| 欧美日韩久久久久久| 亚洲高清在线精品| 色激情天天射综合网| 最新国产の精品合集bt伙计| 成人中文字幕电影| 中文字幕乱码久久午夜不卡| 成人中文字幕合集| 国产精品国模大尺度视频| 国产成人精品亚洲午夜麻豆| 精品少妇一区二区三区 | 日本高清不卡一区| 亚洲色图视频网| 在线观看网站黄不卡| 日日夜夜一区二区| 日韩一区二区三区在线观看| 蜜臀av国产精品久久久久 | 国产专区综合网| 国产女同互慰高潮91漫画| 波多野结衣精品在线| 亚洲国产另类av| 精品国产百合女同互慰| 国产麻豆一精品一av一免费 | 精品一区二区影视| 国产精品色哟哟| 69堂成人精品免费视频| 国产综合成人久久大片91| 国产精品成人午夜| 欧美美女bb生活片| 国产成人av电影在线| 亚洲综合另类小说| 国产午夜精品一区二区三区嫩草 | 一区二区成人在线视频 | 亚洲欧美国产三级| 7777精品伊人久久久大香线蕉最新版| 日本大胆欧美人术艺术动态| 中文字幕一区二区三区乱码在线| 成人黄色免费短视频| 亚洲一区精品在线| 中文字幕第一区二区| 欧美一级二级三级蜜桃| 色8久久精品久久久久久蜜| 久久av资源站| 久久电影网站中文字幕| 天使萌一区二区三区免费观看| 国产精品国产三级国产普通话三级 | 成人v精品蜜桃久久一区| 日本三级亚洲精品| 亚洲成av人片观看| 亚洲午夜一区二区| 亚洲成av人片www| 婷婷中文字幕一区三区| 五月天中文字幕一区二区| 亚洲制服丝袜在线| 午夜精品在线看| 日韩电影免费在线看| 免费的成人av| 国产在线精品免费| 风间由美性色一区二区三区| 福利电影一区二区| 色噜噜夜夜夜综合网| 欧美性受xxxx| 欧美xxxxx裸体时装秀| 精品av久久707| 中文字幕在线免费不卡| 亚洲一区二区视频| 美腿丝袜亚洲综合| 波多野结衣中文字幕一区二区三区| 波多野结衣欧美| 日韩区在线观看| 亚洲欧洲精品天堂一级| 亚洲成人一区二区| 丁香网亚洲国际| 欧美日韩电影在线| 国产午夜精品一区二区三区嫩草| 亚洲一区二区精品久久av| 久久99久久久久| 色婷婷激情久久| 中文字幕欧美日韩一区| 免费日本视频一区| 欧洲人成人精品| 亚洲视频一区在线| a在线播放不卡| 国产视频一区不卡| 黄色成人免费在线| 日韩午夜激情视频| 亚洲国产精品久久艾草纯爱| 国产91在线看| 久久精品亚洲乱码伦伦中文| 日韩综合一区二区| 欧美精品三级日韩久久| 亚洲人成影院在线观看| av影院午夜一区| 国产精品久久久久久妇女6080| 国产一区中文字幕| 日韩欧美国产成人一区二区| 亚洲高清久久久| 7777精品伊人久久久大香线蕉超级流畅 | 欧美一卡二卡三卡| 日一区二区三区| 日韩免费视频一区二区| 麻豆91精品91久久久的内涵| 欧美xxxxxxxxx| 麻豆国产一区二区| 久久亚洲春色中文字幕久久久| 国产一区二区视频在线播放| 久久精品夜色噜噜亚洲a∨| 成人手机电影网| 亚洲美女视频一区| 在线91免费看| 国产一区二区成人久久免费影院| 国产视频视频一区| 色悠久久久久综合欧美99| 亚洲国产精品欧美一二99| 日韩午夜在线播放| 91麻豆精品一区二区三区| 午夜精品一区二区三区电影天堂| 欧美一卡二卡三卡| fc2成人免费人成在线观看播放| 亚洲精选一二三| 久久久亚洲国产美女国产盗摄| 不卡av电影在线播放| 久久精品免费看| 依依成人综合视频| 国产日本欧美一区二区| 色老综合老女人久久久| 成人小视频免费在线观看| 日韩精品一区第一页| 亚洲综合视频网| **性色生活片久久毛片| 精品日本一线二线三线不卡| 欧美在线视频全部完| 一本久道久久综合中文字幕| 丁香婷婷深情五月亚洲| 国产盗摄精品一区二区三区在线| 亚洲高清视频中文字幕| 久久精品二区亚洲w码| 一区二区三区电影在线播| 中文子幕无线码一区tr| 久久久久成人黄色影片| 欧美精品一区二区三区蜜桃| 欧美精品在线视频| 欧美少妇xxx| 欧美日韩成人综合在线一区二区| 色av成人天堂桃色av| 91精品国产91久久综合桃花| 色婷婷精品久久二区二区蜜臂av | 亚洲国产精品尤物yw在线观看| 中文字幕中文乱码欧美一区二区| 欧美国产激情二区三区| 亚洲日本一区二区| 亚洲永久免费av| 美女任你摸久久| 99久久久久久99| 欧美一级片免费看| 国产精品天干天干在观线| 亚洲丝袜另类动漫二区| 亚洲www啪成人一区二区麻豆| 天天综合色天天综合色h| 美日韩黄色大片| 成人av网站在线| 日韩精品一区二区三区四区| 国产日产欧美一区| 日韩成人精品在线观看| 国产高清亚洲一区|