中级会员
- 积分
- 315
- 威望
- 167
- 贡献
- 90
- 兑换币
- 93
- 注册时间
- 2016-9-5
- 在线时间
- 29 小时
- 毕业学校
- 武汉理工大学
|
/*************************************************************************
* 野火嵌入式开发工作室\蓝宙电子工作室
*
* 函数名称: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;
}
/****************
这是蓝宙的一个历程,写着ADC,B通道不能软件触发,然后*************************************************************************
* 蓝宙电子工作室
*
* 函数名称:CCD_init
* 功能说明:CCD初始化
* 参数说明:
* 函数返回:无
* 修改时间:2012-10-20
* 备 注:
*************************************************************************/
void CCD_init1(void)
{
gpio_init (PORTE , 4, GPO,HIGH);
gpio_init (PORTE , 5, GPO,HIGH);
adc_init(ADC1, AD6b) ;
}
这是CCD的初始化程序,ADC用的B通道,这种时候不能软件触发的话还有用么,有人能告诉我硬件触发是什么意思么,百度找不到心塞塞
|
|