Example #1
0
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");
    }
}
Example #3
0
/**
* 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!!!!");



	}



}
Example #4
0
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);
	}
}
Example #5
0
// 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;
}
Example #6
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");
}
Example #8
0
/*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);
	}
}
Example #9
0
/*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);
	}
}
Example #10
0
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);
}