你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

查看: 2484|回复: 3

[STM32L4+] Nucleo-L4R5ZI评测6 DAC+OPAMP_PGA

[复制链接]

68

主题

3266

回帖

82

蝴蝶豆

社区小助手

最后登录
2020-12-9
发表于 2018-1-12 11:37:57 | 显示全部楼层 |阅读模式
本帖最后由 wenyangzeng 于 2018-1-12 11:46 编辑

Nucleo-L4R5ZI评测6 DAC+OPAMP_PGA

    STM32L4R5具有2通道12Bit的DAC和2通道可编程运算放大器,在STM32Cube_FW_L4_V1.10.0\Projects\STM32L4R5ZI-Nucleo-Nucleo演示包里没有DAC和OPAMP的演示代码。本次评测移植了STM32Cube_FW_L4_V1.10.0\Projects\STM32L4R9I_EVAL\Examples\OPAMP的代码到STM32L4R5ZI-Nucleo上来评测。

   移植后的例子使用了内置的PGA模式(OPAMP可编程增益)。
1、DMA为DAC提供正弦波数据。
2、在DAC_OUT2 (PA5)上产生一个正弦波信号。内部连接到由OPAMP2运放输入。
3、OPAMP2的输出在PB0上,增益为2或4。当OPAMP仍然启用时,OPAMP增益被改变。
4、OPAMP应用了正常和低功率模式(采样和保持模式)。
5、OPAMP(和DAC)的低功耗模式也可以在内核为睡眠模式停留期间使用。。
6、内核设置为睡眠模式,没有直接存储器存取中断处理。
7、配置开发板上的"USER"按键在外部中断模式,在按键中断中改变不同的运行模式:
模式0:
              DAC:     normal power mode
              OPAMP:   normal power mode - gain = 2
              DMA:     circular mode - DMA half transfer IT handled by Cortex
              Cortex:  run mode
模式1:
              DAC:     normal power mode
              OPAMP:   normal power mode - gain = 4
              DMA:     circular mode - DMA half transfer IT handled by Cortex
              Cortex:  run mode
模式2:
              DAC:     Low power mode
              OPAMP:   normal power mode - gain = 4
              DMA:     circular mode - DMA half transfer - no IT handled by Cortex
              Cortex:  run mode
模式3:
              DAC:     Low power mode
              OPAMP:   Low power mode - gain = 4
              DMA:     circular mode - DMA half transfer - no IT handled by Cortex
              Cortex:  sleep mode
模式4:
              DAC:     Low power mode
              OPAMP:   Low power mode - gain = 2
              DMA:     circular mode - DMA half transfer - no IT handled by Cortex
              Cortex:  sleep mode

    评测中发现官方代码中的正弦波数据有误,不能生成正确的正弦波波形,修改后工作正常。
   从评测结果可知,由于采用DMA传送正弦波数据,运行中没有消耗MCU系统资源,充分发挥了STM32L4+的低功耗特性。

运行结果,测试点在PA5(DAC)和PB0(OPAMG_PGA),从图中可以看出正弦波的波形底部有点压缩,判断应该是DAC输出数据0x00的时候输出端无法达到真正0V的缘故,这通过修改正弦波数据应该可以得到改善。

2.png
2倍增益

4.png
4倍增益

1.png
错误的正弦波数据的波形

OPAMP.rar (73.23 KB, 下载次数: 73)
<
回复

使用道具 举报

43

主题

252

回帖

38

蝴蝶豆

金牌会员

最后登录
2020-4-8
发表于 2018-1-12 17:31:37 | 显示全部楼层
你频率这么低,输出的阶梯居然这么明显,增加DAC速度并增加插值。输出加RC低通。
回复 支持 反对

使用道具 举报

68

主题

3266

回帖

82

蝴蝶豆

社区小助手

最后登录
2020-12-9
 楼主| 发表于 2018-1-12 18:01:30 | 显示全部楼层
本帖最后由 wenyangzeng 于 2018-1-12 18:02 编辑
kylongmu 发表于 2018-1-12 17:31
你频率这么低,输出的阶梯居然这么明显,增加DAC速度并增加插值。输出加RC低通。 ...

ST的这个演示中正弦波只使用32个数据,我们完全可以自己增加数据位数得到圆滑的波形的,比如用的1024个数据。由于是DMA在搬运数据,只要DMA够快,输出频率可以高不少的。
回复 支持 反对

使用道具 举报

1182

主题

3785

回帖

1

蝴蝶豆

论坛元老

最后登录
2020-3-17
发表于 2018-1-15 09:35:27 | 显示全部楼层
回复 支持 反对

使用道具 举报

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版