This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

ADC12MEM值的读取与转换



通过debugger时候的调试窗口得出ADC12MEM0的值为十六进制。问题是:
1.我想把ADC12MEM0的值转移到int results[index]中,那么ADC12MEM0十六进制数会自动转换为十进制吗?需要添加额外的转换函数吗?
2.我设置了内部参考电压2.5V,实际最大模拟输入电压为3V,为了还原真实的数值,还是用如下公式吗:[(ADC12MEM0的十进制数)/(2的12次方)]×2.5

    若设置参考值Vref+=2.5V,是不是说明此时ADC转换后最大电压是2.5而不是3?

Thanks!

  •  你好,

    1.其实在单片机里面存放和处理的都是二进制数,我们所说的 十六进制 十进制 只是相对于用户显示出来的数字。所以答案是 会的,不用添加额外函数。

    2. 参考电压是ADC转换的量程,所以,被测电压不能超过参考电压。

      若设置参考值Vref+=2.5V,是不是说明此时ADC转换后最大电压是2.5而不是3?    完全正确。