我正在将 char 'a' 从 pc 发送到 MCU,然后通过串行通信将其返回给 PC。准确地说,它应该显示“a”,但没有任何显示。我已经在超级终端上进行了测试,它工作正常。
如果我的代码有任何问题,请指出。谢谢你。
我猜它在发送一个字符时效果很好,所以我只发布了我的代码的一部分。
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]);
}
}