HK32MCU应用笔记(十)| HK32F103xC/D/E的ADC常规和注入通道同时触发时的处理机制

电子说

1.2w人已加入

描述

HK32F103x/C/D/E是航顺芯片推出的中大容量系列MCU。作为32位MCU常用ADC模块,在各类产品中有诸多应用,比如节省I/O引脚的按键检测应用,以及各类传感器,比如光传感器、湿度传感器、温度传感器等,把各种各样的模拟信号转换为电压、电流信号,ADC模块通过对该电压、电流信号的精确测量,实现MCU对外部世界的精确感知,从而实现对应用的精准控制。

>>>>HK32F103x/C/D/E的ADC的功能描述:

12位ADC是一种逐次逼近型模拟数字转换器。它有多达18个通道,可测量16个外部和2个内部信号源。各通道的A/D转换可以单次、连续扫描或间断模式执行。ADC的结果可以以左对齐或右对齐的方式存储在16位数据寄存器中。

模拟看门狗特性允许应用程序检测输入电压是否超出用户定义的高/低阀值。

ADC的输入时钟不得超过14MHz,它是由PCLK2经分频产生。

>>>>HK32F103x/C/D/E的ADC的主要特征:

● 12位分辨率

● 转换结束、注入转换结束和发生模拟看门狗事件时产生中断

● 单次和连续转换模式

● 从通道 0 到通道 n 的自动扫描模式

● 自校准

● 带内嵌数据一致性的数据对齐

● 采样间隔可以按通道分别编程

● 规则转换和注入转换均有外部触发选项

● 间断模式

● 双重模式(带2个或以上ADC的器件)

● ADC转换时间:

HK32F103xx 增强型产品:时钟为56MHz时为1μs(时钟为 72MHz 为 1.17μs)

● ADC供电要求:2V 到 5.5V

● ADC输入范围:VREF- ≤ VIN ≤ VREF+

注意:如果有 VREF-引脚(取决于封装),必须和 VSSA 相连接

>>>>HK32F103x/C/D/E的ADC的通道选择:

有16路复用通道。可以把转换分为两组:规则组和注入组。在任意多个通道上以任意顺序进行的一系列转换构成成组转换。例如,可以按如下顺序完成转换:通道3、通道8、通道2、通道2、通道0、通道2、通道2、通道15。

● 规则组

由多达16个转换组成。规则通道和它们的转换顺序在ADC_SQRx 寄存器中选择。规则组中转换的总数应写入ADC_SQR1寄存器的L[3:0]位中。

● 注入组

由多达4个转换组成。注入通道和它们的转换顺序在ADC_JSQR寄存器中选择。注入组里的转换总数目应写入ADC_JSQR寄存器的L[1:0]位中。

如果ADC_SQRx或ADC_JSQR寄存器在转换期间被更改,当前的转换被清除,一个新的启动脉冲将发送到ADC以转换新选择的组。

>>>>温度传感器/ VREFINT 内部通道

温度传感器和通道ADC1_IN16相连接,内部参照电压VREFINT和ADC1_IN17相连接。可以按注入或规则通道对这两个内部通道进行转换。

注意:温度传感器和VREFINT只能出现在主 ADC1 中。

>>>>HK32F103x/C/D/E在ADC使用过程中需要注意的地方:

问题描述:

当ADC的工作模式为规则通道和注入通道结合采样的时候,他们要同时触发采样,也就是触发采样的信号是同时刻发生的时候,HK32F103 的规则通道采样触发信号会被忽略,而S**T 芯片在这种情况下会先触发注入通道、然后触发规则通道工作。以下是Fail的情况示例:

航顺芯片

如上同时设置寄存器ADC2->CR2的位21和位22,即同时触发规则通道和注入通道的采样, 规则通道采样触发信号会被忽略。

根本原因:

在这种情况转换触发机制不同。

解决方案:

调整软件使触发信号不在同一时刻触发(同 1 个时钟周期)。以下为解决方案示例:

航顺芯片

即分时触发以进行采样,保证不在同一时刻触发即可。

来源: 航顺芯片

审核编辑:汤梓红

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分