Esempio n. 1
0
//thread for debugging
void timerlist()
{
    while (1)
    {
	mos_mdelay(500);
	print_clock_list();
    }
}
Esempio n. 2
0
void blink_b(void)
{
   /*other_timer.func = other_timer_callback;
   other_timer.msecs = 300;
   other_timer.reset_to = 300;
   mos_alarm(&other_timer);
   */
   while(1) {
      print_clock_list();
      //mos_mdelay(1000);
   }
}
static int clock_tests(int argc, cmd_args *argv)
{
	if (argc < 2) {
		printf("not enough arguments:\n");
		printf("%s  <clock-name>\n", argv[0].str);
		printf("%s  ?\n", argv[0].str);
		goto out;
	}
	if(argv[1].str[0] == '?')
		print_clock_list();
	else
		clock_measure(argv[1].str);
out:
	return 0;
}
Esempio n. 4
0
void start(void)
{
 

  mos_led_on(1);
#ifdef PLATFORM_MICA_ANY
  dev_mode(DEV_MICA2_LIGHT, DEV_MODE_ON);  
  dev_read(DEV_MICA2_LIGHT,&seed,1);
  dev_read(DEV_MICA2_LIGHT,(&seed)+1,1);
  dev_mode(DEV_MICA2_LIGHT, DEV_MODE_OFF);  
#elif PLATFORM_TELOSB
  seed = adc_get_conversion16(4);
#endif
  printf("SEED: %x\n", seed);
  mos_led_off(1);
  srand(seed);
 
  fired1=1;
  fired2=1;
  fired3=1;
  fired4=1;
  
  alarm1.func = sem_alarm_func;
  alarm2.func = sem_alarm_func;
  alarm3.func = sem_alarm_func;
  alarm4.func = sem_alarm_func;

  alarm1.data = (void*)&fired1;
  alarm2.data = (void*)&fired2;
  alarm3.data = (void*)&fired3;
  alarm4.data = (void*)&fired4;

  alarm1.reset_to = 0;
  alarm2.reset_to = 0;
  alarm3.reset_to = 0;
  alarm4.reset_to = 0;
  
  while(1)
    {
        if(fired1 == 1)
        {
            alarm1.msecs = (((uint16_t)rand() % 100) + 1);
            fired1=0;
            mos_alarm(&alarm1);
            mos_led_toggle(0);
#ifdef verbose
            printf("1 fired!\n");
#endif
        }
        if(fired2 == 1)
        {
            alarm2.msecs = (((uint16_t)rand() % 100) + 1);
            fired2=0;
            mos_alarm(&alarm2);
            mos_led_toggle(1);
#ifdef verbose
            printf("2 fired!\n");
#endif
        }
        if(fired3 == 1)
        {
            alarm3.msecs = (((uint16_t)rand() % 100) + 1);
            fired3=0;
            mos_alarm(&alarm3);
            mos_led_toggle(2);
#ifdef verbose
            printf("3 fired!\n");
#endif
        }
        if(fired4 == 1)
        {
            alarm4.msecs = (((uint16_t)rand() % 100) + 1);
            fired4=0;
            mos_alarm(&alarm4);
//	 mos_led_toggle(2);
#ifdef verbose
            printf("4 fired!\n");
#endif
        }
#ifdef verbose
        print_clock_list();
#endif
    }
}