求助 CC2530ADC的几个小问题
时间:10-02
整理:3721RD
点击:
uint16 reading = 0;
ADCCON3 = 0xb1;
/* Wait for the conversion to be done */
while (!(ADCCON1 & 0x80));//1000 0000
/* Disable channel after done conversion */
ADCCFG &= 0xbf;//(0x40 ^ 0xFF); //按位异或。如1010^1111=0101(二进制)0100 0000 1111 1111 1011 1111
reading = ADCL;
reading|=(int16) (ADCH << 8);
reading >>= 8;
return (reading);
我这个程序是用来测PM2.5的,现在成功的通过传感器上的AO口读取到了数据,只是我不知道这里面读取到的reading到底是什么?是实际电压值吗?
还有 程序里面有一句reading*3.3/4096 这是代表什么意义?为什么要进行这一步处理? 我是初学者,麻烦大家帮我解惑。谢谢
reading是读到的模拟电压值的数字形式的表示,你那个reading*3.3/4096 应该就是把读到的值转变成实际的电压值。
就是这个reading*3.3/4096 公式是什么?3.3是基准电压,为什么要除4096?
ADCCON3 = 0xb1你看一下这个寄存器就知道了,你用的是12位的分辨率所以是4096
谢谢啦
谢谢