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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? mainformunit.pas

?? Appliction => rs232測試 應(yīng)用程式 Driver => usb to rs232 驅(qū)動程式(wdm ddk) DLL => 應(yīng)用程式 Firmware =&g
?? PAS
?? 第 1 頁 / 共 2 頁
字號:


procedure TMainForm.DataInTimerTimer(Sender: TObject);
var
  InByte,InByteB,InByteC,InByteD:byte;
  UsedPorts:byte;
  i:integer;
  MyComponent:TComponent;
begin
  DataInTimer.Tag:=1;
  DataInIntervalLabel.Caption:=IntToStr(DataInTimer.Interval)+'ms';
  if DoGetInDataPorts(InByteB,InByteC,InByteD,UsedPorts)<>NO_ERROR then
    begin
      DeviceNotPresentLabel.Visible:=true;
      DataInTimer.Tag:=0;
      Exit;
    end;
  if UsedPorts<=1 then PortChoiceRadioGroup.ItemIndex:=0;
  case PortChoiceRadioGroup.ItemIndex of
    1:InByte:=InByteC;
    2:InByte:=InByteD;
  else
    InByte:=InByteB;
  end;
  DeviceNotPresentLabel.Visible:=false;
  for i:= 0 to 7 do
    begin
      MyComponent:=FindComponent('DataInCheckBox'+IntToStr(i));
      (MyComponent as TCheckBox).Checked:=((MyComponent as TCheckBox).Tag and InByte)<>0;
    end;

  if DoGetOutDataPorts(InByteB,InByteC,InByteD,UsedPorts)<>NO_ERROR then
    begin
      DeviceNotPresentLabel.Visible:=true;
      DataInTimer.Tag:=0;
      Exit;
    end;
  if UsedPorts<=1 then PortChoiceRadioGroup.ItemIndex:=0;
  case PortChoiceRadioGroup.ItemIndex of
    1:InByte:=InByteC;
    2:InByte:=InByteD;
  else
    InByte:=InByteB;
  end;
  DeviceNotPresentLabel.Visible:=false;
  for i:= 0 to 7 do
    begin
      MyComponent:=FindComponent('DataOutCheckBox'+IntToStr(i));
      (MyComponent as TCheckBox).Checked:=((MyComponent as TCheckBox).Tag and InByte)<>0;
    end;

  if DoGetDataPortDirections(InByteB,InByteC,InByteD,UsedPorts)<>NO_ERROR then
    begin
      DeviceNotPresentLabel.Visible:=true;
      DataInTimer.Tag:=0;
      Exit;
    end;
  if UsedPorts<=1 then PortChoiceRadioGroup.ItemIndex:=0;
  case PortChoiceRadioGroup.ItemIndex of
    1:InByte:=InByteC;
    2:InByte:=InByteD;
  else
    InByte:=InByteB;
  end;
  DeviceNotPresentLabel.Visible:=false;
  for i:= 0 to 7 do
    begin
      MyComponent:=FindComponent('DataDirectionCheckBox'+IntToStr(i));
      (MyComponent as TCheckBox).Checked:=((MyComponent as TCheckBox).Tag and InByte)<>0;
    end;
  DataInTimer.Tag:=0;
end;


procedure TMainForm.EEPROMReadButtonClick(Sender: TObject);
var
  i:integer;
  DataByte:byte;
begin
  EEPROMStringGrid.Col:=1;
  for i:=0 to EEPROMStringGrid.RowCount-1 do
    begin
      if DoEEPROMRead(i,DataByte)=0 then
        begin
          EEPROMStringGrid.Cells[1,i]:=IntToStr(DataByte);
          EEPROMStringGrid.Row:=i;
        end
      else
        begin
          raise Exception.Create('Unable to read from EEPROM!'+#13+#10+'(maybe device is not present)');
        end;
    end;
end;

procedure TMainForm.EEPROMWriteButtonClick(Sender: TObject);
var
  i:integer;
  DataByte:integer;
begin
  EEPROMStringGrid.Col:=1;
  try
    for i:=0 to EEPROMStringGrid.RowCount-1 do
      begin
        EEPROMStringGrid.Row:=i;
        DataByte:=StrToInt(EEPROMStringGrid.Cells[1,i]);
        if (DataByte>255)or(DataByte<0) then
          raise Exception.Create('Number is not in BYTE range: 0-255 !');
        if DoEEPROMWrite(i,DataByte)<>0 then
          begin
            raise Exception.Create('Error to write to EEPROM!'+#13+#10+'(maybe device is not present)');
          end;
      end;
  except on EConvertError do
    begin
      ActiveControl:=EEPROMStringGrid;
      MessageBox(Handle,'Invalid BYTE number'+#13+#10+'(unable to convert to numeric value)',PChar(Caption),MB_ICONERROR);
    end
  else
    begin
      ActiveControl:=EEPROMStringGrid;
      raise;
    end;
  end;
end;


procedure TMainForm.RS232SendButtonClick(Sender: TObject);
type
  MyBuffer=array [0..100000] of byte;
var
  j,i:integer;
  P:MyBuffer;
  MyStr:string;
begin
  MyStr:=TerminalMemo.Text;
  i:=Length(MyStr);
  Screen.Cursor:=crHourGlass;
  TransmittingLabel.Visible:=true;
  TransmittingLabel.Repaint;
  try
    for j:=1 to i do
      begin
        P[j-1]:=byte(MyStr[j]);
      end;
    DoRS232BufferSend(P, i);
  finally
    Screen.Cursor:=crArrow;
    TransmittingLabel.Visible:=false;
    TransmittingLabel.Repaint;
  end;
end;


procedure TMainForm.RS232BaudrateSpinEditChange(Sender: TObject);
var
  RetVal:integer;
begin
  try
    RetVal:=DoSetRS232Baud(RS232BaudrateSpinEdit.Value);
    RS232BaudrateSpinEdit.Color:=clWindow;
    RS232BaudrateSpinEdit.Font.Style:=[];
    case RetVal of
      DEVICE_NOT_PRESENT:RS232BaudrateSpinEdit.Color:=clRed;
      INVALID_BAUDRATE: RS232BaudrateSpinEdit.Font.Style:=[fsStrikeOut];
    end;
  except
  end;
end;

procedure TMainForm.RS232ReadTimerTimer(Sender: TObject);
var
  BaudRate:integer;
  Databits:byte;
  Parity:byte;
  Stopbits:byte;
begin
  RS232ReadIntervalLabel.Caption:=IntToStr(RS232ReadTimer.Interval)+'ms';
  if DoGetRS232Baud(BaudRate)=NO_ERROR then
    begin
      RS232ReadBaudLabel.Caption:='='+IntToStr(BaudRate);
      DeviceNotPresentLabel.Visible:=false;
    end
  else
    begin
      DeviceNotPresentLabel.Visible:=true;
    end;
  if not DataBitsComboBox.DroppedDown then
    if DoGetRS232DataBits(Databits)=NO_ERROR then
      begin
        DataBitsComboBox.ItemIndex:=Databits-5;
        DeviceNotPresentLabel.Visible:=false;
      end
    else
      begin
        //DeviceNotPresentLabel.Visible:=true;
      end;
  if not ParityComboBox.DroppedDown then
    if DoGetRS232Parity(Parity)=NO_ERROR then
      begin
        ParityComboBox.ItemIndex:=Parity;
        DeviceNotPresentLabel.Visible:=false;
      end
    else
      begin
        //DeviceNotPresentLabel.Visible:=true;
      end;
  if not StopBitsComboBox.DroppedDown then
    if DoGetRS232StopBits(Stopbits)=NO_ERROR then
      begin
        StopBitsComboBox.ItemIndex:=Stopbits;
        DeviceNotPresentLabel.Visible:=false;
      end
    else
      begin
        //DeviceNotPresentLabel.Visible:=true;
      end;
end;

procedure TMainForm.CopyRightLabelClick(Sender: TObject);
begin
  ShellExecute(Handle,'open','http://www.cesko.host.sk',nil,'.',0);
  ShellExecute(Handle,'open','http://www.atmel.com',nil,'.',0);
end;

procedure TMainForm.RS232BufferTimerTimer(Sender: TObject);
var
  DataLength:integer;
  i:integer;
begin
  DataLength:=SizeOf(InputRS232Data);
  if (DoGetRS232Buffer(InputRS232Data,DataLength)<>NO_ERROR) then
    begin
      //DeviceNotPresentLabel.Visible:=true;
      Exit;
    end;
  if (DataLength=0) then Exit;
  Screen.Cursor:=crAppStart;
  ReceivingLabel.Visible:=true;
  ReceivingLabel.Repaint;
  try
    TerminalMemo.SelStart:=Length(TerminalMemo.Text);
    TerminalMemo.SelLength:=0;
    for i:=0 to DataLength-1 do
      begin
        RS232BufferMemo.Lines.Add(IntToStr(InputRS232Data[i])+' -> '+IntToHex(InputRS232Data[i],2)+' -> '+chr(InputRS232Data[i]));
        TerminalMemo.SelText:=chr(InputRS232Data[i]);
      end;
  finally
    Screen.Cursor:=crArrow;
    ReceivingLabel.Visible:=false;
    ReceivingLabel.Repaint;
  end;
end;

procedure TMainForm.RS232SendEditKeyPress(Sender: TObject; var Key: Char);
begin
  DoRS232Send(byte(Key));
end;

procedure TMainForm.DataBitsComboBoxChange(Sender: TObject);
var
  RetVal:integer;
begin
  RetVal:=DoSetRS232DataBits(StrToInt(DataBitsComboBox.Text));
  DataBitsComboBox.Color:=clWindow;
  DataBitsComboBox.Font.Style:=[];
  case RetVal of
    DEVICE_NOT_PRESENT: DataBitsComboBox.Color:=clRed;
    INVALID_DATABITS: DataBitsComboBox.Font.Style:=[fsStrikeOut];
  end;
end;

procedure TMainForm.ParityComboBoxChange(Sender: TObject);
var
  RetVal:integer;
begin
  RetVal:=DoSetRS232Parity(ParityComboBox.ItemIndex);
  ParityComboBox.Color:=clWindow;
  ParityComboBox.Font.Style:=[];
  case RetVal of
    DEVICE_NOT_PRESENT: ParityComboBox.Color:=clRed;
    INVALID_PARITY: ParityComboBox.Font.Style:=[fsStrikeOut];
  end;
end;

procedure TMainForm.StopBitsComboBoxChange(Sender: TObject);
var
  RetVal:integer;
begin
  RetVal:=DoSetRS232StopBits(StopBitsComboBox.ItemIndex);
  StopBitsComboBox.Color:=clWindow;
  StopBitsComboBox.Font.Style:=[];
  case RetVal of
    DEVICE_NOT_PRESENT: StopBitsComboBox.Color:=clRed;
    INVALID_STOPBITS: StopBitsComboBox.Font.Style:=[fsStrikeOut];
  end;
end;


procedure TMainForm.FormResize(Sender: TObject);
begin
  TerminalMemo.Width:= ClientWidth-EEPROMStringGrid.Width-TerminalMemo.Left;
  EEPROMStringGrid.Left:=ClientWidth-EEPROMStringGrid.Width;
  TerminalMemo.Width:= EEPROMStringGrid.Left-TerminalMemo.Left;
  TerminalMemo.Height:= ClientHeight-TerminalMemo.Top;
  RS232BufferMemo.Height:= ClientHeight-RS232BufferMemo.Top;
end;





procedure TMainForm.EEPROMSizeSpinEditChange(Sender: TObject);
var
  i:integer;
begin
  EEPROMStringGrid.RowCount:=EEPROMSizeSpinEdit.Value;
  for i:=0 to EEPROMStringGrid.RowCount-1 do
    EEPROMStringGrid.Cells[0,i]:=IntToStr(i);  
end;


procedure TMainForm.PortChoiceRadioGroupClick(Sender: TObject);
begin
  DataInTimerTimer(self);
end;


end.

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美午夜寂寞影院| 欧美亚洲一区三区| 亚洲影视在线观看| 久久亚洲综合av| 91亚洲精品久久久蜜桃网站| 激情偷乱视频一区二区三区| 亚洲综合激情另类小说区| 亚洲国产精品成人久久综合一区| 欧美一卡二卡三卡四卡| 91啪九色porn原创视频在线观看| 九九热在线视频观看这里只有精品| 一区二区三区高清在线| 中文字幕 久热精品 视频在线 | 欧美日韩国产综合一区二区三区| 国产麻豆视频一区二区| 蜜臀av性久久久久蜜臀aⅴ| 亚洲精品国产第一综合99久久| 国产欧美一区二区精品忘忧草 | 在线亚洲人成电影网站色www| 老司机一区二区| 亚洲成人自拍网| 亚洲人成网站色在线观看| 久久久久综合网| 久久这里都是精品| 精品久久久久久最新网址| 91精品国产欧美一区二区18| 欧美怡红院视频| 欧美亚洲动漫精品| 日本二三区不卡| 91久久精品一区二区三| aa级大片欧美| av在线免费不卡| 9人人澡人人爽人人精品| 成人国产视频在线观看| av资源网一区| 日本韩国一区二区三区视频| 99在线精品观看| 色婷婷激情一区二区三区| 色综合色狠狠天天综合色| 99久久精品免费精品国产| 色哟哟一区二区在线观看| 99精品视频在线免费观看| 97se亚洲国产综合自在线观| 91麻豆成人久久精品二区三区| 91婷婷韩国欧美一区二区| 91麻豆国产福利在线观看| 欧美在线观看一区| 91麻豆精品国产自产在线| 日韩一区二区电影网| 欧美成人国产一区二区| 国产亚洲精品中文字幕| 国产精品久久久久一区二区三区共| 国产精品久久久久久福利一牛影视| 国产精品初高中害羞小美女文| 亚洲靠逼com| 午夜激情久久久| 奇米影视在线99精品| 欧美精品丝袜中出| 欧美成人综合网站| 中文字幕成人网| 亚洲综合一二三区| 日本伊人色综合网| 国产精品一区在线观看你懂的| 国产91精品露脸国语对白| 91亚洲永久精品| 91精品国产综合久久福利软件| 久久综合九色综合97婷婷| 国产精品视频免费看| 亚洲国产日产av| 九一久久久久久| 91网站在线播放| 欧美一区二区网站| 久久精品免视看| 一区二区视频免费在线观看| 天堂在线一区二区| 高清在线不卡av| 欧美亚一区二区| 久久久五月婷婷| 亚洲成人一区二区| 国产a区久久久| 欧美电影在线免费观看| 国产日韩欧美不卡| 亚洲午夜久久久| 国产在线一区二区| 91成人看片片| 国产亚洲一二三区| 视频在线观看91| 丁香一区二区三区| 8x8x8国产精品| 中文字幕不卡一区| 亚洲成av人片www| 国产suv精品一区二区三区| 欧美美女激情18p| www国产精品av| 日韩你懂的在线播放| 1024成人网| 久久99精品久久久久久动态图| 色婷婷综合久久久中文字幕| 欧美mv日韩mv国产| 亚洲.国产.中文慕字在线| 波多野结衣中文字幕一区二区三区 | 2020国产精品久久精品美国| 亚洲狠狠爱一区二区三区| av在线播放不卡| 久久精品免费在线观看| 麻豆极品一区二区三区| 在线视频欧美精品| 成人欧美一区二区三区黑人麻豆| 奇米色777欧美一区二区| 在线亚洲人成电影网站色www| 国产精品少妇自拍| 国产成人自拍网| 精品粉嫩aⅴ一区二区三区四区| 亚洲一区二区三区四区五区中文| 成人三级伦理片| 国产欧美视频在线观看| 狠狠色综合日日| 精品国产不卡一区二区三区| 日韩精品一二三四| 欧美色大人视频| 亚洲一级电影视频| 91丝袜美腿高跟国产极品老师| 久久久国产午夜精品| 国产一区二区三区香蕉| 日韩精品一区二区在线观看| 日韩av不卡一区二区| 91精品一区二区三区久久久久久 | 亚州成人在线电影| 色狠狠桃花综合| 亚洲另类中文字| 色狠狠av一区二区三区| 一区二区免费看| 欧美性欧美巨大黑白大战| 亚洲一区二区三区美女| 精品视频一区 二区 三区| 亚洲bt欧美bt精品| 欧美一卡2卡3卡4卡| 美女久久久精品| 久久香蕉国产线看观看99| 国产iv一区二区三区| 亚洲视频在线一区观看| 色婷婷亚洲婷婷| 亚洲成人一区二区| 日韩欧美一区电影| 国产精品996| 国产精品初高中害羞小美女文| 91亚洲国产成人精品一区二区三| 亚洲精品高清视频在线观看| 欧美视频一二三区| 日韩电影网1区2区| 久久久久久免费| 91蜜桃网址入口| 性做久久久久久免费观看欧美| 日韩欧美一区二区视频| 国产成人在线看| 一区二区三区产品免费精品久久75| 欧美在线制服丝袜| 蜜臀国产一区二区三区在线播放| 久久综合九色综合欧美98| 99这里只有久久精品视频| 亚洲一区在线播放| 日韩精品一区二区在线观看| 成人激情视频网站| 日韩欧美www| 亚洲成人午夜影院| 日韩一区二区三区观看| 国产不卡视频在线播放| 亚洲已满18点击进入久久| 91精品国产欧美一区二区成人| 国产aⅴ精品一区二区三区色成熟| 亚洲精品日韩专区silk| 日韩一区二区三区观看| 成人黄色777网| 婷婷夜色潮精品综合在线| 久久久www成人免费毛片麻豆 | 中文字幕制服丝袜成人av| 欧美日韩免费观看一区二区三区| 另类调教123区| 亚洲欧美韩国综合色| 精品免费视频.| 在线视频欧美区| 国产激情一区二区三区四区| 夜夜精品视频一区二区| 精品动漫一区二区三区在线观看| 99re这里只有精品首页| 美女视频网站黄色亚洲| 亚洲天堂网中文字| 欧美精品久久一区| 成人av在线网站| 日韩精品成人一区二区三区| 国产精品久久午夜夜伦鲁鲁| 51午夜精品国产| 91亚洲精品久久久蜜桃| 国产又黄又大久久| 日韩电影在线免费观看| 亚洲美女视频在线观看| 久久嫩草精品久久久精品一| 在线播放/欧美激情| 色综合天天做天天爱| 国产激情91久久精品导航|