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

📄 main.cpp

📁 1. API 为FlashDSO的接口,包含 FlashDSOAPI.DLL, FlashDSOAPI.LIB,FlashDSOAPI.H 使用手册 2.TestAPI 为FlashDSO API
💻 CPP
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "Main.h"
#include "FlashDSOAPI.h"

//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TMainForm *MainForm;
//---------------------------------------------------------------------------
__fastcall TMainForm::TMainForm(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TMainForm::FormCreate(TObject *Sender)
{
        iPort = GetPort();
        if ( iPort == 0 )
        {
                Edit1->Text = "没有连接FlashDSO";
                Button1->Enabled = false;
        }
        else
        {
                Edit1->Text = "成功连接FlashDSO";
                Button1->Enabled = true;
        }
}
//---------------------------------------------------------------------------


void __fastcall TMainForm::Button1Click(TObject *Sender)
{
        OpenDSO(iPort);

        SetAutoTriger();
        SetAC();
        SetClock(VA_TIMEBASE_1);
        SetGain(VA_OP_X0);

        Timer1->Interval = 200;
        Timer1->Enabled = true;
}
//---------------------------------------------------------------------------

void __fastcall TMainForm::FormClose(TObject *Sender, TCloseAction &Action)
{
        Timer1->Enabled = false;
        StopDSO();
        ShutDSO();
}
//---------------------------------------------------------------------------

void __fastcall TMainForm::Button2Click(TObject *Sender)
{
        Timer1->Enabled = false;
        StopDSO();
        ShutDSO();
}
//---------------------------------------------------------------------------

void __fastcall TMainForm::RadioButton1Click(TObject *Sender)
{
        SetClock(VA_TIMEBASE_0);
}
//---------------------------------------------------------------------------

void __fastcall TMainForm::RadioButton2Click(TObject *Sender)
{
        SetClock(VA_TIMEBASE_1);
}
//---------------------------------------------------------------------------

void __fastcall TMainForm::RadioButton3Click(TObject *Sender)
{
        SetClock(VA_TIMEBASE_2);

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

void __fastcall TMainForm::RadioButton4Click(TObject *Sender)
{
        SetClock(VA_TIMEBASE_3);

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

void __fastcall TMainForm::RadioButton5Click(TObject *Sender)
{
        SetClock(VA_TIMEBASE_4);

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

void __fastcall TMainForm::RadioButton6Click(TObject *Sender)
{
        SetClock(VA_TIMEBASE_5);

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

void __fastcall TMainForm::RadioButton7Click(TObject *Sender)
{
        SetClock(VA_TIMEBASE_6);

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

void __fastcall TMainForm::RadioButton8Click(TObject *Sender)
{
        SetClock(VA_TIMEBASE_7);

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

void __fastcall TMainForm::RadioButton9Click(TObject *Sender)
{
        SetClock(VA_TIMEBASE_8);

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

void __fastcall TMainForm::RadioButton10Click(TObject *Sender)
{
        SetClock(VA_TIMEBASE_9);

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

void __fastcall TMainForm::RadioButton11Click(TObject *Sender)
{
        SetClock(VA_TIMEBASE_10);
}
//---------------------------------------------------------------------------

void __fastcall TMainForm::RadioButton12Click(TObject *Sender)
{
        SetClock(VA_TIMEBASE_11);
}
//---------------------------------------------------------------------------

void __fastcall TMainForm::RadioButton13Click(TObject *Sender)
{
        SetAutoTriger();        
}
//---------------------------------------------------------------------------

void __fastcall TMainForm::RadioButton14Click(TObject *Sender)
{
        SetRiseTriger();
}
//---------------------------------------------------------------------------

void __fastcall TMainForm::RadioButton15Click(TObject *Sender)
{
        SetFallTriger();
}
//---------------------------------------------------------------------------

void __fastcall TMainForm::RadioButton16Click(TObject *Sender)
{
        SetDC();        
}
//---------------------------------------------------------------------------

void __fastcall TMainForm::RadioButton17Click(TObject *Sender)
{
        SetAC();        
}
//---------------------------------------------------------------------------

void __fastcall TMainForm::RadioButton19Click(TObject *Sender)
{
        SetGain(VA_OP_X0);
}
//---------------------------------------------------------------------------

void __fastcall TMainForm::RadioButton18Click(TObject *Sender)
{
        SetGain(VA_OP_X1);

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

void __fastcall TMainForm::RadioButton20Click(TObject *Sender)
{
        SetGain(VA_OP_X2);

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

void __fastcall TMainForm::Timer1Timer(TObject *Sender)
{
        int iCurrentData;
        int i;

        unsigned char ChannelData1[2048];
        unsigned char ChannelData2[2048];
        //获取数据
        StartDSO();
        ReadDSOData(&ChannelData1[0],&ChannelData2[0]);

        //显示通道一数据
        iCurrentData = Image1->Height - ChannelData1[0]/1.5;
        Image1->Canvas->Rectangle(0,0,Image1->Width,Image1->Height);
        Image1->Canvas->MoveTo(1,iCurrentData);
        for ( i = 1; i < Image1->Width ;i++ )
        {
                Image1->Canvas->LineTo(i,Image1->Height - ChannelData1[i]/1.5);
        }

        //显示通道二数据
        iCurrentData = Image3->Height - ChannelData2[0]/1.5;
        Image3->Canvas->Rectangle(0,0,Image3->Width,Image3->Height);
        Image3->Canvas->MoveTo(1,iCurrentData);
        for ( i = 1; i < Image3->Width ;i++ )
        {
                Image3->Canvas->LineTo(i,Image3->Height - ChannelData2[i]/1.5);
        }
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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