ESP8266 RTOS SDK开发


一、源码RTOS SDK包的下载和编译

git clone  https://gitee.com/Taury/ESP8266_RTOS_SDK.git
修改.gitmodules文件
[submodule "components/json/cJSON"]
path = components/json/cJSON
url = ../../william_william/cJSON.git [submodule "components/mbedtls/mbedtls"]
path = components/mbedtls/mbedtls
url = ../../william_william/mbedtls.git [submodule "components/lwip/lwip"]
path = components/lwip/lwip
url = ../../william_william/esp-lwip.git [submodule "components/mqtt/esp-mqtt"]
path = components/mqtt/esp-mqtt
url = ../../william_william/esp-mqtt.git
更新子模块
git submodule update --init --recursive

二、固件烧录

1.管脚定义

模式 CH_PD(EN) RST GPIO15 GPIO0 GPIO2 TXD0
下载模式
运行模式
测试模式 - - -

注:GPIO6~GPIO11被用于连接开发板的闪存(Flash Memory)因此建议不要使用GPIO6~GPIO11。请谨慎使用GPIO10,请勿使用GPIO9。(IO2 log调试默认波特率74880)

三、程序例程

## 1.PWM设置


#include <stdio.h>
#include <string.h>
#include <stdlib.h> #include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "freertos/queue.h" #include "esp_log.h"
#include "esp_system.h"
#include "esp_err.h" #include "esp8266/gpio_register.h"
#include "esp8266/pin_mux_register.h" #include "driver/pwm.h" #define PWM_0_OUT_IO_NUM 15 static const char *TAG = "main"; // pwm pin number
const uint32_t pin_num[1] = {PWM_0_OUT_IO_NUM}; // phase table, delay = (phase[x]/360)*PERIOD
float phase[1] = {0}; void buzzer_freq_set(uint32_t freq)
{
uint32_t period = 1000000 / freq;
uint32_t duty = period / 2; pwm_set_period(period);
pwm_set_duty(0, duty);
pwm_start();
} void app_main()
{
uint32_t pwm_period = 1000; // 1kHz
uint32_t pwm_duty = 500; ESP_LOGI(TAG, "M.Y.Dodo\n");
pwm_init(pwm_period, &pwm_duty, 1, pin_num);
// pwm_set_phases(phase);
pwm_start(); uint32_t freq = 100;
buzzer_freq_set(freq); int16_t count = 0; while (1) {
count++;
if (count == 3) {
count = 0;
freq += 100;
buzzer_freq_set(freq);
} vTaskDelay(1000 / portTICK_RATE_MS);
}
}

连接MQTT

ESP8266 RTOS SDK开发的更多相关文章

  1. 关于esp8266的SDK开发串口打印mismatch map 3,spi_size_map 6 system_partition_table_regist fail解决办法

    最近在学习esp8266 用的sdk开发,烧录碰到个问题,本人使用的esp8266模块是esp8266-12f,模块是4M的也就是32Mbit 参考了网上的很多办法,大部分写的不清楚也没解决,摸索了几 ...

  2. ESP8266 RTOS SDK(IDF)编译环境搭建

    前提条件 按照https://www.cnblogs.com/ansersion/p/10458171.html的步骤搭建非IDF环境 下载 https://github.com/espressif/ ...

  3. ESP8266 RTOS SDK编译环境搭建

    前提条件 1. linux操作系统或者windows下的linux虚拟机或者OS X操作系统 2. 联网 下载 * [Mac](https://dl.espressif.com/dl/xtensa-l ...

  4. ESP8266 RTOS SDK烧写环境构建

    简介 esptool是一个Python软件程序,适用于ESP8266等一系列芯片的烧写,灵活高效. 环境构建 在官网下载安装最新2.7版python (linux和os x一般会自带python2.7 ...

  5. ESP8266 SDK开发: 测试下诱人的程序

    前言 这一节测试一下诱人的程序 实现的功能,APP通过SmartConfig给Wi-Fi模块配网并绑定设备,然后通过MQTT远程控制开发板的继电器, APP显示ESP8266采集的温湿度数据. 简而言 ...

  6. esp8266 SDK开发之环境搭建

    最近在弄这个WiFi模块,发现网上SDK开发方面的资料很少,发现了一套视频教程,不过主讲人的讲课方式实在受不了.对基于SDK开发感兴趣的同学可以通过本帖在Ubuntu系统上通过Eclipes搭建开发环 ...

  7. ESP8266开发综合篇(SDK开发-视频教程总揽)

    为了解决基础教程简单入门但不实用,项目方案非常实用但比较难的问题,开始推出8266开发综合篇 综合篇涉及到AT,LUA,SDK,LUA(sdk)开发,LUA和SDK开发会同步进行,后期再整理AT指令的 ...

  8. ESP8266 NON-OS SDK 和 RTOS SDK实现GPIO中断不同点

    ESP8266 Non-OS SDK 和 RTOS SDK 实现GPIO的方法稍有不同: 对于 Non-OS SDK,比如需要把 MTDO 配置成输入,同时下降沿触发中断: gpio_init(voi ...

  9. 16-ESP8266 SDK开发基础入门篇--TCP 服务器 非RTOS运行版,串口透传(串口回调函数处理版)

    https://www.cnblogs.com/yangfengwu/p/11105466.html 其实官方给的RTOS的版本就是在原先非RTOS版本上增加的 https://www.cnblogs ...

随机推荐

  1. 2.1 动为进程,静为程序 -进程概论 -《zobolの操作系统学习札记》

    2.1 动为进程,静为程序 -进程概论 目录 2.1 动为进程,静为程序 -进程概论 问1:发明进程的原因? 问2:现在计算机中的进程的定义是什么? 问3:为什么进程跟处理器的联系更密切? 问4:进程 ...

  2. 【Azure 应用服务】App Service 开启了私有终结点(Private Endpoint)模式后,如何来实现公网Git部署呢?

    问题描述 因为中国区的App Service对外(公网访问)需要进行ICP备案,所以很多情况下,Web应用部署到App Service后,都是通过Application Gateway(应用程序网关) ...

  3. Redis 切片集群的数据倾斜分析

    Redis 中如何应对数据倾斜 什么是数据倾斜 数据量倾斜 bigkey导致倾斜 Slot分配不均衡导致倾斜 Hash Tag导致倾斜 数据访问倾斜 如何发现 Hot Key Hot Key 如何解决 ...

  4. RPA 快手自动上传机器人

    1.打开账号Cookie预存表格 2.机器人自动登录账号 3.机器人开始按照预设视频位置开始自动上传视频 4.机器人开始自动填写视频相关信息内容 5.完成后,可自动切换下一个账号继续上传

  5. bat实现删除BCUnrar.dll实现无限使用

    删除项目:计算机\HKEY_CURRENT_USER\Software\Scooter Software\Beyond Compare 4下的CacheId 项可以实现Beyond Compare 4 ...

  6. JQuery中html(),val(),text()-的区别

    1.HTML html():取得第一个匹配元素的html内容.这个函数不能用于XML文档.但可以用于XHTML文档 html(val):设置每一个匹配元素的html内容.这个函数不能用于XML文档.但 ...

  7. linux下的nginx日志自动备份压缩--日志切割机

    部署完毕nginx之后,发现自己的/var/log/nginx/*log的日志不会压缩,一直都是一个文本写日志, 时间久了,日志文件内存过于增加,将会导致在日志添加过程效率降低,延长时间. 默认安装的 ...

  8. gpg加解密异常

    在本地windows电脑和开发环境(linux) ,都不报错,但是在测试环境(linux) 上报错. 报错信息 org.bouncycastle.openpgp.PGPException: Excep ...

  9. CA证书、自颁发证书、自签名证书联系

    一.理论基础 ssl:secure socket layer(安全套接层协议)的缩写,通过此协议可以保证两个应用通信的可靠性和保密性.openssl:是ssl协议的实现.提供了对称加密算法.非对称加密 ...

  10. 如何用 银行卡OCR 接口进行快速开发

    最近公司项目有一个银行卡识别的小需求,想着如果用现成的API就可以大大提高开发效率,在网上的API商店搜索了一番,发现了 APISpace,它里面的银行卡OCR非常符合我的开发需求.   银行卡OCR ...