An93 – Silicon Laboratories SI2493/57/34/15/04 User Manual
Page 265

AN93
Rev. 1.3
265
AssertRTS(true); //RTS=1 for transmitting
Delay(300); //Delay to allow the line to turn around
// Alternatively use USE CTS
iLength = strlen(caUA_PKT_STR);
WriteFile(hCom, caUA_PKT_STR, iLength, &ulNoOfbytes, 0); // Tx UA messge
Delay(100);
while(1) // Short training happens now!
{
AssertRTS(false); printf("RTS=0 Rx "); //RTS=0 for receiving
cpInputRd=WaitForResponse(caRX_PKT_STR,cpInputRd,3000);//Rx RR message
iLength = strlen(cpInput_test);
for (int i=0; i printf("%02x ", (unsigned char)cpInput_test[i]);printf("**%d ", *cpInputRd); //Alternatively use CTS Delay(150); do{ // flush out the bytes for last RX packets. BOOL bError = !ReadFile(hCom, cpInputWr, 1, &ulNoOfbytes, 0); //ulNoOfbytes=1 printf("%02x ", (unsigned char)cpInputWr[0]); }while (ulNoOfbytes); printf("\n"); AssertRTS(true); printf("RTS=1 Tx "); //RTS=1 for transmitting Delay(50); // morrie 01/20/06 iLength = strlen(caRR_PKT_STR); for (i=0; i WriteFile(hCom, caRR_PKT_STR, iLength, &ulNoOfbytes,0); //Tx RR message Delay(100); //Delay x ms to complete TX sending before set RTS=0 for RX } return; } // ------------------------------------------------------------------------------------- // Use this call to check CTS status // DWORD iEVentMAsk; // wait for EV_CTS // BOOL WaitCommEvent(HANDLE hFile, &iEVentMAsk, LPOVERLAPPED lpOverlapped); // ---------------------------------------------------------------- void SetupSerPort() { BOOL bSuccess; hCom = CreateFile(pcCommPort, GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL); if (hCom == INVALID_HANDLE_VALUE) { // Handle the error. printf ("CreateFile failed with error %d.\n", GetLastError()); exit(1);