|
디지털 멀티미터가 같은 실행(전압 측정)을 여러번 반복하도록 하려면 명령어를 어떻게 보내줘야 하는지요..
아래 코드를 보시면 아시겠지만, Start 버튼을 클릭했을 때.. 한 번 밖에는 실행이 안됩니다.
그리고, PringMsg()부분에서는 읽어온 전압을 표에 나타내야 하는데..
현재는 표의 (1,1)부분에만 나타납니다.
전압을 읽어와서 표에 (1,1)(1,2)(1,3)... 이렇게 나타내려면 어떻게 해야하는지요?
혹 너무 쉬운 문제인데 해결 못하는건 아닌지해서 어제 내내 고민하다가 이렇게 질문을 올립니다.
아시는 분들... 답변해 주시면 감사하겠습니다.
//---------------------------------------------------------------------------
void TForm1::PrintMsg(Byte*ch, long len)
{
int i;
int j;
char tmp[1000], tmp2[10];
float f;
tmp[0] = 0;
f = atof(ch);
for(j=0; j<len; j++){
sprintf(tmp2, "%c", ch[j]);
StringGrid1->Cells[1][1] = f;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Wincom1ondata(TObject *Sender, long port_number)
{
long ret, len;
Byte rbuff[2048];
TVariant va;
va.vt = varByte;
va.pcVal = rbuff;
len = 0;
ret = Wincom1->readcom(m_PortNumber, &va, &len);
PrintMsg(rbuff, len);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::StartBtnClick(TObject *Sender)
{
long ret;
int getlen;
char *Volt = "MEASure:VOLTage:DC?\n";
getlen = strlen(Volt);
ret = Wincom1->writecom(m_PortNumber, WideString(Volt), getlen);
StopBtn->Enabled = true;
}
//---------------------------------------------------------------------------
|