wyfwkyug 发表于 2025-4-6 10:56:43

求助pwm控制方案

目前一个项目,需要两个dac输出控制,用两路pwm模拟。
正交编码器输入,还有一路音频输出。
32G的pwm功能能够同时完成吗?
模拟输出静态电压值就可以。音
频输出有参考电路吗?求助大神。

国芯人工智能 发表于 2025-4-6 10:58:00

针对您提出的PWM控制方案需求,以下是一些专业建议和分析:

1. PWM模拟DAC输出
使用PWM模拟DAC输出是一种常见的低成本解决方案。PWM信号的占空比可以通过低通滤波器转换为模拟电压。对于两路DAC输出,您需要两路独立的PWM信号。

实现步骤:
PWM生成:确保您的微控制器(如32G系列)能够生成两路独立的PWM信号。PWM的频率和分辨率是关键参数。较高的频率可以减少滤波器的设计复杂度,而较高的分辨率可以提高模拟电压的精度。
低通滤波器:设计一个简单的RC低通滤波器,将PWM信号转换为平滑的模拟电压。滤波器的截止频率应远低于PWM频率,以确保有效滤除高频成分。
静态电压值:通过调整PWM的占空比,可以实现所需的静态电压值。例如,如果PWM的占空比为50%,则输出电压为PWM高电平电压的一半。

2. 正交编码器输入
正交编码器通常用于测量旋转或线性位移。它输出两路相位差90度的方波信号,通过解码这两路信号可以确定运动的方向和速度。

实现步骤:
信号捕获:使用微控制器的定时器或专用编码器接口模块捕获正交编码器的A相和B相信号。
解码算法:编写解码算法,根据A相和B相的变化顺序判断运动方向,并根据脉冲计数计算位移或速度。
中断处理:为了提高响应速度,建议使用中断处理编码器信号的变化。

3. 音频输出
音频输出通常需要DAC或PWM信号经过适当的滤波和放大。

参考电路:
PWM音频输出:如果使用PWM生成音频信号,需要设计一个低通滤波器以去除高频成分。滤波器的截止频率应设置为音频信号的最高频率(通常为20kHz)。
DAC音频输出:如果使用DAC生成音频信号,可以直接连接到一个音频放大器。常见的音频放大器电路包括运算放大器(如LM386)或专用音频放大器芯片。
参考电路:可以参考以下电路设计:
PWM音频输出:PWM信号 → RC低通滤波器 → 音频放大器 → 扬声器。
DAC音频输出:DAC输出 → 音频放大器 → 扬声器。

4. 32G微控制器的能力
32G系列微控制器通常具有多路PWM输出、定时器捕获功能和DAC输出。具体能否同时完成上述任务,取决于以下因素:
PWM通道数量:确保有足够数量的PWM通道用于DAC模拟和音频输出。
定时器资源:正交编码器输入需要占用定时器资源,确保有足够的定时器可用。
处理能力:确保微控制器的处理能力足够处理所有任务,特别是在高频率PWM和实时编码器解码的情况下。

结论
在32G微控制器上,通过合理配置PWM通道、定时器和DAC资源,可以同时实现两路PWM模拟DAC输出、正交编码器输入和音频输出。建议详细查阅微控制器的数据手册,确保资源分配合理,并进行实际测试以验证方案的可行性。

希望这些建议对您的项目有所帮助。如有进一步问题,欢迎继续讨论。

[本文内容由国芯人工智能辅助生成,仅供参考]

DebugLab 发表于 2025-4-6 11:11:36

您的DAC要求很明确,PWM模拟输出静态电压就可以
但音频输出要求不明确,对音质有何要求,还有采样率和时长
要求高可以用I2S,注意32G12K系列无I2S

建议使用AI8051U,可以参考实验箱和开山斧(开发板)例程
https://www.stcaimcu.com/data/download/DemoCode/AI8051U-DEMO-CODE-V1.2.zip
https://www.stcaimcu.com/thread-10686-1-1.html
https://www.stcaimcu.com/thread-11618-1-1.html

wyfwkyug 发表于 2025-4-6 11:15:12

DebugLab 发表于 2025-4-6 11:11
您的DAC要求很明确,PWM模拟输出静态电压就可以
但音频输出要求不明确,对音质有何要求,还有采样率和时长 ...

音频要求不高,就是开机的水滴声,几秒钟就可以,还有报警的滴滴声。我用PWMA的两路输出控制占空比,控制DAC。还能用PWMA的输入捕获检测正交编码器吗。PWMB想用来控制喇叭。从来没接触过喇叭的控制,以前都是蜂鸣器。

DebugLab 发表于 2025-4-6 11:23:12

wyfwkyug 发表于 2025-4-6 11:15
音频要求不高,就是开机的水滴声,几秒钟就可以,还有报警的滴滴声。我用PWMA的两路输出控制占空比,控制 ...
音频文件体积较大,为了容量大可以考虑32G12K128
可以使用PWM播放音频,PWM工作在超声波频率,用PCM调制占空比
可以使用ADPCM压缩,参考梁工的ADPCM例程
https://www.stcaimcu.com/thread-10641-1-1.html
https://www.stcaimcu.com/thread-5633-1-1.html


神农鼎 发表于 2025-4-6 12:08:25

直接使用AI8051U 来解决

wyfwkyug 发表于 2025-4-6 14:30:43

神农鼎 发表于 2025-4-6 12:08
直接使用AI8051U 来解决
我就是看您那个奢香夫人的帖子,在研究怎么播放音频。
现在还没搞通播放音频的整个流程,有教程吗。
我去看看ai8051U的资料。
顺便问一下,8052啥时候能出?
页: [1]
查看完整版本: 求助pwm控制方案