线程中讨论的其它部件: ADS8688
嗨,Sylvain!
我正在尝试在 Proteus 上模拟 ADS8688a ADC,该 ADC 使用您在 GitHub 上贡献的库使用 Arduino IDE 编码。 我谨随函附上所使用的原理图。
我们正在尝试使用微控制器的外部时钟。 当执行 Github 示例文件夹中的代码 read_channel.ino 时,即使我们将3.7V 电源连接到 AIN0P 引脚,AIN0_GND 正在接地,我们仍将获得5.12V (0xFF)的全刻度读数。
请帮助我们调试这种 asap 吗?
此致,
阿莫格
代码:
| /* ADS8688库示例 | |
| * | |
| * PIN 连接: | |
| * GNF:GND | |
| * REFIO:NC (当 REFSEL 连接到 GND 时输出4.096V 参考电压) | |
| * REFSEL:GND (启用内部4.096V 参考) | |
| * SDI:引脚11 / mega 引脚51 | |
| * RST/PD:+5V | |
| *菊花:NC | |
| * CS:引脚10 / mega 引脚10 | |
| * SCK:引脚13 / mega 引脚52 | |
| * SDO:引脚12 / mega 引脚50 | |
| *报警:常闭 | |
| * AVDD:+5V | |
| * DVDD:+5V (数字逻辑电平) | |
| * | |
|
#include <ADS888.h> #include<SPI.h> |
|
| ADS8688 bank = ADS8688();//用 PIN 10实例化 ADS8688作为缺省 CS | |
| void setup(){ | |
| bank.setChannelSPD(0b00000010);//启用通道0,关闭其它通道的电源 | |
| bank.setChannelRange(0,R6);//将所有信道范围设置为+-1.25*Vref | |
| bank.autoRst();//重置自动序列 | |
| Serial.begin(115200);//开始串行通信 | |
| } | |
| void loo(){ | |
| serial.print ("CH0:");//打印标签 | |
| UINT16_t val = bank.noOp();//触发器采样 | |
| 串行打印(气缸组.I2V (val,R1));//打印值(单位为伏特) | |
| serial.println("V");//打印电压标签 | |
| 延迟(500);//等待500毫秒 | |
| } |


