打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
ESP8266无人机-PWM模块

关于ESP8266小飞机的设计和源码解读开始了!

8266的数据总线

一些设计指南

因为IIC传感器很多,这里也看一下

因为对于ESP8266来讲,纯的Arduino开发其实没有那么多,所以要结合底层看。

管脚定义先看


i的意思感觉是内部的意思,就是加载到内存的意思,我说这样理解的

ESP8266的开发有两个,NoOS,RTOS,我一开始以为Arduino是NoOS的,但是我错了,其实是RTOS实现的。

因为出现了很多的PWM的使用,所以一开始我们就先睹为快。

在RTOS的这个位置。

所有的API,也就是调用这些

随便看个头,PWM的启动

PWM的初始化

也对esp_err_t感兴趣,在这里有定义

我觉得我们可以看下NoOS里面的API再看RTOS的。

是软件实现的,还有不可屏蔽的中断

这打太极的写法,软件算法

这是PWM的参数,这肯定够我玩耍了

代码实例

先不要追究最上面的结构体是什么,先可以看具体函数的作用。PWM的初始化,开启PWM,设置占空比,获取占空比,设置频率,得到频率。

配置几路,这个参数会传到这个地方

可以看一下PWM的初始化配置。周期,各通道的占空比。传入的通道数,引脚引脚的硬件参数。

我们结合飞控看看怎么配置的:

要用的参数都用宏写好,四旋翼是4个通道,使用4,寄存器上面也要写好

这个结构体的写的是GPIO的寄存器,对应PIN脚的IO复用值,GPIO的序号。是一个n x 3的数组指针。

4通道还是

包括处理器也有自己独特的数据封装

开始初始化的配置

注意看PWM_init()函数的参数。

使用for循环将各通道的占空比参数都设置

设置周期

设置占空比

其实还有一些东西没有说明白。

就这些,其实对于写文章来讲,我现在完全可以就写下面的,但是为了学习的需要,这里就再具体的写。

文档要看技术参考

这个寄存器的名字叫,功能选择寄存器

有一个Excel的REG表,第一个就是

大概就是这样的设计方法,在一个MUX上面按照顺序排寄存器

第二个参数是在寄存器的组里面选第三个IO的功能,就是说这个脚上面可以有这么多的功能,现在用第三个的意思。

就是这样,注意到reg是0定义,所以功能记得+1

https://docs.espressif.com/projects/esp8266-rtos-sdk/en/latest/api-reference/peripherals/pwm.html

ESP8266 RTOS

https://github.com/espressif/ESP8266_RTOS_SDK

RTOS的Doc

http://wiring.org.co/

Arduino的原型

https://www.espressif.com/zh-hans/support/documents/technical-documents?keys=&field_type_tid%5B%5D=14

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
乐鑫esp8266学习rtos3.0笔记:体验下官方推荐的在Linux搭建 ESP8266
Arduino IDE下ESP32环境搭建与离线安装
switch
ESP 12系列arduino环境开发基础
Wemos D1 mini开发板初用
Arduino之模拟I/O的使用
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服