CI: Initial.
continuous-integration/drone/push Build is passing Details

Signed-off-by: Yilin Sun <imi415@imi.moe>
This commit is contained in:
Yilin Sun 2023-06-28 12:57:40 +08:00
parent ad73f89f56
commit 1d28707d98
Signed by: imi415
GPG Key ID: DB982239424FF8AC
6 changed files with 57 additions and 69 deletions

15
.drone.yml Normal file
View File

@ -0,0 +1,15 @@
---
kind: pipeline
type: docker
name: Build
steps:
- name: Submodules
image: alpine/git
commands:
- git submodule update --init --recursive
- name: IDF Build
image: "espressif/idf:v5.0"
commands:
- bash -c ". $IDF_PATH/export.sh && idf.py build && idf.py size-components"

View File

@ -1,53 +1,2 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-H4 | ESP32-S2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | -------- |
# Playground project for LuaT ESP32-S3
# Hello World Example
Starts a FreeRTOS task to print "Hello World".
(See the README.md file in the upper level 'examples' directory for more information about examples.)
## How to use example
Follow detailed instructions provided specifically for this example.
Select the instructions depending on Espressif chip installed on your development board:
- [ESP32 Getting Started Guide](https://docs.espressif.com/projects/esp-idf/en/stable/get-started/index.html)
- [ESP32-S2 Getting Started Guide](https://docs.espressif.com/projects/esp-idf/en/latest/esp32s2/get-started/index.html)
## Example folder contents
The project **hello_world** contains one source file in C language [hello_world_main.c](main/hello_world_main.c). The file is located in folder [main](main).
ESP-IDF projects are built using CMake. The project build configuration is contained in `CMakeLists.txt` files that provide set of directives and instructions describing the project's source files and targets (executable, library, or both).
Below is short explanation of remaining files in the project folder.
```
├── CMakeLists.txt
├── pytest_hello_world.py Python script used for automated testing
├── main
│ ├── CMakeLists.txt
│ └── hello_world_main.c
└── README.md This is the file you are currently reading
```
For more information on structure and contents of ESP-IDF projects, please refer to Section [Build System](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/build-system.html) of the ESP-IDF Programming Guide.
## Troubleshooting
* Program upload failure
* Hardware connection is not correct: run `idf.py -p PORT monitor`, and reboot your board to see if there are any output logs.
* The baud rate for downloading is too high: lower your baud rate in the `menuconfig` menu, and try again.
## Technical support and feedback
Please use the following feedback channels:
* For technical queries, go to the [esp32.com](https://esp32.com/) forum
* For a feature request or bug report, create a [GitHub issue](https://github.com/espressif/esp-idf/issues)
We will get back to you as soon as possible.

View File

@ -1,2 +1,2 @@
idf_component_register(SRCS "hello_world_main.c"
idf_component_register(SRCS "main.c"
INCLUDE_DIRS "")

View File

@ -1,13 +0,0 @@
#include <inttypes.h>
#include <stdio.h>
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
void app_main(void) {
printf("Hello world!\n");
for (;;) {
vTaskSuspend(NULL);
}
}

35
main/main.c Normal file
View File

@ -0,0 +1,35 @@
#include <inttypes.h>
#include <stdio.h>
/* FreeRTOS */
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
/* ESP */
#include "driver/gpio.h"
#include "esp_log.h"
#define LED0_PIN 10
static const char *LOG_TAG = "MAIN";
void app_main(void) {
ESP_LOGI(LOG_TAG, "Hello world");
gpio_config_t led_cfg = {
.pin_bit_mask = (1U << LED0_PIN),
.mode = GPIO_MODE_OUTPUT,
.intr_type = GPIO_INTR_DISABLE,
.pull_down_en = GPIO_PULLDOWN_DISABLE,
.pull_up_en = GPIO_PULLUP_DISABLE,
};
gpio_config(&led_cfg);
for (;;) {
gpio_set_level(LED0_PIN, 1);
vTaskDelay(pdMS_TO_TICKS(50));
gpio_set_level(LED0_PIN, 0);
vTaskDelay(pdMS_TO_TICKS(950));
}
}

View File

@ -1,9 +1,11 @@
# This file was generated using idf.py save-defconfig. It can be edited manually.
# Espressif IoT Development Framework (ESP-IDF) Project Minimal Configuration
#
# Target is ESP32-S3
CONFIG_IDF_TARGET="esp32s3"
# External QSPI flash (1.8V)
CONFIG_ESPTOOLPY_FLASHMODE_QIO=y
CONFIG_ESPTOOLPY_FLASHSIZE_16MB=y
# Internal SiP SPI PSRAM (1.8V)
CONFIG_SPIRAM=y
CONFIG_SPIRAM_MODE_OCT=y
CONFIG_SPIRAM_SPEED_80M=y