历史上的今天

今天是:2024年10月09日(星期三)

正在发生

2019年10月09日 | STM32_ADC单通道单次采集

发布者:SereneSpirit 来源: eefocus关键字:STM32  ADC  单通道  单次采集 手机看文章 扫描二维码
随时随地手机看文章

一、RCC时钟配置

该函数位于在bsp.c文件下面;


使能RCC时钟:RCC_APB2Periph_ADC1


二、引脚配置

 

该函数位于在adc.c文件下面;


对AD通道2所使用的引脚进行配置。


问题:


细心的人可能会发现数据手册中PA2引脚的复用功能是“ADC123_IN2”,我们明明使用的ADC1,为什么不是ADC1_IN2或者ADC2_IN2?


大家先想一下为什么是ADC123_IN2,最后我会揭晓答案。


三、ADC配置

该函数位于在adc.c文件下面;


对AD进行配置。


配置的每一条语句都有注释,请看源代码,重点讲一下“ADC_Channel_2”,这里必须和上面引脚配置对应起来,也就是通道的引脚配置一致才行。


四、电压检测

该函数位于在adc.c文件下面;


调用这个接口就可以采集电压值。


函数使用单通道单次,软件触发采样电压值,这里采样8次(更加自己情况可以选择多次),算平均,最后得出电压值(1000倍值)。


五、主函数应用

该函数位于在main.c文件下面;


主要就是采集电压,通过串口打印出来(1000倍值)。


 


六、揭晓ADC123_IN2


上面的问题有自己想明白了的吗?


其实很简单的,ADC123_IN2顾名思义,它就是包含了ADC1、ADC2、ADC3的IN2的意思。也就是说,你们使用ADC2的通道2也是这个“ADC123_IN2”通道。


方便大家学习,我把两个工程都上传至360云盘,不行的朋友可以亲自下载代码试试。


对比的软件工程下载地址:


https://yunpan.cn/cPGRAYZrdvdPf 访问密码 2ce1

关键字:STM32  ADC  单通道  单次采集 引用地址:STM32_ADC单通道单次采集

上一篇:STM32的ADC基本配置
下一篇:怎样用STM32 ADC测量电压(中断方式)

推荐阅读

通过一定的方法来编写C程序,可以帮助C编译器生成执行速度更快的ARM代码。下面就是一些与性能相关的关键点:1.对局部变量、函数参数和返回值要使用signed和unsigned int类型。这样可以避免类型转换,而且可高效地使用ARM的32位数据操作指令。2.最高效的循环体形式是减计数到零(counts down to zero)的do-while循环。3.展开重要的循环来减少循环的开...
UltraSoC发布了新一代基于硬件的网络安全产品,它们可用于检测、阻止和记录各种网络攻击,其使用范围覆盖了从车辆和工厂机器人到消费类设备等广泛的应用。 这些新型产品将先进的实时网络安全防护功能嵌入到系统级芯片(SoC)中,从而可支撑和控制每一款现代产品。该系列中的第一款产品UltraSoC Bus Sentinel使SoC设计人员能够控制对其器件敏感区域的访问...
2020年4月,比亚迪发布公告称,旗下子公司“深圳比亚迪微电子”(已正式更名为“比亚迪半导体”)通过内部重组,并计划上市。 公告显示,比亚迪半导体受让宁波比亚迪半导体有限公司100%股权和广东比亚迪节能科技有限公司100%股权,并收购惠州比亚迪实业有限公司智能光电、LED光源和LED应用相关业务。 随后,比亚迪半导体在5月和6月完成了A轮和A+轮融资,仅...
纹波是电源的核心指标,但如何准确测量纹波却是一个被广泛忽略的问题。也许您认为不就是示波器交流耦合,然后把探头点在电源上吗?事实远非如此,这里普科科技PRBTEK将为您呈现纹波测试的正确方式。一、探头的选择在十几年前,很多公司的电源测试标准中都有明确的规定,要求使用1:1 探头进行测量。因为这种探头不会损失示波器的测量档位,比如示波器原来...

史海拾趣

问答坊 | AI 解惑

求VF变换器的设计思路

一个VF变换器可以分为几部分啊,还有设计思路,有电路图更好,没有也可以。求!…

查看全部问答∨

转载 读写U盘资料2

[ 本帖最后由 tsb00 于 2009-3-22 13:41 编辑 ]…

查看全部问答∨

LPC11开发宝典-JLIN2

奉献一款LINK资料,共享!…

查看全部问答∨

sendto 内存泄露

我在windows ce 5.0 下编写了一个应用程序 要在循环中不停的用sendto 函数发送UDP数据包 但是每使用一次内存就会增加4K 这样两三个小时后就会内存泄露 把sendto注释掉之后内存就不增加了 请问各位有没有遇到过这种情况 怎么解决的??…

查看全部问答∨

程序应放在SD卡里运行,还是在FLASH里运行?

应用程序放在SD卡里运行,与在FLASH里运行,哪个更节省时间?…

查看全部问答∨

Windows CE Stream Driver Wizard工具

学习驱动开发,好像是需要一个叫做Windows CE Stream Driver Wizard这个工具,但是在网上怎么都没有找到 有的链接不能下载 请教有过驱动开发经验的高手有没有这个工具可以给我发一个 邮箱regcwt@126.com QQ:987530739 同时希望CE的驱动开发的朋 ...…

查看全部问答∨

在wince下如何取得自1970年以来的秒数?

在vc里面可以用time(&t),在wince下该函数不能用,而用GetSystemTime(&st)取得的不是秒数,该怎么办呢?请不吝赐教,谢谢!…

查看全部问答∨

怎么学习嵌入式开发

我是个超级菜鸟,只会java,我很想学底层的东西,刚开始也不知道,就去学了java,感觉java好像不是自己真正想学习的,太不底层了,像控制机器好像很不好实现,而我最喜欢的就是用自己写的程序开直接控制机器,所以很郁闷!希望哪位高人能指点一下学 ...…

查看全部问答∨

void serial(void) interrupt 4串口中断跳不进去

串口中断跳不进去,同一段代码,放在两个不同的程序中,用同样的硬件测试,一个能跳进去一个跳不进去,你们说会是什么原因?…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved