⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 counter.cpp

📁 串口调试程序
💻 CPP
📖 第 1 页 / 共 2 页
字号:

void __fastcall TForm1::Button10Click(TObject *Sender)
{
m=-m;                             // 递增/递减
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button11Click(TObject *Sender)
{
a=StrToInt(Edit1->Text);          //手动输入
b=StrToInt(Edit2->Text);
c=StrToInt(Edit3->Text);
d=StrToInt(Edit4->Text);
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button12Click(TObject *Sender)
{
if(Timer4->Interval>0)
Timer4->Enabled=true;              //启动定时器4
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Timer4Timer(TObject *Sender)
{
if(n==1)                          //实现四位数递增显示
{
e=e+1;
if(e>9)
{
e=0;
f=f+1;
if(f>9)
{
f=0;
g=g+1;
if(g>9)
{
g=0;
h=h+1;
if(h>9)
{
h=0;
}
}
}
}
Form1->Edit5->Text=IntToStr(e);     //将整形数据转换为字符串输出
Form1->Edit6->Text=IntToStr(f);
Form1->Edit7->Text=IntToStr(g);
Form1->Edit8->Text=IntToStr(h);
}

else                                 //实现四位数递减显示
{
  if(e>0)
     e=e-1;
  else if(e==0)
  {
   if(f>0)
    {
     f=f-1;
     e=9;
    }
    else if(f==0)
      {
        if(g>0)
         {
          g=g-1;
          g=9;
         }
         else if(g==0)
         {
          if(h>0)
           {
            h=h-1;
            g=9;
           }
           else if(h==0)
           e=f=g=h=9;
         }
      }
  }

Form1->Edit5->Text=IntToStr(e);      //将整形数据转换为字符串输出
Form1->Edit6->Text=IntToStr(f);
Form1->Edit7->Text=IntToStr(g);
Form1->Edit8->Text=IntToStr(h);
}

}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button13Click(TObject *Sender)
{
Timer4->Enabled=false;               //关闭定时器4
}
//---------------------------------------------------------------------------





void __fastcall TForm1::Button18Click(TObject *Sender)
{
e=0;                               //数据清零
f=0;
g=0;
h=0;
Form1->Edit5->Text=IntToStr(e);    //将整形数据转换为字符串输出
Form1->Edit6->Text=IntToStr(f);
Form1->Edit7->Text=IntToStr(g);
Form1->Edit8->Text=IntToStr(h);
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button17Click(TObject *Sender)
{
e=StrToInt(Edit5->Text);           //手动输入
f=StrToInt(Edit6->Text);
g=StrToInt(Edit7->Text);
h=StrToInt(Edit8->Text);
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button16Click(TObject *Sender)
{
n=-n;                               //递增/递减
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button15Click(TObject *Sender)
{
if(MSComm1->PortOpen==false)        //开启自动发送数据
ShowMessage("串口未打开!");
else if(Timer3->Enabled==true)
ShowMessage("请先停止计数器1发送数据!");
else if(Timer6->Enabled==true)
ShowMessage("请先停止计数器联合发送数据!");
else
Timer5->Enabled=true;
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Timer5Timer(TObject *Sender)
{
MSComm1->Output=StringToOleStr("b");         //定时器5自动发送程序
MSComm1->Output=StringToOleStr(Edit8->Text);
MSComm1->Output=StringToOleStr(Edit7->Text);
MSComm1->Output=StringToOleStr(Edit6->Text);
MSComm1->Output=StringToOleStr(Edit5->Text);

MSComm1->Output=StringToOleStr("b");         //定时器5自动发送程序
MSComm1->Output=StringToOleStr(Edit8->Text);
MSComm1->Output=StringToOleStr(Edit7->Text);
MSComm1->Output=StringToOleStr(Edit6->Text);
MSComm1->Output=StringToOleStr(Edit5->Text);
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button14Click(TObject *Sender)
{
if(MSComm1->PortOpen==false)                  //手动发送数据
ShowMessage("串口未打开!");
else
{
MSComm1->Output=StringToOleStr("b");
MSComm1->Output=StringToOleStr(Edit8->Text);
MSComm1->Output=StringToOleStr(Edit7->Text);
MSComm1->Output=StringToOleStr(Edit6->Text);
MSComm1->Output=StringToOleStr(Edit5->Text);

MSComm1->Output=StringToOleStr("b");         //定时器5自动发送程序
MSComm1->Output=StringToOleStr(Edit8->Text);
MSComm1->Output=StringToOleStr(Edit7->Text);
MSComm1->Output=StringToOleStr(Edit6->Text);
MSComm1->Output=StringToOleStr(Edit5->Text);
}
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button19Click(TObject *Sender)
{
Timer5->Enabled=false;                     //停止自动发送数据
}
//---------------------------------------------------------------------------


void __fastcall TForm1::MSComm1Comm(TObject *Sender)
{
AnsiString str;                          //声明一个AnsiString类型的变量
OleVariant s;                            //声明一个用于接收数据的OleVariant变量。
if(MSComm1->CommEvent==comEvReceive)     // 接收缓冲区中是否收到Rthreshold个字符。
{
 if(MSComm1->InBufferCount)              // 是否有字符驻留在接收缓冲区等待被取出
  {
   s=MSComm1->Input;                     //接收数据
   str=s.AsType(varString);              //把接收到的OleVariant变量转换成AnsiString类型
   Memo1->Text=Memo1->Text+str;          //把接收到的数据显示在Memo1中。
  }
}

if(str==1)
{
//Timer1->Enabled=false;
a=0;                                     //数据清零
b=0;
c=0;
d=0;
Form1->Edit1->Text=IntToStr(a);          //将整形数据转换为字符串输出
Form1->Edit2->Text=IntToStr(b);
Form1->Edit3->Text=IntToStr(c);
Form1->Edit4->Text=IntToStr(d);
//Timer1->Enabled=true;
}
else if(str==2)
{
Timer1->Enabled=false;                  //关闭定时器1
}
else if(str==3)
Timer1->Enabled=true;
else
Timer1->Enabled=true;

}
//---------------------------------------------------------------------------



void __fastcall TForm1::Timer6Timer(TObject *Sender)
{

MSComm1->Output=StringToOleStr("a");            //计数器1自动发送
MSComm1->Output=StringToOleStr(Edit4->Text);
MSComm1->Output=StringToOleStr(Edit3->Text);
MSComm1->Output=StringToOleStr(Edit2->Text);
MSComm1->Output=StringToOleStr(Edit1->Text);
for(i=0;i<1000;i++)
{}
MSComm1->Output=StringToOleStr("b");            //计数器2自动发送
MSComm1->Output=StringToOleStr(Edit8->Text);
MSComm1->Output=StringToOleStr(Edit7->Text);
MSComm1->Output=StringToOleStr(Edit6->Text);
MSComm1->Output=StringToOleStr(Edit5->Text);

}
//---------------------------------------------------------------------------


void __fastcall TForm1::Button22Click(TObject *Sender)
{
if(MSComm1->PortOpen==false)                   //开启联合发送数据
ShowMessage("串口未打开!");
else if(Timer3->Enabled==true)
ShowMessage("请先停止计数器1自动发送");
else if(Timer5->Enabled==true)
ShowMessage("请先停止计数器2自动发送");
else
Timer6->Enabled=true;      
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button23Click(TObject *Sender)
{
Timer6->Enabled=false;        
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ScrollBar1Scroll(TObject *Sender,
      TScrollCode ScrollCode, int &ScrollPos)
{
scr1=ScrollBar1->Position;
Form1->Edit9->Text=IntToStr(scr1);
if(scr1>0)
Timer1->Interval=1000/scr1;
else
Timer1->Interval=0;
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ScrollBar2Scroll(TObject *Sender,
      TScrollCode ScrollCode, int &ScrollPos)
{
scr2=ScrollBar2->Position;
Form1->Edit10->Text=IntToStr(scr2);
if(scr2>0)
Timer4->Interval=1000/scr2;
else
Timer4->Interval=0;
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -