发现最新的3.0.0版本有一些函数已经变更 这个实验以下函数取消
// ledcSetup(chanel, freq, resolution);// PWM初始化
//ledcAttachPin(pin, chanel);// 绑定PWM通道到GPIO上
因为 esp32-hal-ledc.h 版本更新
上面两个函数已经取消导致 pwm实验失败
已经不用通道指定
可以用下面函数替代
ledcAttach(pin, freq, resolution);// PWM初始化
原来的通道0 不再使用,直接用pin 其实使用更简单了。
附上代码:
* 实验名称:PWM呼吸灯实验
*
* 接线说明:LED模块-->ESP32 IO
* (D1)-->(15)
*
* 实验现象:程序下载成功后,D1指示灯呈现呼吸灯效果,由暗变亮,再由亮变暗
*
* 注意事项:
*
*/
#include "public.h"
#include "led.h"
#include "pwm.h"
//定义全局变量
u16 g_duty_value=0;
u8 g_fx=1;
void setup() {
pwm_init(led1_pin,0,1000,10);
}
void loop() {
if(g_fx==1)
{
g_duty_value+=10;
if(g_duty_value>1010)g_fx=0;
}
else
{
g_duty_value-=10;
if(g_duty_value<10)g_fx=1;
}
pwm_set_duty(led1_pin,g_duty_value);
delay(10);
}