From: Martin Mares Date: Tue, 25 Feb 2020 20:17:19 +0000 (+0100) Subject: BSB: RX LED X-Git-Url: http://mj.ucw.cz/gitweb/?a=commitdiff_plain;h=d2a47ff7858e03000280d640566c8142578ebf02;p=home-hw.git BSB: RX LED --- diff --git a/bsb/firmware/main.c b/bsb/firmware/main.c index 06b49ff..e7237e1 100644 --- a/bsb/firmware/main.c +++ b/bsb/firmware/main.c @@ -108,6 +108,7 @@ static volatile u32 bsb_rx_timestamp; // Passing received frames to the main loop static byte bsb_rx_frame[BSB_MAX_SIZE]; static volatile byte bsb_rx_frame_len; +static byte bsb_rx_frame_led; struct bsb_stat { u32 rx_noise; @@ -152,6 +153,8 @@ void usart3_isr(void) memcpy(bsb_rx_frame, bsb_rx_buf, bsb_rx_buf[3]); barrier(); bsb_rx_frame_len = bsb_rx_buf[3]; + bsb_rx_frame_led = 100; + gpio_clear(GPIOB, GPIO1); } } } @@ -444,6 +447,10 @@ int main(void) bsb_rx_len = 0; bsb_stat.rx_timeouts++; } + if (bsb_rx_frame_led) { + if (!--bsb_rx_frame_led) + gpio_set(GPIOB, GPIO1); + } cm_enable_interrupts(); wait_for_interrupt();