我这有一个CC2530的测试程序,是关于AD转换的。但是我不知道里面的那个 温度采集后为什么要累加64,每次除以2 ?- void main(void)
- {
- char i;
- char TempValue[10];
-
- InitUART0(); //初始化串口
- initTempSensor(); //初始化ADC
- while(1)
- {
- AvgTemp = 0;
- for(i = 0 ; i < 64 ; i++)
- {
- AvgTemp += getTemperature();
- AvgTemp >>= 1; //每次累加后除2.
- }
-
- sprintf(TempValue, (char *)"%dC ", (INT8)AvgTemp);
- UartTX_Send_String(TempValue,4);
- Delay(50000);
- }
- }
复制代码 就是其中的FOR里面的语句,加入第一次采集到了20,那么第一次循环后就只有10了,第二次循环采集到的还是20那么,第二次循环后只有15········不知道为没什么要这样只呢?有点那一理解啊···求指点啊············· |