乐鑫技术交流
直播中

李俊

7年用户 1334经验值
私信 关注
[问答]

arduino 3.0.2版本,使用ledc出不来pwm波是什么原因导致的?

   ledcAttach(33, 100, 8);    ledcAttach(32, 100, 8);    ledcAttach(27, 100, 8);    ledcAttach(21, 100, 8);    ledcWrite(33, 128);    ledcWrite(32, 128);    ledcWrite(27, 128);    ledcWrite(21, 128);
在setup()调用以上内容初始化33、32、27、21这四路pwm,但是21引脚没波形,不知道为什么。

回帖(1)

628215

2024-8-1 17:16:37
在Arduino 3.0.2版本中,使用LEDC(LED控制)库来生成PWM波形。根据您提供的代码,您已经尝试初始化了四个引脚(33、32、27、21)并设置了相同的占空比(128)。但是,您发现引脚21没有PWM波形。以下是一些可能的原因和解决方案:

1. **引脚兼容性**:并非所有的引脚都支持PWM功能。在某些ESP32模块上,引脚21可能不支持PWM。请检查您的ESP32模块的数据手册,确保引脚21支持PWM。

2. **引脚冲突**:如果引脚21被用于其他功能(例如,SPI通信、I2C通信等),这可能会导致PWM波形无法正常生成。请检查您的代码和硬件连接,确保引脚21没有被用于其他功能。

3. **LEDC通道分配**:在ESP32中,LEDC通道数量有限。您已经为四个引脚分配了相同的频率(100Hz)和分辨率(8位)。请尝试为引脚21分配不同的频率或分辨率,以检查是否解决了问题。

4. **硬件问题**:引脚21可能存在硬件问题,例如接触不良或损坏。尝试使用其他引脚或在其他项目中测试引脚21,以排除硬件问题。

5. **软件问题**:请确保您使用的是最新版本的Arduino IDE和ESP32开发板包。有时候,软件中的bug可能会导致某些功能无法正常工作。您可以尝试更新Arduino IDE和ESP32开发板包,以解决潜在的软件问题。

6. **调试**:您可以使用示波器或逻辑分析仪来观察引脚21的信号。这将帮助您确定问题是否出在硬件或软件上。

综上所述,要解决引脚21没有PWM波形的问题,您需要检查引脚兼容性、引脚冲突、LEDC通道分配、硬件问题、软件问题,并进行调试。希望这些建议能帮助您找到问题的原因并解决它。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分