PCからMCUに文字「a」を送信し、シリアル通信を介してPCに戻します。正確には'a'と表示されるはずなのに何も表示されません。ハイパーターミナルでテストしましたが、正常に動作します。
私のコードに問題がある場合は、指摘してください。ありがとうございました。
char を送信すると問題なく動作するので、コードの一部のみを投稿します。
DWORD dwCommModemStatus;
DWORD dwBytesTransferred;
DWORD bytesWritten;
char receivedData[2] = {0};
char data= 'a';
bool sendChar = WriteFile(hSerial,&data,1,&bytesWritten,NULL);
if(!sendChar){
printf("WriteFile ERROR\n");
}
SetCommMask(hSerial,EV_RXCHAR);
WaitCommEvent(hSerial, &dwCommModemStatus,0);
if(dwCommModemStatus & EV_RXCHAR){
if(!ReadFile(hSerial,receivedData,1,&dwBytesTransferred,0)){
printf("ReadFile Error\n");
}else{
printf("%c\n",receivedData[0]);
}
}