add unique id for u5, also allow to build with OPT_OS_CUSTOM

This commit is contained in:
hathach 2023-11-02 19:32:25 +07:00
parent b28d121a54
commit 89475fcf26
No known key found for this signature in database
GPG Key ID: F5D50C6D51D17CBA
2 changed files with 16 additions and 0 deletions

View File

@ -97,6 +97,9 @@ static inline uint32_t board_millis(void) {
return (((uint64_t)rt_tick_get()) * 1000 / RT_TICK_PER_SECOND);
}
#elif CFG_TUSB_OS == OPT_OS_CUSTOM
// Implement your own board_millis() in any of .c file
#else
#error "board_millis() is not implemented for this OS"
#endif

View File

@ -210,6 +210,19 @@ uint32_t board_button_read(void) {
return BUTTON_STATE_ACTIVE == HAL_GPIO_ReadPin(BUTTON_PORT, BUTTON_PIN);
}
size_t board_get_unique_id(uint8_t id[], size_t max_len) {
(void) max_len;
volatile uint32_t *stm32_uuid = (volatile uint32_t *) UID_BASE;
uint32_t *id32 = (uint32_t *) (uintptr_t) id;
uint8_t const len = 12;
id32[0] = stm32_uuid[0];
id32[1] = stm32_uuid[1];
id32[2] = stm32_uuid[2];
return len;
}
int board_uart_read(uint8_t *buf, int len) {
(void) buf;
(void) len;