01、timer定时器之脉冲发送功能
我们今天详细讲解一下timer的adc触发功能。
swm190的timer2/3支持sar adc触发功能,此功能配置为定时器或脉冲发送均有效,可通过配置相应寄存器实现。
将sar adc ctrl寄存器中trig设置为timer2触发或timer3触发。timer可作为定时器或计数器(支持级联)使用。当对应timer计数值减至0时,将触发adc ctrl寄存器中选中的通道(chx)进行采样。可以通过adc采样完成中断进行结果获取。
timer触发支持单次模式和连续模式,且支持多次采样求平均值。
02、swm190 timer触发adc功能库函数配置
下面我们以adc触发为例,使用加强型定时器,使用timr3的定时器模式触发adc0的ch3。在此例程中,我们将用a13作为adc0的采样通道,一次启动连续采样、转换2次,并计算两次结果的平均值作为转换结果。
我们之前有讲到port的配置方法,在这里就不在做赘述,将a13引脚通过port_init设置为adc的输入功能引脚(porta_pin13_adc0_in3),并将timer0模块功能在timr_init初始化为定时器模式(timr_mode_timer)。
下面是一个简单的adc配置函数。
adc_initstruct.clk_src=adc_clksrc_hrc_div8;adc_initstruct.channels = adc_ch3;adc_initstruct.samplavg= adc_avg_sample2;adc_initstruct.trig_src = adc_trigger_timr3;adc_initstruct.continue = 0; //非连续模式,即单次模式 adc_initstruct.eoc_ien = 0; adc_initstruct.ovf_ien = 0;adc_init(adc0, adc_initstruct); //配置adc
我们通过结构体的方式配置adc,使用adc0的ch3通道进行采样,触发源为tmier3,单次触发模式,一次启动连续采样、转换2次,并计算两次结果的平均值作为转换结果。
具体配置函数如下图所示:
03、实验现象
下载好程序后,串口会打印a13端口的电压值对应的adc值。
以上是关于timer的adc触发功能介绍。
来源:华芯微特32位mcu
智能无线门铃和现代无线可视门铃的优缺点分析
小米6下月发布,或有重任加身
Objective-C日渐衰落
任正非:仍希望设备终端里可以使用安卓系统
绝缘油耐压测试仪有哪些特性及其特点?
华芯微特MCU之TIMER触发ADC
nubiaZ9Max硬件外观解读
如何利用Argent钱包来保护你的密码学货币
可穿戴医疗器械设计的三个重点事项
M-Systems大幅扩充uDiskOnChip开机与储存功
工业互联网和智慧物联网企业恒为科技发布2021年报
改善电池的安全保护设计提升电池的安全性能
浅析ADC噪声基础知识
钙钛矿电池已成下一代太阳能电池的希望,仍存在巨大潜力和挑战
国内教育机器人产品异军突起,以Makeblock为代表
如何利用手机充电器控制发光LED
华为p10还有几天就要你来了!你最期待有啥功能
手机锂电池一晚上充电会有什么影响吗
STEP7博图中的SCL设置和属性解析
宇视推出“AI+零售”解决方案应用案例