ESP8266Arduino编程实例MCP4725数模转换器驱动
ESP8266-Arduino编程实例-MCP4725数模转换器驱动
MCP4725数模转换器驱动
1、MCP4725介绍
MCP4725 是一款单通道、12 位、电压输出数模转换器,具有集成 EEPROM 和 I2C 兼容串行接口。MCP4725有如下特性:
- 12 位分辨率
- 板载非易失性存储器 (EEPROM)
- ±0.2 LSB DNL(典型值)
- 外部 A0 地址引脚
- 正常或掉电模式
- 6µs(典型值)的快速建立时间
- 外部参考电压 (VDD)
- 满摆幅(Rail-to-Rail)输出
- 低功耗
- 单电源操作:2.7V 至 5.5V
- I2CTM 接口:
- 八个可用地址
- 标准 (100 kbps)、快速 (400 kbps) 和高速 (3.4 Mbps) 模式
- 小型 6 引脚 SOT-23 封装
- 扩展温度范围:-40°C 至 +125°C
因为这是一个 12 位 DAC 转换器。 这意味着它将接受多达 4096 个可能的输入以提供模拟输出,其中零输出值为零,输出值 4095 为满量程。满量程由提供给 VCC 引脚的参考电压决定。 还可以从上面看到,电源电压可以在 2.7 伏到 5.5 伏之间。 我们将使用 5v,或者与通过 USB 输入的电压一样接近。这可能需要测量此电压以获得准确的读数。要计算出最低有效位 (LSB) 的值如下:
1
L
S
B
V
C
C
4096
1 \space LSB = \frac {VCC}{4096}
1 LSB=4096VCC
2、硬件准备
- ESP8266 NodeMCU开发板一块
- MCP4725FVI模块一个
- 面板板一个
- 杜邦线若干
- 数据线一条
硬件接线如下:

3、软件准备
- Arduino IDE或VSCode + PlatformIO
在前面的文章中,对如何搭建ESP8266开发环境做了详细的介绍,请参考:
ESP8266 NodeMCU的引脚介绍在前面的文章中做了详细的介绍,请参考:
4、代码实现
本次使用的MCP4725驱动库如下:
1)导入依赖库头文件
1 | #include <Wire.h> |
2)设备初始化
1 | void setup(void) |
3)数据转换
1 | void loop(void) |
文章来源: https://iotsmart.blog.csdn.net/article/details/126136692
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 秋意寒!
评论