示例#1
0
/* TASK 2 */
static void vHookTask2( void *pvParameters )
{
	portTickType xLastExecutionTime = xTaskGetTickCount();
    unsigned int i;
    char led_status = 0;
	vemu_regs d,p,c;
	vemu_regs *dp,*pp,*cp,*tp;	
    vemu_sensors s;
	dp = &d;
	pp = &p;
	cp = &c;
	vemu_read_registers(cp);
	for( ;; )
	{
		/* Enforce task frequency */
		vTaskDelayUntil( &xLastExecutionTime, TASK3_DELAY );
    	tp = cp;
		cp = pp;
		pp = tp;
        vemu_read_registers(cp);
        vemu_read_sensors(&s);
		vemu_delta(dp, cp, pp);
        /*
        uputs("Task2 ");
        uputs("knob: ");
        uputi(task2_knob);
        uputs(" inst: ");
        uputi(getMiscVal());
        uputs("\n");
        */
        led_status = !led_status;
        GPIOPinWrite(GPIO_PORTE_BASE, GPIO_PIN_0, led_status);

        uputs("\n--TASK3--\n");
         uputs("\nA t: ");
        uputi(dp->at);
        uputs("\nA e: ");
        uputi(dp->ae);   
        uputs("\nS t: ");
        uputi(dp->st);
        uputs("\nS e: ");
        uputi(dp->se); 
        uputs("\nT  : ");
        uputi(s.t); 
        uputs("\nPa : ");
        uputi(s.ap); 
        uputs("\nPs : ");
        uputi(s.sp);                 
        uputs("\ncounter : ");
        uputi(getMiscVal());
	}
}
示例#2
0
/* TASK 3 */
static void vHookTask3( void *pvParameters )
{
    portTickType xLastExecutionTime = xTaskGetTickCount();
    unsigned int i;
    for( ;; )
    {
        /* Enforce task frequency */
        vTaskDelayUntil( &xLastExecutionTime, TASK3_DELAY );
        uputs("Task3 ");
        uputs("knob: ");
        uputi(task3_knob);
        uputs(" inst: ");
        uputi(getMiscVal());
        uputs("\n");
        for( i=0; i<task3_knob; i++){__asm__("nop");}

    }
}
示例#3
0
/* TASK 2 */
static void vHookTask2( void *pvParameters )
{
	portTickType xLastExecutionTime = xTaskGetTickCount();
    unsigned int i;
    char led_status = 0;

	for( ;; )
	{
		/* Enforce task frequency */
		vTaskDelayUntil( &xLastExecutionTime, TASK2_DELAY );
        uputs("Task2 ");
        uputs("knob: ");
        uputi(task2_knob);
        uputs(" inst: ");
        uputi(getMiscVal());
        uputs("\n");
        for( i=0; i<task2_knob; i++){__asm__("nop");}
        led_status = !led_status;
        GPIOPinWrite(GPIO_PORTF_BASE, GPIO_PIN_0, led_status);

	}
}