void readMeterPower(unsigned char*ad,unsigned char* pow,TTY_INFO *ptty1) { unsigned char pow_command[14]; unsigned char pow_buf[20]; pow_command[0]=0x68; int j; for(j=1;j<7;j++) { pow_command[j]=ad[j-1]; } pow_command[7]=0x68; pow_command[8]=0x01; pow_command[9]=0x02; //发送数据 +033 pow_command[10]=0x43;//0x10+0x33 pow_command[11]=0xc3;//0x90+0x33 pow_command[12]=CheckSum(pow_command,12); pow_command[13]=0x16; sendnTTY(ptty1,pow_command,14); // printf("----send bytes-----\n"); int in=0; for(in=0;in<14;in++) { //printf("[%2d]%02x ",in,pow_command[in]); } // printf("----------------\n"); int size=recvnTTY(ptty1,pow_buf,19); //接受数据 -0x33 if(size!=19) fprintf(stderr, "Receive data error%d\n",size); //printf("Receive data error%d\n",size); // printf("---rece bytes----\n"); for(j=0;j<19;j++) { pow[18-j]= pow_buf[j]-0x33; //pow先存高字节---逆序 } // printf("----------------\n"); // printf("+++++++++++++\n"); for(j=0;j<19;j++) { // printf("[%2d]%02x ",j,pow[18-j]); } // printf("+++++++++++++\n"); pow[19]='\0'; }
int UsbHubTest::recv(char *pbuf, int size) { return recvnTTY(m_ptty, pbuf, size);; }