void QueryEnergyAbsQ(void) { uchar n = PushAddress2Bcc(); PushChar1Bcc('E'); PushChar1Bcc('N'); PushChar1Bcc('T'); PushChar1Bcc('0'); PushChar1Bcc('0'); PushChar1Bcc('('); PushChar1Bcc('1'); PushChar1Bcc(')'); PushChar1Bcc(0x03); BccQueryIO(1+6*28+2, n+9+1, 6); }
void QueryOptionQ(void) { InitPush(0); PushChar1Bcc(0x06); uchar i; switch (mppoPorts[ diCurr.ibPort ].ibBaud) { case 0: i = '2'; break; case 1: i = '3'; break; case 2: i = '4'; break; case 3: i = '5'; break; case 4: i = '6'; break; default: i = '7'; break; } PushChar1Bcc('0'); PushChar1Bcc(i); PushChar1Bcc('1'); PushChar1Bcc(0x0D); PushChar1Bcc(0x0A); Query(1+6+2, 4+2, 1); }
void QueryHeaderQ_22(uchar ibLine) { InitPush(0); PushChar1Bcc(0x01); PushChar1Bcc('R'); PushChar1Bcc('1'); PushChar1Bcc(0x02); PushChar1Bcc('V'); PushChar1Bcc('P'); PushChar1Bcc('R'); switch (ibLine) { case 0: PushChar1Bcc('0'); PushChar1Bcc('1'); break; case 1: PushChar1Bcc('0'); PushChar1Bcc('2'); break; case 2: PushChar1Bcc('0'); PushChar1Bcc('3'); break; case 3: PushChar1Bcc('0'); PushChar1Bcc('4'); break; default: ASSERT(false); } PushChar1Bcc('('); PushChar2Bcc(tiDig.bDay); PushChar1Bcc('.'); PushChar2Bcc(tiDig.bMonth); PushChar1Bcc('.'); PushChar2Bcc(tiDig.bYear); PushChar1Bcc(')'); PushChar1Bcc(0x03); BccQueryIO(2000, 4+16+1, 48); }
void QueryEnergySpecQ(void) { InitPush(0); PushChar1Bcc(0x01); PushChar1Bcc('R'); PushChar1Bcc('1'); PushChar1Bcc(0x02); PushChar1Bcc('E'); PushChar1Bcc('N'); PushChar1Bcc('T'); PushChar1Bcc('0'); PushChar1Bcc('0'); PushChar1Bcc('('); PushChar1Bcc('1'); PushChar1Bcc(')'); PushChar1Bcc(0x03); BccQueryIO(1+6*28+2, 4+9+1, 6); }
void QueryEnergyMonQ(time ti) { uchar n = PushAddress2Bcc(); PushChar1Bcc('E'); PushChar1Bcc('N'); PushChar1Bcc('M'); PushChar1Bcc('0'); PushChar1Bcc('0'); PushChar1Bcc('('); PushChar2Bcc(ti.bMonth); PushChar1Bcc('.'); PushChar2Bcc(ti.bYear); PushChar1Bcc(','); PushChar1Bcc('1'); PushChar1Bcc(')'); PushChar1Bcc(0x03); BccQueryIO(1+6*28+2, n+15+1, 6); }
void QueryCorrectQ(void) { InitPush(0); PushChar1Bcc('/'); PushChar1Bcc('?'); PushChar1Bcc('C'); PushChar1Bcc('T'); PushChar1Bcc('I'); PushChar1Bcc('M'); PushChar1Bcc('E'); PushChar1Bcc('('); PushChar2Bcc(tiCurr.bHour); PushChar1Bcc(':'); PushChar2Bcc(tiCurr.bMinute); PushChar1Bcc(':'); PushChar2Bcc(tiCurr.bSecond); PushChar1Bcc(')'); PushChar1Bcc(0x03); BccQueryIO(1000, 2+16+1, 0); }
static void QueryHeaderU_Plc_Inner(void) { InitPush(0); PushChar1Bcc(0x01); PushChar1Bcc('R'); PushChar1Bcc('1'); PushChar1Bcc(0x02); PushChar1Bcc('G'); PushChar1Bcc('R'); PushChar1Bcc('A'); PushChar1Bcc('P'); PushChar1Bcc((ibMinor == 0) ? 'E' : 'I'); PushChar1Bcc('('); PushChar2Bcc(tiDig.bDay); PushChar1Bcc('.'); PushChar2Bcc(tiDig.bMonth); PushChar1Bcc('.'); PushChar2Bcc(tiDig.bYear); PushChar1Bcc('.'); PushChar2Bcc(tiDig.bHour*2 + tiDig.bMinute/30 + 1); PushChar1Bcc('.'); PushChar2Bcc(bPlcUSize); PushChar1Bcc(')'); PushChar1Bcc(0x03); BccQueryIO1(2000, 4+22+1, bPlcUSize); }