mruby-esp32 项目使用教程

mruby-esp32 项目使用教程

mruby-esp32mruby application template for ESP32项目地址:https://gitcode.com/gh_mirrors/mr/mruby-esp32

1. 项目的目录结构及介绍

mruby-esp32/
├── CMakeLists.txt
├── components/
│   ├── mruby/
│   ├── mruby-esp32-system/
│   ├── mruby-esp32-wifi/
│   ├── mruby-esp32-mqtt/
│   ├── mruby-esp32-gpio/
│   ├── mruby-esp32-ledc/
│   └── ...
├── main/
│   ├── CMakeLists.txt
│   ├── component.mk
│   ├── main.c
│   └── main.rb
├── sdkconfig
└── ...
  • CMakeLists.txt: 主构建文件,用于配置整个项目的构建过程。
  • components/: 包含项目的所有组件,每个组件都是一个独立的模块,如 mruby-esp32-systemmruby-esp32-wifi 等。
  • main/: 包含项目的主文件,包括 main.cmain.rb
  • sdkconfig: 项目的配置文件,用于配置 ESP-IDF 的各种参数。

2. 项目的启动文件介绍

main/main.c

main.c 是项目的入口文件,负责初始化 ESP-IDF 框架并加载 Ruby 脚本。

#include <stdio.h>
#include "esp_system.h"
#include "esp_log.h"
#include "mruby.h"
#include "mruby/compile.h"

void app_main(void)
{
    mrb_state *mrb = mrb_open();
    if (mrb == NULL) {
        ESP_LOGE("MRUBY", "Failed to initialize mruby");
        return;
    }

    FILE *fp = fopen("/main.rb", "r");
    if (fp == NULL) {
        ESP_LOGE("MRUBY", "Failed to open main.rb");
        mrb_close(mrb);
        return;
    }

    mrb_load_file(mrb, fp);
    fclose(fp);

    mrb_close(mrb);
}

main/main.rb

main.rb 是 Ruby 脚本的主文件,包含项目的业务逻辑。

puts "Hello from mruby-esp32!"

# 示例代码
# require 'mruby-esp32-gpio'
# gpio = ESP32::GPIO.new(2)
# gpio.output
# gpio.high

3. 项目的配置文件介绍

sdkconfig

sdkconfig 是 ESP-IDF 的配置文件,用于配置项目的各种参数,如串口波特率、Wi-Fi 配置等。

# 示例配置
CONFIG_ESP32_DEFAULT_CPU_FREQ_80=y
CONFIG_ESP32_RTC_CLOCK_SOURCE_INTERNAL_RC=y
CONFIG_ESP32_ENABLE_COREDUMP_TO_FLASH=y
CONFIG_ESP32_WIFI_STATIC_IP=y
CONFIG_ESP32_WIFI_STATIC_IP_ADDRESS="192.168.1.100"

通过修改 sdkconfig 文件,可以调整项目的运行参数,以适应不同的硬件环境和需求。


以上是 mruby-esp32 项目的基本使用教程,涵盖了项目的目录结构、启动文件和配置文件的介绍。希望这些内容能帮助你更好地理解和使用该项目。

mruby-esp32mruby application template for ESP32项目地址:https://gitcode.com/gh_mirrors/mr/mruby-esp32

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

卓滨威Delmar

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值