中级会员
 
- 积分
- 341
- 金钱
- 341
- 注册时间
- 2014-10-30
- 在线时间
- 0 小时
|
5金钱
(1).疑问1
声明如下:
__IO uint16_t ADC_ConvertedValue[98],ADC_ConvertedValue_Average[7];
ADC_ConvertedValue_Average[ADC_CH]=(ADC_ConvertedValue[14+ADC_CH]+ADC_ConvertedValue[21+ADC_CH]+ADC_ConvertedValue[28+ADC_CH]+ADC_ConvertedValue[35+ADC_CH]+ADC_ConvertedValue[42+ADC_CH]+ ADC_ConvertedValue[49+ADC_CH]+ADC_ConvertedValue[56+ADC_CH]+ADC_ConvertedValue[63+ADC_CH]+ADC_ConvertedValue[70+ADC_CH]+ADC_ConvertedValue[77+ADC_CH])/10
中的ADC_ConvertedValue[14+ADC_CH]为什么要这样写:14+ADC_CH,而不是ADC_ConvertedValue[14]?
(2).疑问2
定义如下:
static char *p_ADC_STR1;
p_ADC_STR1=&ADC_STR1[0][0];
itoa是将整形数据转成数据的函数,
itoa(ADC_ConvertedValue_Average[ADC_CH], p_ADC_STR1+ADC_CH*5,10);
这个为什么要这样写:p_ADC_STR1+ADC_CH*5?而不是p_ADC_STR1?
|
|
最佳答案
查看完整内容[请看2#楼]
ADC_CH 有可能是宏定义或者是函数的入口参数(形参)
宏定义的话方便统一修改数值,不用每个一一去修改。
入口参数的话是根据你的输入而改变
如果定死某个参数,每次用到这个就要修改。
|