2022-09-23 15:29:35 +02:00

79 lines
2.3 KiB
C

/****************************************************************************
* Copyright (C) 2020 by Fabrice Muller *
* *
* This file is useful for ESP32 Design course. *
* *
****************************************************************************/
/**
* @file lab1-1_main.c
* @author Fabrice Muller
* @date 12 Sep. 2020
* @brief File containing the lab1-1 of Part 2.
*
* @see https://github.com/fmuller-pns/esp32-vscode-project-template
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "esp_log.h"
#include "esp_system.h"
#include "esp_spi_flash.h"
#include "esp32/clk.h"
#include "sys/time.h"
#include "soc/rtc.h"
#include "soc/cpu.h"
/**
* @brief Starting point function
*
*/
void app_main(void) {
esp_chip_info_t chip_info;
esp_chip_info(&chip_info);
uint8_t base_mac_addr[6] = {0};
/* Print chip information */
printf("This is ESP32 chip.\n");
printf("Features:\n");
printf(" - CPU clock frequency : %d MHz\n", (uint32_t)(esp_clk_cpu_freq()/1E6));
printf(" - APB clock frequency : %d MHz\n", (uint32_t)(esp_clk_apb_freq()/1E6));
printf(" - XTAL clock frequency : %d MHz\n", (uint32_t)(esp_clk_xtal_freq()/1E6));
printf(" - RTC clock frequency : %f KHz\n", (float)(rtc_clk_slow_freq_get_hz()/1000.0F));
printf(" - %d CPU cores\n", chip_info.cores);
printf(" - chip revision number : %d\n", chip_info.revision);
/* Print Flash memory information (external/internal & size), Wifi, Bluetooth (Classic/LE ?) */
printf(" - Features : %d \n", chip_info.features);
printf(" - Flash memory : %f bytes\n", (float)(spi_flash_get_chip_size()));
/* Print MAC Address */
esp_efuse_mac_get_default(base_mac_addr);
printf(" - MAC Address : %02x %02x %02x %02x %02x %02x\n", base_mac_addr[0],base_mac_addr[1],base_mac_addr[2],base_mac_addr[3],base_mac_addr[4],base_mac_addr[5]);
/* Print if Debug mode is actived */
if (esp_cpu_in_ocd_debug_mode())
{
printf("Debug mode enabled\n");;
}
else
{
printf("Debug mode disabled\n");;
}
}