你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM8 ADC通道AIN12引脚

[复制链接]
黑白之间79 提问时间:2015-12-20 13:05 /
各位,本人最近在写STM8 ADC程序时发现一个问题,将程序粘贴如下。
    ADC1_DeInit();
    ADC1_Init(ADC1_CONVERSIONMODE_SINGLE, ADC1_CHANNEL_0, ADC1_PRESSEL_FCPU_D18);
    ADC1_Init(ADC1_CONVERSIONMODE_SINGLE, ADC1_CHANNEL_1, ADC1_PRESSEL_FCPU_D18);
    ADC1_Init(ADC1_CONVERSIONMODE_SINGLE, ADC1_CHANNEL_2, ADC1_PRESSEL_FCPU_D18);
    ADC1_Init(ADC1_CONVERSIONMODE_SINGLE, ADC1_CHANNEL_4, ADC1_PRESSEL_FCPU_D18);
    ADC1_Init(ADC1_CONVERSIONMODE_SINGLE, ADC1_CHANNEL_5, ADC1_PRESSEL_FCPU_D18);
    ADC1_Init(ADC1_CONVERSIONMODE_SINGLE, ADC1_CHANNEL_12, ADC1_PRESSEL_FCPU_D18);
    ADC1_ScanModeCmd(ENABLE);
    /*enable adc interrupt*/
    ADC1_ITConfig(ADC1_IT_EOCIE, DISABLE);
/*enable adc buffer register,the result is saved in ADC_DBxRH and ADC_DBxRL*/
    ADC1_DataBufferCmd(ENABLE);
    /*enable ADC1*/
    ADC1_Cmd(ENABLE);  
    while(i--);
    ADC1_StartConversion();

上述是初始化,因空间太小,我简写了。说下需求,我需要采样通道0、1、2、4、5、12通道,采用单次带缓存扫描模式。现在问题来了,STM8的12通道是不能使用扫描模式的。我现在开启中断应该怎样读取数据。
实验结果如下:开启中断,在定时器中开启ADC采样,频率为20KHz,
        ADC_RESULT_T.uwPVaPVNegSample= ADC1_GetBufferValue(0x00);
        ADC_RESULT_T.uwPVbPVNegSample= ADC1_GetBufferValue(0x01);
        ADC_RESULT_T.uwBusSample = ADC1_GetBufferValue(0x02);
        ADC_RESULT_T.uwPVbGndSample = ADC1_GetBufferValue(0x04);  
        ADC_RESULT_T.uwPVaGndSample = ADC1_GetBufferValue(0x05);
        ADC_RESULT_T.uwNGndSample = ADC1_GetConversionValue();
这样读取的数据,结果发现0通道和12通道读取结果一致,其他通道数据不更新。
如果使用查询方式,上面读取结果正常。
数据手册中解释道,如果使用扫描模式,那么最后一组数据读完,就进入中断。那么12通道也是采样完就进入中断,到底因该是怎么样呢?
我现在想得到的效果是使用中断方式读取结果,各位有什么好建议吗,不胜感激。
收藏 评论3 发布时间:2015-12-20 13:05

举报

3个回答
黑白之间79 回答时间:2015-12-20 14:41:03
各位,本人最近在做STM8的ADC采样时使用单次扫描模式,发现一个问题:当第一次扫描完开始启动第二次扫描时,发现只有通道0的数据更新,其他通道数据不更新。有高手知道怎么回事,求指教。
其实这个问题是上面问题的简化,各位有碰到吗,请不吝赐教。
追寻V 回答时间:2015-12-23 16:04:44
单次扫描 是不是 设定了其中一个 别的没有设置呢。
xmshao 回答时间:2015-12-23 16:51:37


你试试对channel0,1,2,3,4,5   六个通道做singel scan。
【CHANNEL 3你不用理它,哪个BUFFER对应哪个通道的值就好】
  channel 5 转换完成后会产生 EOC中断。

对channel 12单独查询操作,因为CHANNEL 12不支持SCAN.

所属标签

相似问题

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版