找回密码
 立即注册
查看: 59|回复: 6

关于PWM之DAC方案结果 | 成功

[复制链接]
  • 打卡等级:以坛为家I
  • 打卡总天数:209
  • 最近打卡:2025-08-12 08:26:22
已绑定手机

64

主题

48

回帖

458

积分

中级会员

积分
458
发表于 5 天前 | 显示全部楼层 |阅读模式

X00.bmp X01.bmp

这种 DA 使用,0--100% DUTY 步长 10% ,结果是低电平应该是0V,结果大于2.5V,最高电压小于5V。目标和结果不太一样!


                while(1)
                {
                        led1 =~led1 ;
                        led2 =~led1 ;
                        delay_ms(1000);
                        pwm8330(0);        
                        delay_ms(1000);
                        pwm8330(100);        
                        delay_ms(1000);
                        pwm8330(200);        
                        delay_ms(100);
                        pwm8330(300);        
                        delay_ms(1000);
                        pwm8330(400);        
                        delay_ms(1000);
                        pwm8330(500);        
                        delay_ms(1000);
                        pwm8330(600);        
                        delay_ms(1000);
                        pwm8330(700);        
                        delay_ms(1000);
                        pwm8330(800);        
                        delay_ms(1000);
                        pwm8330(900);        
                        delay_ms(1000);
                        pwm8330(1000);        

回复

使用道具 举报 送花

3

主题

2067

回帖

982

积分

等待验证会员

积分
982
发表于 5 天前 | 显示全部楼层
关于PWM之DA方案的测试结果分析如下:

根据提供的测试数据及代码逻辑,当前PWM驱动DAC(DA)输出存在明显异常。测试中设定0%~100%占空比(步长为10%),但实际测量结果显示,在0%占空比时,输出电压高于25V,而100%占空比时输出电压却低于5V,与预期的0V至电源电压范围不符。该现象表明系统在PWM转DAC转换过程中存在功能异常或配置错误。

从代码结构来看,pwm8330()函数用于设置PWM占空比,其参数应为0~1000之间的数值(假设为10位精度)。然而,测试过程中未见明确的DAC初始化或校准流程,也未对PWM输出进行适当的滤波处理。PWM信号本身为方波,若直接作为DAC使用,需配合低通滤波器以实现平滑的直流电压输出。若未进行滤波,则输出电压将呈现脉动特性,无法满足DAC的功能需求。

此外,测试中使用的占空比步长为10%,即0%、10%、20%……100%。但在实际应用中,若希望实现更精细的电压控制,建议采用更高分辨率的PWM配置(如12位或16位),并确保ADC/DAC模块的校准与匹配。

综上所述,当前PWM之DA方案存在以下问题:

1. 输出电压异常:0%占空比时输出电压远高于预期值,可能由于PWM配置错误或DAC映射关系不正确;
2. 缺乏滤波机制:PWM信号未经滤波直接作为DAC使用,导致输出电压波动;
3. 未进行校准:未对DAC通道进行初始化或校准,影响输出精度;
4. 参数范围不合理:若pwm8330()函数接受0~1000的输入,需确认其与实际占空比的对应关系是否合理。

建议采取以下改进措施:
检查并修正PWM输出配置,确保占空比与电压输出之间具有线性关系;
在PWM输出端添加RC低通滤波器,以实现稳定的直流电压输出;
对DAC通道进行初始化和校准,确保输出电压符合设计要求;
优化占空比参数范围,确保与硬件支持的PWM精度一致。

如需进一步调试或验证,请提供具体的硬件平台信息、PWM模块规格以及DAC的电气特性,以便进行更精确的分析与优化。

[本文内容由国芯人工智能辅助生成,仅供参考]
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:525
  • 最近打卡:2025-08-12 10:42:53
已绑定手机

86

主题

5887

回帖

1万

积分

超级版主

积分
10629
发表于 5 天前 | 显示全部楼层
PWM推挽,ADC高阻,输出信号不能带负载
回复 支持 1 反对 0

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:209
  • 最近打卡:2025-08-12 08:26:22
已绑定手机

64

主题

48

回帖

458

积分

中级会员

积分
458
发表于 4 天前 | 显示全部楼层
这种DA方式的反应速度是多少?
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:209
  • 最近打卡:2025-08-12 08:26:22
已绑定手机

64

主题

48

回帖

458

积分

中级会员

积分
458
发表于 4 天前 | 显示全部楼层
截图202508080847406275.jpg
PWM波形显示是正确的,现在怀疑是C30,C31导致的迟滞,电容一旦充电,放电速度会比较慢
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:458
  • 最近打卡:2025-08-12 12:52:14
已绑定手机

8

主题

154

回帖

1381

积分

金牌会员

积分
1381
发表于 4 天前 | 显示全部楼层
楼主看看板凳位,应该是端口模式没有正确初始化
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:209
  • 最近打卡:2025-08-12 08:26:22
已绑定手机

64

主题

48

回帖

458

积分

中级会员

积分
458
发表于 3 天前 | 显示全部楼层
截图202508091452338966.jpg
多谢大神!成功
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-8-12 13:28 , Processed in 0.133563 second(s), 88 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表