void uart_print_receiver ( void * pvParameters ) { xdata xReceivedStructure; portBASE_TYPE xStatus; while(1) { xStatus = xQueueReceive( xQueue, &xReceivedStructure, 1000 ); if (xStatus==pdPASS) { if ( xReceivedStructure.sender == 'a') { USART_putstring("\r\n Receiving Successful from 1 \r\n"); USART_putstring(xReceivedStructure.msg); vTaskDelay(100); } else { USART_putstring("\r\n Receiving Successful from 2 \r\n"); USART_putstring(xReceivedStructure.msg); vTaskDelay(100); } } else { USART_putstring("\r\n fail \r\n"); } } }
int main (void){ uint16_t acc_val = 0; char acc_x_val_str[16]; char acc_y_val_str[16]; char acc_z_val_str[16]; //Initialize the USART USART_init(); USART_clean(); //Init ADC adc_init(); while(1) { acc_val = read_adc(6); //itoa(acc_val, acc_z_val_str, 10); //USART_putstring(acc_z_val_str); if (acc_val < 550 && acc_val > 450) USART_putstring("NORMAAL \r"); else if (acc_val < 550) USART_putstring("VOORWAARTS \r"); else if (acc_val > 450) USART_putstring("ACHTERWAARTS\r"); } }
/** * Checks and changes state of keyring * */ void updateState(void) { unsigned char * command = receiveString(); //Recieve command from serial //command = command[strlen(command)-1] = 0; // STrips last char fro string (line break (\n)) if(!strcmp(command, "LOCK")) { lock(); USART_putstring("LOCK!!"); } else if (!strcmp(command, "UNLOCK") == 1) { unlock(); USART_putstring("UNLOCK!!!!"); } else { USART_putstring("SOMETHING!!!!"); } }
void uart_print_Task2 ( void * pvParameters ) { USART_Init(); while(1) { USART_putstring("Task 2 is running \r\n"); USART_putstring("Task 2 is deleting itself \r\n"); vTaskDelete(NULL); } }
// main int main(void) { USART_init(); DDRD = LED_MASK; char buf; char tmp[] = "blubjes\r\n"; unsigned int l1 = 0; unsigned int l2 = 0; unsigned int l3 = 0; for (;;) { buf = USART_receive(); l1++; l2++; l3++; if (l1 >= 20) { PORTD ^= (1 << 5); l1 = 0; } if (l2 >= 10) { PORTD ^= (1 << 6); l2 = 0; } if (l3 >= 5) { PORTD ^= (1 << 7); l3 = 0; } USART_putstring(tmp); } return 0; }
static void led_blink( void *pvParameters) { xSemaphoreTake(xCountingSemaphore, portMAX_DELAY); while(1) { xSemaphoreTake(xCountingSemaphore, portMAX_DELAY ); PORTC^=(1<<0); USART_putstring("PUSH\r\n"); } }
void printwaypoint(WayPoint wps[], int nwps) { int i; int j = 1; i = nwps; char *ptr_1 = "Summary"; char *ptr_2 = ("========================="); char *ptr_3 = ("End Summary"); char *ptr_4 = " "; USART_putstring(USART_PC,"\n\r"); debug_println(ptr_1); debug_println(ptr_2); for (i = 0; i < nwps; i++) { debug_printf(wps[i].latitude);debug_print(ptr_4);/*debug_printf(wps[i].latitude_dist);debug_print(ptr_4);*/debug_printf(wps[i].latitude_deg);debug_print(ptr_4);debug_printf(wps[i].longitude);/*debug_print(ptr_4);debug_printf(wps[i].longitude_dist);*/debug_print(ptr_4);debug_printf(wps[i].longitude_deg); USART_putstring(USART_PC,"\n\r"); j = j + 1; } debug_println(ptr_2); debug_println(ptr_3); USART_putstring(USART_PC,"\n\r"); }
/*Function of Tasks*/ void uart_print ( void * pvParameters ) { char *taskname; taskname=(char*)pvParameters; USART_Init(); while(1) { USART_putstring(taskname); //vTaskDelay(1000); //_delay_ms(1000); } }
/*Function of Tasks*/ void uart_print_Task1 ( void * pvParameters ) { USART_Init(); while(1) { USART_putstring("Task 1 is running \r\n"); xTaskCreate(uart_print_Task2, ( signed char * ) "Task2", configMINIMAL_STACK_SIZE,NULL, Task2_PRIORITY2, NULL ); vTaskDelay(100); } }
int main(void){ USART_init(); //Call the USART initialization code adc_init(); while(1){ //Infinite loop adc_value=read_adc(0); itoa(adc_value,buffer,10); USART_putstring(buffer); //Pass the string to the USART_putstring function and sends it over the serial USART_send('\r'); //Carriage return USART_send('\n'); //Linefeed _delay_ms(500); } return 0; }
///////////////////////////////////////////////////////////////////////////////// // function definitions int user_waypoint_test (WayPoint wps[],int numwps) { int i; int uj = numwps + 1; int uloop1 = 1; int userchk1; int userchk2; float ulat; float ulon; float ulat_d; float ulat_dist; float ulon_dist; float ulon_d; char entwp[3]; char *ptr_entwp = entwp; char entlat[ULAT_TYPE]; char *ptr_entlat = entlat; char entlat_dist[ULAT_TYPE]; char *ptr_entlat_dist = entlat_dist; char entlon[ULONG_TYPE]; char *ptr_entlon = entlon; char entlon_dist[ULONG_TYPE]; char *ptr_entlon_dist = entlon_dist; char entlon_d[ULONG_TYPE]; char *ptr_e_d = entlon_d; char yes[3] = "y"; char *ptr_yes = yes; char no[3] = "n"; char *ptr_no = no; char *ptr_1 = "Please enter Latitude "; char *ptr_2 = ":"; char *ptr_3 = "Please enter Longitude "; char *ptr_4 = "Would you like to enter another way point? (y or n):"; char *ptr_6 = "Finished entering way points"; char *ptr_7 = "Invalid, please try again"; char *ptr_8 = " "; // user enter first lat USART_putstring(USART_PC,"\n\r"); debug_print(ptr_1); debug_printi(uj); debug_print(ptr_2);USART_putstring(USART_PC,"\n\r"); for (i = 0; i < UENTLAT; i++) { entlat[i] = USART_receive(USART_PC); } /*entlat_dist[0]=entlat[0]; entlat_dist[1]=entlat[1]; entlat_dist[2]=entlat[3]; entlat_dist[3]=entlat[4]; entlat_dist[4]=entlat[5]; entlat_dist[5]=entlat[6]; entlat_dist[6]=entlat[7]; entlat_dist[7]=0x00;*/ ulat = atof (ptr_entlat); //ulat_dist = atof (ptr_entlat_dist); ulat_d = ulat; debug_printf(ulat);debug_print(ptr_8);debug_printf(ulat_d); wps[numwps].latitude = ulat; //wps[numwps].latitude_dist = ulat_dist; wps[numwps].latitude_deg = ulat_d; // user enter first long USART_putstring(USART_PC,"\n\r"); debug_print(ptr_3); debug_printi(uj); debug_print(ptr_2);USART_putstring(USART_PC,"\n\r"); for (i = 0; i < UENTLON; i++) { entlon[i] = USART_receive(USART_PC); } /*entlon_dist[0]=entlon[0]; entlon_dist[1]=entlon[1]; entlon_dist[2]=entlon[2]; entlon_dist[3]=entlon[4]; entlon_dist[4]=entlon[5]; entlon_dist[5]=entlon[6]; entlon_dist[6]=entlon[7]; entlon_dist[7]=entlon[8]; entlon_dist[8]=0x00;*/ entlon_d[0]=entlon[1]; entlon_d[1]=entlon[2]; entlon_d[2]=entlon[3]; entlon_d[3]=entlon[4]; entlon_d[4]=entlon[5]; entlon_d[5]=entlon[6]; entlon_d[6]=entlon[7]; entlon_d[7]=entlon[8]; entlon_d[8]=0x00; ulon = atof (ptr_entlon); //ulon_dist = atof (ptr_entlon_dist); ulon_d = atof (ptr_e_d); debug_printf(ulon);debug_print(ptr_8);debug_printf(ulon_d); wps[numwps].longitude = ulon; //wps[numwps].longitude_dist = ulon_dist; wps[numwps].longitude_deg = ulon_d; //----------------------------------------------------------- numwps = numwps + 1; // prompt if user wants to enter another way point USART_putstring(USART_PC,"\n\r"); debug_println(ptr_4); for (i = 0; i < 1; i++) { entwp[i] = USART_receive(USART_PC); } entwp[1]=0x00; debug_println(ptr_entwp); while (uloop1 == 1) { userchk1 = strcmp(ptr_entwp,ptr_yes); userchk2 = strcmp(ptr_entwp,ptr_no); if(userchk1 == 0) { numwps = userwaypoint(wps,numwps); USART_putstring(USART_PC,"\n\r");debug_println(ptr_4); for (i = 0; i < 1; i++) { entwp[i] = USART_receive(USART_PC); } debug_println(ptr_entwp); } else if (userchk2 == 0) { debug_println(ptr_6); uloop1 = 0; } else { debug_println(ptr_7); USART_putstring(USART_PC,"\n\r");debug_println(ptr_4); for (i = 0; i < 1; i++) { entwp[i] = USART_receive(USART_PC); } debug_println(ptr_entwp); } } return(numwps); }
int userwaypoint(WayPoint wps[],int nwps) { int i = nwps; int j; int k; float uulat; float uulat_dist; float uulat_d; float uulon; float uulon_dist; float uulon_d; char entlat[ULAT_TYPE]; char *ptr_entlat = entlat; char entlat_dist[ULAT_TYPE]; char *ptr_entlat_dist = entlat_dist; char entlon[ULONG_TYPE]; char *ptr_entlon = entlon; char entlon_dist[ULONG_TYPE]; char *ptr_entlon_dist = entlon_dist; char entlon_d[ULONG_TYPE]; char *ptr_e_d = entlon_d; char *ptr_1 = "Please enter Latitude "; char *ptr_2 = ":"; char *ptr_3 = "Please enter Longitude "; char *ptr_4 = " "; j = i + 1; USART_putstring(USART_PC,"\n\r"); debug_print(ptr_1); debug_printi(j); debug_print(ptr_2);USART_putstring(USART_PC,"\n\r"); for (k = 0; k < UENTLAT; k++) { entlat[k] = USART_receive(USART_PC); } //----------------------------------------------------------- /*entlat_dist[0]=entlat[0]; entlat_dist[1]=entlat[1]; entlat_dist[2]=entlat[3]; entlat_dist[3]=entlat[4]; entlat_dist[4]=entlat[5]; entlat_dist[5]=entlat[6]; entlat_dist[6]=entlat[7]; entlat_dist[7]=0x00;*/ uulat = atof (ptr_entlat); //uulat_dist = atof (ptr_entlat_dist); uulat_d = uulat; debug_printf(uulat);debug_print(ptr_4);debug_printf(uulat_d); wps[i].latitude = uulat; //wps[i].latitude_dist = uulat_dist; wps[i].latitude_deg = uulat; //----------------------------------------------------------- USART_putstring(USART_PC,"\n\r"); debug_print(ptr_3); debug_printi(j); debug_print(ptr_2);USART_putstring(USART_PC,"\n\r"); for (k = 0; k < UENTLON; k++) { entlon[k] = USART_receive(USART_PC); } //----------------------------------------------------------- /*entlon_dist[0]=entlon[0]; entlon_dist[1]=entlon[1]; entlon_dist[2]=entlon[2]; entlon_dist[3]=entlon[4]; entlon_dist[4]=entlon[5]; entlon_dist[5]=entlon[6]; entlon_dist[6]=entlon[7]; entlon_dist[7]=entlon[8]; entlon_dist[8]=0x00;*/ entlon_d[0]=entlon[1]; entlon_d[1]=entlon[2]; entlon_d[2]=entlon[3]; entlon_d[3]=entlon[4]; entlon_d[4]=entlon[5]; entlon_d[5]=entlon[6]; entlon_d[6]=entlon[7]; entlon_d[7]=entlon[8]; entlon_d[8]=0x00; uulon = atof (ptr_entlon); //uulon_dist = atof (ptr_entlon_dist); uulon_d = atof (ptr_e_d); debug_printf(uulon);debug_print(ptr_4);debug_printf(uulon_d); wps[i].longitude = uulon; //wps[i].longitude_dist = uulon_dist; wps[i].longitude_deg = uulon_d; //----------------------------------------------------------- i = i + 1; return(i); }