测量条件:
- VDD:2.5V,
- REF:3.0V,
- SDI=VIO:3.3V,
遇到的问题:
- 当接入IN+为恒定3.0V或者更高,读取的数值为57343,为什么不是2^16=65536呢?
- 当接入IN+为0.49V或更低,读取的数值为0,这是最低的测量范围吗?
使用的ESP32 Arduino开发环境,一下为测试代码:
int _res; byte _highByte; byte _lowByte; // 将 CNV 高电平,转换开始 digitalWrite(pinCNV, HIGH); delayMicroseconds(1); // 将 CNV 低电平,并等待1us,数据移到SDO,可以采集 digitalWrite(pinCNV, LOW); delayMicroseconds(1); // 开始采集数据 _highByte = hspi->transfer(0xff); _lowByte = hspi->transfer(0xff); _res = (_highByte << 8) | _lowByte;
用示波器查看应该没什么问题,SDO(黄色)正常输出,SCK是紫色的
谢谢
上传了图片
[编辑人: Jun1988 编辑时间: 4 Aug 2021 10:57 AM (GMT -4)]