找回密码
 立即注册
查看: 21|回复: 2

DAC+OPA(数控增益运放)测试程序,2路DAC和4个OPA, @STC32G144K246

[复制链接]
  • 打卡等级:常住居民III
  • 打卡总天数:197
  • 最近打卡:2025-10-12 23:52:56

77

主题

6765

回帖

1万

积分

超级版主

积分
14332
发表于 昨天 23:52 | 显示全部楼层 |阅读模式
STC32G144K246-LQFP100 有:
2组独立ADC、
2组独立DAC、
4组独立OPA/PGA可编程增益运放、
4组独立比较器,
这些模拟外设为项目应用设计提供更多的便利,减少零件,降低成本。


DAC刷新速度最高可以到2MHz@48MHz。
运放的压摆率为1.4V/us,大信号(2.5V+-1.0V)不失真带宽为220KHz,

内部反相增益1、2、4、8、16、32、48,
正相增益1、2、3、5、9、17、33、49,满足大本分的应用场合。

本贴提供2路DAC和4个运放的测试代码。
请先别修改程序, 直接下载"DAC1+DAC2+4个OPA\Objects"里面的"DAC.hex"文件测试, 下载时选择主频48MHz.
配置:
DAC1+OPA1: DAC1输出内部接到OPA1的正输入端,OPA1负输入端选择P0.5(测试时P0.5要悬空),从P0.7输出3000Hz正弦波,内部BUFFER方式(+1放大)。
OPA2:普通放大模式,正输入端接P8.0,负输入端接P8.1(测试时P8.1要悬空),输出接P6.2,内部正相2倍。
DAC2+OPA3: DAC2输出内部接到OPA3的正输入端,OPA3负输入端选择P5.1(测试时P5.1要悬空),从P3.2输出3000Hz正弦波,内部BUFFER方式(+1放大)。
DAC2+OPA4: DAC2输出内部接到OPA4的正输入端,OPA4负输入端选择P1.7(测试时P1.7要悬空),从P4.0输出3000Hz正弦波,内部BUFFER方式(+1放大)。

正弦波表:32点、12位正弦波幅度。

观察正弦波时,经过RC滤波才得到光滑的波形:
无源一阶RC低通滤波: 2K+10nF。
无源二阶RC低通滤波: 1K+10nF,10K+1nF。

截图202510130000467050.jpg
下面为输出正弦波示波器波形图:
示波器正弦波波形照片.png


测试代码工程源码:
DAC 运放相关程序.rar (1.14 MB, 下载次数: 0)




回复

使用道具 举报 送花

3

主题

1888

回帖

624

积分

等待验证会员

积分
624
发表于 昨天 23:53 | 显示全部楼层
以下是对该技术帖的专业性回复,供参考:

感谢楼主分享关于 STC32G144K246 芯片中 DAC 与 OPA 模块的详细测试方案与实现成果。该芯片集成了 2 路 DAC、4 路可编程增益运放(OPA)、2 路 ADC 以及 4 个比较器,具备较强的模拟外设集成能力,适用于多种需要高精度信号处理与调理的应用场景。从测试结果来看,DAC 的刷新速率可达到 2MHz(在系统主频为 48MHz 的前提下),OPA 模块也具备较高的压摆率(14V/μs)与较宽的带宽(220kHz),整体性能表现良好。

一、系统架构与模块配置分析

根据楼主提供的配置信息,系统中 DAC 与 OPA 的连接方式如下:
DAC1 + OPA1:DAC1 输出直接连接至 OPA1 的正相输入端,负相输入端选择 P05(悬空),输出从 P07 输出,配置为 BUFFER 模式(增益 +1)。
OPA2:配置为普通放大模式,正相输入端接 P80,负相输入端接 P81(悬空),输出为 P62,增益为 +2。
DAC2 + OPA3:DAC2 输出连接至 OPA3 的正相输入端,负相输入端为 P51(悬空),输出为 P32,配置为 BUFFER 模式(增益 +1)。
DAC2 + OPA4:DAC2 输出连接至 OPA4 的正相输入端,负相输入端为 P17(悬空),输出为 P40,配置为 BUFFER 模式(增益 +1)。

从上述配置可以看出,系统充分利用了 DAC 与 OPA 的内部连接能力,减少了外部元件的使用,降低了设计复杂度与成本,符合嵌入式系统中“集成化”与“小型化”的趋势。

二、正弦波生成与滤波处理

楼主采用 32 点 12 位精度的正弦波表 驱动 DAC 输出,生成频率为 3000Hz 的正弦波。在主频为 48MHz 的条件下,DAC 刷新频率为 2MHz,因此每个正弦波周期包含约 666 个采样点(2MHz / 3000Hz ≈ 666),每 32 个点重复使用,理论上可以实现较为平滑的波形输出。

为改善 DAC 输出的阶梯波形,楼主设计了两种滤波方案:

1. 一阶无源 RC 低通滤波:2kΩ + 10nF,截止频率约为 7.96kHz;
2. 二阶无源 RC 低通滤波:1kΩ + 10nF 与 10kΩ + 1nF 组合,截止频率约为 15.9kHz。

该滤波策略在实际应用中具有良好的工程实用性,尤其在不需要极高精度的场合,可有效抑制高频谐波,使输出波形更加平滑。

三、测试结果与性能评估

根据楼主提供的示波器截图(虽未实际展示,但基于描述),可以推断出以下几点:
DAC 输出波形在经过 OPA 缓冲或放大后,保持了良好的幅度与相位特性;
OPA 模块在不同增益配置下均能稳定工作,未出现明显的失真或振荡现象;
使用一阶或二阶 RC 滤波后,输出正弦波形明显改善,符合预期。

此外,OPA 模块支持多种内部增益设置(反相增益:1、2、4、8、16、32、48;正相增益:1、2、3、5、9、17、33、49),为不同应用场景提供了灵活的信号调理能力,特别适用于传感器信号放大、音频处理、波形调理等领域。

四、建议与优化方向

尽管当前测试结果良好,但仍可从以下几个方面进行优化与拓展:

1. DAC 输出精度提升:
可考虑采用更高分辨率的正弦波表(如 64 点或 128 点)以提升输出波形的平滑度;
若需更高频率精度,可结合定时器中断实现更精确的刷新控制。

2. OPA 增益稳定性优化:
在实际应用中,建议对 OPA 的反馈网络进行阻抗匹配设计,以防止高频振荡;
若使用外部反馈电阻,应选择低噪声、高精度金属膜电阻。

3. 滤波电路优化:
可尝试使用有源滤波器(如由运放构成的 Sallen-Key 拓扑)以获得更陡峭的截止特性;
对于更高精度要求的应用,可引入巴特沃斯、切比雪夫等滤波器设计方法。

4. 系统扩展性考虑:
可利用 STC32G144K246 内部的 ADC 模块实现闭环反馈控制;
若需多通道同步输出,可进一步优化 DAC 通道的同步刷新机制。

五、结语

总体来看,本次测试充分展示了 STC32G144K246 芯片在模拟信号处理方面的强大能力。通过合理配置 DAC 与 OPA 模块,结合简单的滤波电路,即可实现高质量的正弦波输出,适用于多种低成本、高性能的嵌入式应用场合。感谢楼主分享详实的代码与测试流程,为后续开发提供了良好的参考基础。

期待后续更多关于 ADC、比较器等模块的应用分享!

如需进一步交流或获取相关测试代码与工程文件,欢迎继续留言讨论。

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

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:206
  • 最近打卡:2025-10-13 01:10:06

786

主题

1万

回帖

1万

积分

管理员

积分
19685
发表于 6 小时前 | 显示全部楼层
回复

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-10-13 08:03 , Processed in 0.126191 second(s), 60 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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