化妆品企业网站建设的缺点网站源码下载后怎么用
蓝桥杯【物联网】零基础到国奖之路:十七. 扩展模块之单路ADC和NE555
- 第一节 硬件解读
 - 第二节 CubeMx配置
 - 第三节 代码
 - 1,脉冲部分代码
 - 2,ADC部分代码
 
第一节 硬件解读

 PR1为ADC,本次重点为PR3,和PR3在一起的模块为NE555。
 NE555是一款产生高精度定时脉冲的双极性集成电路。可以通过外接少量的阻容器件,组成定时触发电路等电路。
第二节 CubeMx配置
引脚对应:
 PB1-ADC(PR1)
 PB0-PLUS(PR3)
 PB6-LED2
 PB7-LED1
 
 配置PB0为TIM3_CH3,PB1为ADC_IN9。
 配置TIM3时钟源为Internal clock,channel3为直接输入捕获模式。分频为32-1,开启auto-reload preload。之后在NVIC打开TIM3的中断设置优先级为1。
 
第三节 代码
1,脉冲部分代码
脉冲模块,介绍下定时器捕获模式的方法;首先在“1”设置为上升沿捕获,目的为了检测即将到来的上升沿;然后,在“2”处检测到了上升沿,捕获此状态并记录此时计时器的值;接下来在“3”设置为下降沿捕获,目的是为了检测即将到来的下降沿;之后在“4”处检测到了波形的下降沿,捕获此状态并记录此时计时器的值;计算时间,两次计数器的值之差就是这个高电平的脉宽,进而可以得出高电平时间。
 
 一,定义全局变量
 
 外部声明变量
 
 找到HAL_TIM_IC_CaptureCallbark()中断编写代码。
 
 在main函数编写捕获周期频率的代码。
 
 不用忘记开启TIM3CH3。
 
2,ADC部分代码
 
获取后直接打印。
 
