金牌会员
- 积分
- 2861
- 威望
- 1341
- 贡献
- 836
- 兑换币
- 867
- 注册时间
- 2013-7-17
- 在线时间
- 342 小时
|
/*************************************************************************
* 野火嵌入式开发工作室
*
* 函数名称:ad_once
* 功能说明:采集一次一路模拟量的AD值
* 参数说明:ADCn 模块号( ADC0、 ADC1)
* ADC_Channel 通道号
* ADC_nbit 精度( ADC_8bit,ADC_12bit, ADC_10bit, ADC_16bit )
* 函数返回:无符号结果值
* 修改时间:2012-2-10
* 备 注:参考苏州大学的例程,B通道不能软件触发!!!!
*************************************************************************/
u16 ad_once(ADCn adcn, ADC_Ch ch, ADC_nbit bit) //采集某路模拟量的AD值
{
u16 result = 0;
ASSERT( ((adcn == ADC0) && (ch >= AD8 && ch <= AD18)) || ((adcn == ADC1) && (ch >= AD4a && ch <= AD17)) ) ; //使用断言检测ADCn_CHn是否正常
adc_start(adcn, ch, bit); //启动ADC转换
while (( ADC_SC1_REG(ADCx[adcn], 0 ) & ADC_SC1_COCO_MASK ) != ADC_SC1_COCO_MASK);
result = ADC_R_REG(ADCx[adcn], 0);
ADC_SC1_REG(ADCx[adcn], 0) &= ~ADC_SC1_COCO_MASK;
return result;
}
这个里面while (( ADC_SC1_REG(ADCx[adcn], 0 )那个0是什么啊?????
|
|