This commit is contained in:
hathach
2019-03-29 17:42:10 +07:00
parent 7d9b68a7b9
commit 28610198df
3 changed files with 18 additions and 18 deletions

View File

@@ -34,6 +34,14 @@
//--------------------------------------------------------------------+
// MACRO CONSTANT TYPEDEF PROTYPES
//--------------------------------------------------------------------+
/* Blink pattern
* - 250 ms : device not mounted
* - 1000 ms : device mounted
* - 2000 ms : device is suspended
*/
static uint32_t blink_interval_ms = 250;
void led_blinking_task(void);
extern void virtual_com_task(void);
@@ -187,18 +195,19 @@ void tud_hid_generic_set_report_cb(uint8_t report_id, hid_report_type_t report_t
#endif
//--------------------------------------------------------------------+
// tinyusb callbacks
// Device callbacks
//--------------------------------------------------------------------+
// Invoked when device is mounted
void tud_mount_cb(void)
{
blink_interval_ms = 1000;
}
// Invoked when device is unmounted
void tud_umount_cb(void)
{
blink_interval_ms = 250;
}
//--------------------------------------------------------------------+
@@ -206,14 +215,12 @@ void tud_umount_cb(void)
//--------------------------------------------------------------------+
void led_blinking_task(void)
{
const uint32_t interval_ms = 1000;
static uint32_t start_ms = 0;
static bool led_state = false;
// Blink every 1000 ms
if ( board_millis() < start_ms + interval_ms) return; // not enough time
start_ms += interval_ms;
if ( board_millis() < start_ms + blink_interval_ms) return; // not enough time
start_ms += blink_interval_ms;
board_led_control(led_state);
led_state = 1 - led_state; // toggle