本帖最后由 JectXie 于 2024-9-1 19:19 编辑
#【Follow me第二季第2期】 基础任务- 3、用OPAMP放大DAC信号
3、用OPAMP放大DAC信号
我本以为到了这一步,这个OPAMP是跟容易的东西,又更新了我的盲区,Arduino UNO R4 Wifi这个板子内置了OPAMP,我本来以为他自动可以让他输出的波形是2倍的波,谁知道,和我想的不一样,用到的原材料,包含了外置电阻+导线。
代码很简单,就是启用OPAMP功能
void setup () {
OPAMP.begin(OPAMP_SPEED_HIGHSPEED);
}
void loop() {}
网上的教程用到了信号发生器,这次我不管怎么样都不可能买了。
一样的逻辑,用另外一块板子,输出DAC,给到Arduino
我这里用了ESP32作为信号输出。Arduino板子最高输出是5V,所有要记得,2倍不要超出5V,不然波形会出问题。
* Copyright (c) 2018, circuits4you.com
* All rights reserved.
*
* ESP32 DAC - Digital To Analog Conversion Example
*/
#define DAC1 25
void setup() {
Serial.begin(115200);
}
void loop() {
int Value = 100;
dacWrite(DAC1, Value);
delay(1000);
Value = 50;
dacWrite(DAC1, Value);
delay(1000);
}
注释的是一段正弦波,翻倍以后就超出5V了。是一个错误案例。
参考电路
实际测得波形
上面一半是OPAMP以后的波形。证明已经放大过了。
实际操作中遇到的问题,推荐接地用的是10K的电阻,另外一个是30K的电阻,没错,2个电阻都没有。
10K是2个20并联的
30k是3个90K并联的
我后面想了一下,也可以A0输出DAC,然后接到A1、A2、A3从A3输出也可以完成这个功能。