#include "os_types.h" #include "iot_io.h" #include "dbg_io.h" #include "efuse.h" typedef struct { uint8_t name[30]; uint16_t addr; } efuse_table_entry; efuse_table_entry efuse_table[] = { {"CHIP ID", 0}, {"CHIP ID", 1}, {"CHIP ID", 2}, {"CHIP ID", 3}, {"CHIP ID", 4}, {"CHIP ID", 5}, {"CHIP ID", 6}, {"CHIP ID", 7}, {"CHIP ID", 8}, {"CHIP ID", 9}, {"CHIP ID", 10}, {"CHIP ID", 11}, {"CHIP ID", 12}, {"CHIP ID", 13}, {"CHIP ID", 14}, {"CHIP ID", 15}, {"CHIP ID", 16}, {"CHIP ID", 17}, {"CHIP ID", 18}, {"CHIP ID", 19}, {"CHIP ID", 20}, {"CHIP ID", 21}, {"CHIP ID", 22}, {"CHIP ID", 23}, {"CHIP ID", 24}, {"CHIP ID", 25}, {"CHIP ID", 26}, {"CHIP ID", 27}, {"CHIP ID", 28}, {"CHIP ID", 29}, {"CHIP ID", 30}, {"CHIP ID", 31}, {"CHIP ID", 32}, {"CHIP ID", 33}, {"CHIP ID", 34}, {"CHIP ID", 35}, {"CHIP ID", 36}, {"CHIP ID", 37}, {"CHIP ID", 38}, {"CHIP ID", 39}, {"CHIP ID", 40}, {"CHIP ID", 41}, {"CHIP ID", 42}, {"CHIP ID", 43}, {"CHIP ID", 44}, {"CHIP ID", 45}, {"CHIP ID", 46}, {"CHIP ID", 47}, {"CHIP ID", 48}, {"CHIP ID", 49}, {"CHIP ID", 50}, {"CHIP ID", 51}, {"CHIP ID", 52}, {"CHIP ID", 53}, {"CHIP ID", 54}, {"CHIP ID", 55}, {"CHIP ID", 56}, {"CHIP ID", 57}, {"CHIP ID", 58}, {"CHIP ID", 59}, {"CHIP ID", 60}, {"CHIP ID", 61}, {"CHIP ID", 62}, {"CHIP ID", 63}, }; void efuse_dump() { uint32_t index = 0; uint32_t offset = 0; uint32_t val = 0; for (index = 0; index < sizeof(efuse_table)/sizeof(efuse_table_entry); index++){ offset = efuse_table[index].addr; offset = offset << 2; val = efuse_read(offset); iot_printf("%s, offset: 0x%X, val: 0x%08X\n", efuse_table[index].name, offset, val); } } int main(void) { dbg_uart_init(); efuse_dump(); while(1); return 0; }