int BthModScan( IN BthMod_T *pMod ) { int ret = E_FAIL; int i; char Buf[MAX_LINE]; DBG_MSG(DBG_TRACE, "%s\n", __FUNCTION__); for (i = 0; i < COUNTOF(gBthModBaudTable); i = i + 1) { DBG_MSG(DBG_TRACE, "Scan: port %s, rate %d\n", pMod->Name, gBthModBaudTable[i].uRate); ret = UartOpen(pMod->hUart, pMod->Name, gBthModBaudTable[i].uRate, UART_DATA_BITS_8, UART_PARITY_NONE, UART_STOP_1); CHECK_RETVAL(ret, ExitOnFailure); /* Ensure we are flowed on */ ret = UartSetStatus(pMod->hUart, UART_STATUS_SETRTS); CHECK_RETVAL(ret, ExitOnFailure); /* Attempt to exit command mode, we need to be in a known state */ ret = UartLineWrite2(pMod->hUart, "\n---\n", 100, 50); CHECK_RETVAL(ret, ExitOnFailure); /* Dump the read data, we do not chare what was returned */ ret = UartPurge(pMod->hUart); CHECK_RETVAL(ret, ExitOnFailure); /* Attempt to enter command mode */ ret = UartLineWrite2(pMod->hUart, "$$$", 100, 50); CHECK_RETVAL(ret, ExitOnFailure); /* Read the response, we should see the cmd prompt */ ret = UartLineRead(pMod->hUart, Buf, sizeof(Buf), 100); if (FAILED(ret) && (ret != E_TIMEOUT)) { CHECK_RETVAL(ret, ExitOnFailure); } /* Have we entered command mode */ if (SUCCEEDED(ret) && !strncmp(Buf, "CMD", 3)) { ret = (i == 0) ? S_OK : S_FALSE; break; } UartClose(pMod->hUart); } ExitOnFailure: return ret; }
//------------------------------------------------------- //Function: //Desc : //Input : //Output: //Return: //Others: //Author: //Date : 2011/03/01 //------------------------------------------------------- void system_inital(void) { WaitUs(5); mcu_clk_inital(); mcu_io_inital(); memset(&system, 0, sizeof(SYS_STRUCT)); DISABLE_INTERRUPT; InitSysTimer(); WaitUs(600); // system_read_MTPrecord(); BK2433_RF_Initial(); AudioInit(); if(bUSBMode) usb_ini(); ENABLE_INTERRUPT; #ifdef DEBUG UartOpen(); #endif PowerUp_RF(); }
int main(int argc, char* argv[]) { int retval = 0; if (argc < 2) { printf("Usage: phc_log <COM port> {<JRM list>}\n"); #ifdef WIN32 printf(" <COM port> is e.g. COM1, COM2, etc.\n"); #else printf(" <COM port> is e.g. /dev/ttyS0, /dev/ttyS1, etc.\n"); #endif printf(" <JRM list> is a comma/dash separated list of JRM modules\n"); printf("Example: phc_log COM5 24-27,30\n"); return -1; } if (argc >= 3) { // which AM module(s) to treat as JRM retval = get_range(argv[2]); if (retval) { printf("Error: bad address specified %s\n", argv[2]); return retval; } } ghUart = UartOpen(argv[1]); if (!ghUart) { printf("Error opening %s\n", argv[1]); return -2; } //UartConfig(ghUart, 19200, eNOPARITY, eTWOSTOPBITS, 8, 0); UartConfig(ghUart, 19200, eNOPARITY, eONESTOPBIT, 8, 0); log_loop(ghUart); // do the action UartClose(ghUart); return retval; }
/* Echo back recevied data in upper case */ int UartTest1( IN const char *pszPort ) { int Retval; uhandle_t hUart; char Buff[256]; unsigned int BytesRead; unsigned int BytesWritten; DBG_MSG(DBG_TRACE, "%s\n", __FUNCTION__); Retval = UartCtor(&hUart); CHECK_RETVAL(Retval, ExitOnFailure); Retval = UartOpen(hUart, pszPort, UART_RATE_57600, UART_DATA_BITS_8, UART_PARITY_NONE, UART_STOP_1); CHECK_RETVAL(Retval, ExitOnFailure); for ( ; ; ) { Retval = UartRead(hUart, Buff, sizeof(Buff), &BytesRead, 1000); if (BytesRead) { UartTestToUpper(Buff, BytesRead); Retval = UartWrite(hUart, Buff, BytesRead, &BytesWritten, 1000); CHECK_RETVAL(Retval, ExitOnFailure); } } ExitOnFailure: UartDtor(hUart); return Retval; }
/* Show state of modem status signals */ int UartTest( IN const char *pszPort ) { int Retval; uhandle_t hUart; unsigned int uStatus; DBG_MSG(DBG_TRACE, "%s\n", __FUNCTION__); Retval = UartCtor(&hUart); CHECK_RETVAL(Retval, ExitOnFailure); Retval = UartOpen(hUart, pszPort, UART_RATE_57600, UART_DATA_BITS_8, UART_PARITY_NONE, UART_STOP_1); CHECK_RETVAL(Retval, ExitOnFailure); for ( ; ; ) { Retval = UartGetStatus(hUart, &uStatus); CHECK_RETVAL(Retval, ExitOnFailure); UartTestShowModemStatus(uStatus); PortableSleep(1000); } ExitOnFailure: UartDtor(hUart); return Retval; }