[STM32F0] F030 ADC使用定时器触发时,ADSTART为什么会被清0

[复制链接]
259|5
手机看帖
扫描二维码
随时随地手机跟帖
GZZXB|  楼主 | 2022-6-18 10:39 | 显示全部楼层 |阅读模式
    使用TIMER来触发ADC采样
    初始化TIMER...
    初始化ADC...
    ADC_StartOfConversion(ADC1);       //设置ADSTART

    在后续中没有停止ADC的动作,调试时发现ADATART被清0了.  如下图所示ADSTART应该是不会被清0的。

adc.png


使用特权

评论回复
sparrow054| | 2022-6-21 21:02 | 显示全部楼层
自从有了库函数,就在没有关心过寄存器

使用特权

评论回复
GZZXB|  楼主 | 2022-6-22 23:20 | 显示全部楼层
sparrow054 发表于 2022-6-21 21:02
自从有了库函数,就在没有关心过寄存器

  涉及到一些细节时,需要关注下寄存器。

使用特权

评论回复
香水城| | 2022-6-23 11:45 | 显示全部楼层
本帖最后由 香水城 于 2022-6-23 11:59 编辑

ADSTART=0表示ADC进入空闲状态,AD的转换启动可以两种方式:

3892462b3e1a1e8660.png


使用特权

评论回复
GZZXB|  楼主 | 2022-6-24 23:16 | 显示全部楼层
香水城 发表于 2022-6-23 11:45
ADSTART=0表示ADC进入空闲状态,AD的转换启动可以两种方式:

   我使用的是单次转换,并用TIMER触发。  看文档系列转换完毕后,ADSTART是不会被清0的。
但是我仿真时看到ADSTART被清0了。
    adc.png
我的理解是ADSTART被软件写1后,就进入等待TIMER触发状态了。  来一个触发信号ADC就转换一次,序列转换完了也还是1。
只有在软件调用并执行ADSTP后,ADSTART才会变回0。

使用特权

评论回复
GZZXB|  楼主 | 2022-6-24 23:45 | 显示全部楼层
香水城 发表于 2022-6-23 11:45
ADSTART=0表示ADC进入空闲状态,AD的转换启动可以两种方式:

adc.png

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则