STM32学习之ADC转换

目录

一、ADC

二、多通道模式

1、Scan Conversion Mode

2、Continuous Conversion Mode

3、DisContinuous Conversion Mode

三、ADC采样

1、配置

2、代码

3、执行


一、ADC

        ADC(Analog-to-Digital Converter,模数转换器)是一种将模拟信号转换为数字信号的设备。它在现代电子系统中非常重要,因为大多数传感器和输入设备(如温度传感器、麦克风等)输出的是模拟信号,而现代微控制器、计算机和数字处理设备只能处理数字信号。

二、多通道模式

1、Scan Conversion Mode

        在STM32微控制器的ADC(模数转换器)中Scan Conversion Mode(扫描转换模式)允许你在一次触发或启动下,对多个通道进行顺序转换。这个模式特别适用于需要采集多个模拟输入信号的应用场景。

        该模式允许ADC在一次触发下,顺序地对一组预定义的通道进行转换。转换结果依次存储在数据寄存器中,你可以在每次转换完成后读取数据。可以与Continuous Conversion Mode或DisContinuous Conversion Mode结合使用。

2、Continuous Conversion Mode

        在Continuous Conversion Mode(连续转换模式)模式下,ADC会连续不断地执行转换,直到你停止它。每次转换完成后,ADC会自动开始下一次转换,而无需外部触发或干预。转换结果存储在数据寄存器中,并且会不断更新。

        适用于需要连续监测模拟信号的情况,例如温度传感器、电压监测等。对于快速变化的信号,需要实时连续采样的应用。

3、DisContinuous Conversion Mode

        在DisContinuous Conversion Mode(离散转换模式)模式下,ADC在执行完一个序列的转换后停止,需要外部触发或者软件启动来开始下一次转换。该模式允许你在一个序列中的某些通道转换完成后暂停,从而可以在转换期间处理数据或执行其他任务。

        适用于需要间隔一段时间进行转换的应用。需要在转换序列中插入其他处理任务,或者在多任务环境中节省处理时间。

三、ADC采样

        我这里是用的双路通道采样,一路是环境光传感器,一路是声音输入。

1、配置

 

 

 

2、代码

adc.c 

 adc.h

main.c

 3、执行

光强变化(通过手电筒增大光强或者遮挡传感器减少光强)

声音变化(通过播放音乐,调整音量)

  • 25
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

努力学代码的小信

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值