int main(){ /* basStnMsg t = { {0}, 13.37f }; t.delta[0] = 100.0f; t.delta[1] = 33.0f; t.delta[2] = 0.7f; */ basStnMsg t; t.rotors[0] = 8; t.rotors[1] = 16; t.rotors[2] = 32; t.rotors[3] = 64; int fd = atOpen("/dev/cu.usbserial-A702LY4I", 9600, 0); printf("fd %d\n", fd); if(fd > 0){ int i = 10; printf("Opened\n"); while(1){ int j = 0, speed = 0; scanf("%d", &speed); for(j = 4; j--;){ t.rotors[j] = speed; } atWrite(fd, &t, sizeof(basStnMsg)); // clear it out, and read the response bzero(&t, sizeof(basStnMsg)); //usleep(500000); atRead(fd, &t, sizeof(basStnMsg)); for(j = 0; j < 4; j++){ printf("Rotor[%d]=%d\n", j, t.rotors[j]); } } } else{ printf("Failed to open"); } printf("Done!\n"); return 0; }
int gsmWork( int flag ){ char gsm[255]; unsigned int sz = sizeof(gsm); /* osDelay(3000); sprintf(gsm,"GET /dev.php?devid=1 HTTP/1.1\r\nHost: miss-n.ru\r\nConnection: keep-alive\r\n"); //strcpy(gsm,"GET /dev.php HTTP/1.1\r\nhost: miss-n.ru\r\nConnection: keep-alive\r\n" ); if ( gsmSend(gsm, strlen(gsm), 10000 ) != AT_OK ) return AT_ERROR; if ( atRead(gsm, sz, 10000) > 0 ){ return AT_OK; } */ int res = 0; res = bufRecvData(gsm, sizeof(gsm), 20000 ); if ( res > 0 ){ osDelay(50); //"#D#160914;151022;5000.6025;N;03769.6834;E;10;100;250;3;8.5;05;6;12.25,78.54;DRIVERCODE;TEST:1:5,TEXT:3:Test text string" if ( gsmSend(gsm, strlen(gsm), 10000 ) != AT_OK ) { bufSendData (gsm, strlen(gsm), 1000); return AT_ERROR; } if ( atRead(gsm, sz, 10000) > 0 ){ return AT_OK; } return -1; //all ok but gps not; }else{ //Ping pong //Wialon ping #P#; return AT_TIMEOUT; //all ok but gps not; } //return flag; //no path this osDelay(100000); return -1; }