void BoardLed_Blink_Clockwise(Led_TypeDef led_start, uint32_t delay_time) { Led_TypeDef leds[LEDn] = { LED4, LED3, LED5, LED6 }; uint8_t led_index = Led_Find_In_Array(led_start, leds); uint8_t led_iterator = led_index; for (; led_iterator < LEDn; led_iterator++) { Led_Blink(leds[led_iterator], delay_time); } for (led_iterator = 0u; led_iterator <= led_index; led_iterator++) { Led_Blink(leds[led_iterator], delay_time); } }
void BoardLed_Blink_CounterClockwise(Led_TypeDef led_start, uint32_t delay_time) { Led_TypeDef leds[LEDn] = { LED4, LED3, LED5, LED6 }; uint8_t led_index = Led_Find_In_Array(led_start, leds); int8_t led_iterator = (int8_t) led_index; for (; led_iterator >= 0; led_iterator--) { Led_Blink(leds[led_iterator], delay_time); } for (led_iterator = LEDn - 1; led_iterator >= led_index; led_iterator--) { Led_Blink(leds[led_iterator], delay_time); } }
void main(void) { char Buf[_Buffer_Size]; SSPInit(); Delay_Init(); LED_DIR_OUT; Led_Blink(); char Address[_Address_Width] = { 0x11, 0x22, 0x33, 0x44, 0x55 }; NRF24L01_Init(_RX_MODE, _CH, _1Mbps, Address, _Address_Width, _Buffer_Size); while (1) { NRF24L01_Receive(Buf); if (Buf[0] == 0x48) { LED_ON; Delay_us(1000); LED_OFF; } } }