diff --git a/examples/sdk/sysinfo.cpp b/examples/sdk/sysinfo.cpp index 81ef266..77d1daf 100644 --- a/examples/sdk/sysinfo.cpp +++ b/examples/sdk/sysinfo.cpp @@ -17,26 +17,67 @@ #include +static void print_info_num(string msg, sysinfon_t key); +static void print_info_str(string msg, sysinfos_t key); + +void print_sd_info(); +void print_chip_info(); + i32 main() { - IO::print(F("Chip Model: ")); - IO::print(Sys::info_str(SYSINFO_CHIPMODEL)); - IO::print(F("\n")); + print_sd_info(); + print_chip_info(); - IO::print(F("SDK Version: ")); - IO::print(Sys::info_str(SYSINFO_SDK_VERSION)); - IO::print(F("\n")); + return 0; +} - IO::print(F("Sketch MD5: ")); - IO::print(Sys::info_str(SYSINFO_SKETCH_MD5)); - IO::print(F("\n")); +static void print_info_num(string msg, sysinfon_t key) { + IO::print(msg); + IO::print(Sys::info_num(key)); + IO::print(F("\r\n")); +} - IO::print(F("PSRAM size: ")); - IO::print(Sys::info_num(SYSINFO_PSRAM_SIZE)); - IO::print(F("\n")); +static void print_info_str(string msg, sysinfos_t key) { + IO::print(msg); + IO::print(Sys::info_str(key)); + IO::print(F("\r\n")); +} - IO::print(F("CPU Frequency: ")); - IO::print(Sys::info_num(SYSINFO_CPU_FREQ)); - IO::print(F(" Mhz\n")); +void print_sd_info() { + IO::print(F("SD Card Type: ")); + switch(Sys::info_num(SYSINFO_CARD_TYPE)) { + case SD_CARD_MMC: + IO::print(F("SD MMC")); + break; - return 0; + case SD_CARD_SD: + IO::print(F("SD Card")); + break; + + case SD_CARD_SDHC: + IO::print(F("SDHC")); + break; + + case SD_CARD_UNKNOWN: + IO::print(F("Unknown")); + break; + + default: + IO::print(F("None")); + break; + } + IO::print(F("\r\n")); + + print_info_num(F("Card Size: "), SYSINFO_CARD_SIZE); + print_info_num(F("No. of Sectors: "), SYSINFO_NUM_SECTORS); + print_info_num(F("Sector Size: "), SYSINFO_SECTOR_SIZE); + print_info_num(F("Total Storage: "), SYSINFO_TOTAL_STORAGE); + print_info_num(F("Used Storage: "), SYSINFO_USED_STORAGE); +} + +void print_chip_info() { + print_info_str(F("Chip Model: "), SYSINFO_CHIPMODEL); + print_info_str(F("SDK Version: "), SYSINFO_SDK_VERSION); + print_info_str(F("Sketch MD5: "), SYSINFO_SKETCH_MD5); + print_info_num(F("PSRAM Size: "), SYSINFO_PSRAM_SIZE); + print_info_num(F("CPU Frequency (Mhz): "), SYSINFO_CPU_FREQ); } \ No newline at end of file