Ejemplo n.º 1
0
static void led_task(BT_HANDLE hThread, void *pParam) {

	bt_kernel_params *kp = bt_get_kernel_params();
	BT_kEventGroupWaitBits(kp->init_group, BT_SYSTEM_INIT_USER_READY, BT_FALSE, BT_TRUE, BT_INFINITE_TIMEOUT);

	BT_GpioSetDirection(BT_CONFIG_ALIVE_LED_GPIO, BT_GPIO_DIR_OUTPUT);

	BT_TICK ticks = BT_kTickCount();
	BT_TICK ticks_a = ticks;

	while(1) {
		ticks_a = BT_kTickCount();
		BT_GpioSet(BT_CONFIG_ALIVE_LED_GPIO, INVERT(BT_TRUE));
		BT_kTaskDelayUntil(&ticks_a, 10);
		BT_GpioSet(BT_CONFIG_ALIVE_LED_GPIO, INVERT(BT_FALSE));
		BT_kTaskDelayUntil(&ticks_a, 50);
		BT_GpioSet(BT_CONFIG_ALIVE_LED_GPIO, INVERT(BT_TRUE));
		BT_kTaskDelayUntil(&ticks_a, 10);
		BT_GpioSet(BT_CONFIG_ALIVE_LED_GPIO, INVERT(BT_FALSE));

		BT_kTaskDelayUntil(&ticks, BT_CONFIG_ALIVE_LED_PERIOD);
	}

	BT_kTaskDelete(NULL);
}
Ejemplo n.º 2
0
static void led_task(void *pParam) {

	BT_GpioSetDirection(BT_CONFIG_ALIVE_LED_GPIO, BT_GPIO_DIR_OUTPUT);

	BT_TICK ticks = BT_kTickCount();
	BT_TICK ticks_a = ticks;

	while(1) {
		ticks_a = BT_kTickCount();
		BT_GpioSet(BT_CONFIG_ALIVE_LED_GPIO, INVERT(BT_TRUE));
		BT_kTaskDelayUntil(&ticks_a, 10);
		BT_GpioSet(BT_CONFIG_ALIVE_LED_GPIO, INVERT(BT_FALSE));
		BT_kTaskDelayUntil(&ticks_a, 50);
		BT_GpioSet(BT_CONFIG_ALIVE_LED_GPIO, INVERT(BT_TRUE));
		BT_kTaskDelayUntil(&ticks_a, 10);
		BT_GpioSet(BT_CONFIG_ALIVE_LED_GPIO, INVERT(BT_FALSE));

		BT_kTaskDelayUntil(&ticks, BT_CONFIG_ALIVE_LED_PERIOD);
	}

	BT_kTaskDelete(NULL);
}