高级会员
- 积分
- 830
- 金钱
- 830
- 注册时间
- 2017-8-3
- 在线时间
- 145 小时
|
10金钱
刚学习RT——Thread操作系统,跟着提供的driver文件夹下goio、usart代码模仿着写的adc的 自己加了一个函数,有一句运行不下去了
[mw_shl_code=c,true]static rt_err_t stm32_adc_convert(struct rt_adc_device *device, rt_uint32_t channel, rt_uint32_t *value)
{
struct stm32_adc* adc;
RT_ASSERT(device != RT_NULL);
adc = (struct stm32_adc *)device->parent.user_data;
/*ADC1,ADC通道,480个周期,提高采样时间可以提高精确度*/
ADC_RegularChannelConfig(adc->adc_device,channel,1,ADC_SampleTime_480Cycles);
ADC_SoftwareStartConv(adc->adc_device); //使能指定的ADC1的软件转换启动功能
// while(!ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC ));//等待转换结束
*value = (rt_uint32_t)ADC_GetConversionValue(adc->adc_device); //返回最近一次ADC1规则组的转换结果
return RT_EOK;
}[/mw_shl_code]
一直处于等待转换函数,注释掉就能运行
|
|