众所周知,模数转换,即analog-to-digital converter,常称adc,是指将连续变量的模拟信号转换为离散的数字信号的器件。主要用于对模拟信号进行数字采集,以进行数据处理。通常情况下,在转换完成时读取转换结果。而adc中的窗口比较功能,会检测adc结果是否低于或高于特定阈值,当转换结果在某一个范围时可以触发中断,几乎无需软件干预。该配置非常实用,它可以监视信号是否按照要求保持在特定范围内,或者在电池电量不足/过充时发出信号。
本文以ra4m2为例介绍如何设置adc窗口比较功能。
ra mcu中一般都会包括12位逐次逼近型a/d转换器(adc12)单元,最多可选择13路模拟量输入通道、温度传感器输出、内部参考电压进行转换。
同时,adc12还提供比较功能(窗口a和窗口b)。比较功能分别指定窗口a和窗口b的参考值上限和的参考值下限,当所选通道的a/d转换值满足比较条件时输出中断。窗口a和窗口b的主要区别在于它们的中断输出信号不同以及对窗口b只能选择一个通道的限制。
这里以窗口a为例进行介绍。窗口a有以下4种比较模式。
• 结果低于阈值
• 结果高于阈值
• 结果在窗口内
• 结果在窗口外
窗口a比较功能相关的寄存器有adcmpcr、adcmplr0/1和adcmpdr0/1寄存器,详情请参考ra硬件手册。
adc数据与可设置的高低阈值进行比较,并可为ad数据在设定的门限值内、外、高或低自动生成比较中断。需要设置三个选项位置,接下来我们将逐个介绍各种情况下属性设置和用户代码。
1a/d转换结果高于门限值时产生窗口比较a中断(adc120_cmpai)
若想实现上面的比较功能,请按照下图中所示,在fsp中设置adc属性。
(1)input → window compare → window a
enable:选择enabled
lower reference:请在这里设定阈值
(2) input → window compare
window mode:选择disabled
当ad转换结果 > adcmpdr0(lower reference 设定值时)时,产生compare中断。
2a/d转换结果低于门限值时产生窗口比较a中断(adc120_cmpai)
若想实现上图的比较功能,请按照下图中所示,在fsp中设置adc属性。
(1)input → window compare → window a
enable:选择enabled
lower reference:请在这里设定阈值
(2) input → window compare
window mode:选择disabled
(3)代码中将cmplcha0位置为“0”
r_adc0->adcmplr_b->cmplcha0 = 0;
当ad转换结果 < adcmpdr0(lower reference 设定值时),产生compare中断。
3a/d转换结果在门限值内
若想实现上图的比较功能,请按照下图中所示,在fsp中设置adc属性。
(1)input → window compare → window a
enable:选择enabled
lower reference、upper reference:请在这里设定阈值
(2) input → window compare
window mode:选择enabled
当adcmpdr0(lower reference设定值时)< ad转换结果< adcmpdr1(upper reference设定值时)时,产生compare中断。
4
a/d转换结果在门限值外
若想实现上图的比较功能,请按照下图中所示,在fsp中设置adc属性。
(1)input → window compare → window a
enable:选择enabled
lower reference、upper reference:请在这里设定阈值
(2) input → window compare
window mode:选择enabled
(3)代码中将cmplcha0位置为“0”
r_adc0->adcmplr_b->cmplcha0 = 0;
当ad转换结果<adcmpdr0(lower reference 设定值时)或者>adcmpdr1(upper reference设定值时)时,产生compare中断。
另外,使用窗口比较功能时请注意以下限制:
比较功能不能与自诊断功能或双触发模式一起使用。(比较功能不适用于adrd、addbldr、addbldra和addbldrb。)
使用匹配/不匹配事件输出时请使用单次扫描模式。
当温度传感器输出时,窗口a选择内部参考电压,窗口b操作被禁用。
当温度传感器输出时,窗口b选择内部参考电压,窗口a操作被禁用。
禁止为窗口a和窗口b设置相同的通道。
设置参考电压值时,请将高电位参考电压值设置为大于或等于低电位参考电压值。
凭借虚幻引擎和AR技术,任何人都可以将名为Dex的可爱拉布拉多带进客厅
室内小间距LED显示屏的定义及优点
如何将MCU应用到FPGA中:具体操作(3)
下代移动芯片:Intel后来欲居上 三星争利八核
基于视频的车位引导及反向寻车系统
RA4M2 MCU如何设置ADC窗口比较功能
Nexperia|推出适用于24V电源系统的车载网络ESD保护产品组合
非公版最便宜GTX1080 Ti哪家强?七彩虹GTX1080Ti深度评测
智能智造美好生活,萤石智能家居创新向往的生活
iPhone XS/XS Max的信号问题
台积电取代三星、英特尔?首次站上全球半导体龙头
如何将两个12V电源组合成24V电源?
WM5100引领新型的音频中枢
应广单片机开发实例MCU PMS150C驱动300个WS2812B
华为P10被爆没有疏油层,传说中的脏屏事件用户大失所望!
苹果13最新官方消息
雷蛇智能手机成为了目前市面上最受期待的安卓智能手机之一
AMDRX5300XT曝光 系列首次采用GDDR5显存
新能源汽车补贴退坡 高比例的中低端产能无法满足市场需求
5G时代需要构建面向未来的网络安全体系