在adc的例程中共有六种AD测量,1、温度测量,2、单通道测量,3、DMA单通道测量,4、差分通道测量,5、触摸按键测量,6、中断方式单通道测量,接下来我们逐一描述。

粗调:粗调使得用0db测量VINTA电压时为2048,

在例程中都会去获取粗调制,使用通道1也就是PA5作为校准通道,

在ch573中可以使用通道6去校准,那么PA5仍可使用,

ch579仅可使用通道1校准,且不可使用通道1采集数据,

ch582中使用通道1作为校准通道,且可以使用通道1采集数据。

VINTA正常值为1.035-1.065V之间,若需要得到精确的电压值,则在计算式Vref需使用实际的VINTA电压值。

一、温度测量

首先调用adc温度测试初始化函数,其次获取adc内部偏差值,再调用adc采集函数就可以获取adc模拟值了,最后使用温度转化公式(adc.c文件的最下面一个函数),将模拟值转化成温度值。

目前转化后的温度相对值也就是变化值是正确的,但绝对值需要自己修正,如实际温度20度,转化温度5度,则在转化结果上加15。

二、单通道测量

首先,配置单通道的IO为浮空输入,然后调用单通道初始化函数(可传两个参数,采样频率和增益,测量不同的电压值需使用不同的增益),其次选择IO对应的通道,再获取adc内部偏差值,在调用adc采集函数获取电压模拟值,最后使用手册中公式转化。

四种增益选择相应的公式进行计算,根据实测电压范围选择增益。

三.DMA通道测量

四.差分通道测量

使能差分选择0#通道:实际是对AIN0(正端PA4)和AIN2(负端PA12)的电压进行差分转换;
使能差分选择1#通道:实际是对AIN1(正端PA5)和AIN3(负端PA13)的电压进行差分转换;
Vref=1.05V(更精确可测内部模拟电路的电源节点VINTA 的实际电压值)
ADC 转换后的结果,如果数据大于0x800(十进制2048)表示差分正端的电压高于差分负端的电压;如果数据小于0x800表示差分正端的电压低于差分负端的电压。以PGA增益选择0dB为例,理论可测电压范围为-1.05V~1.05V,0x400表示差分正端的电压低于差分负端的电压约0.5Vref,0x000表示差分正端的电压低于差分负端的电压约1.0Vref,PGA增益选择6dB时,理论可测电压范围为-0.5025V~0.5025V(0.5Vref),PGA增益选择-6dB时,理论可测电压范围为-2.1V~2.1V(2Vref),PGA增益选择-12dB时,理论可测电压范围为-4.2V~4.2V(4Vref),
测量范围可参考手册。
增益选择0dB时P =1;6dB时PGA =2;-6dB时P =1/2;-12dB时P=1/4。
计算公式:(|测量值-0x800|/0x800/P)*1.05
如PGA选择0dB时:
正端比负端大0.5V,测量值为3032,带入公式计算得0.504V
正端比负端小0.5V,测量值为1060,带入公式计算得0.506V
正端比负端大1.0V,测量值为4002,带入公式计算得1.002V
正端比负端小1.0V,测量值为96,带入公式计算得1.000V
如PGA选择-6dB时:
正端比负端大0.5V,测量值为2551,带入公式计算得0.516V
正端比负端小0.5V,测量值为1552,带入公式计算得0.506V
正端比负端大1.0V,测量值为3040,带入公式计算得1.017V
正端比负端小1.0V,测量值为1066,带入公式计算得1.006V
正端比负端大2.0V,测量值为4020,带入公式计算得2.022V
正端比负端小2.0V,测量值为87,带入公式计算得2.010V

五.触摸按键测量

六.中断方式单通道测量

CH573 CH582 CH579外设ADC例程讲解的更多相关文章

  1. CH58X/CH57X/V208的Broadcaster(广播者)例程讲解

    在对ble进行应用的时候,每个用户的需求可能不尽相同.这里着重介绍从机Broadcaster例程,只广播不连接. 使用该例程时可以在手机使用APP上对Broadcaster进行调试. 安卓端在应用市场 ...

  2. 说说M451例程讲解之LED

    /**************************************************************************//** * @file main.c * @ve ...

  3. 说说M451例程讲解之定时器

    关于定时器 相信很多人都不会陌生,无论是51还是32,任何微控制器,都会有定时器 定时器控制器包含 4 组 32-位定时器,TIMER0~TIMER3,提供用户便捷的计数定时功能.定时器可执行很多功能 ...

  4. M451例程讲解之GPIO.H

    到了CORTEX-M4,几乎每一快都有很大的知识量,单单GPIO库文件这一项就有很长的章节要描述,加油吧 GPIO.h.是最基础的一个库文件,下面结合数据手册来一一进行讲解: 先把库文件粘上,方便一一 ...

  5. 奋斗STM32V3版ADC例程

    https://wenku.baidu.com/view/a60b2042c850ad02de8041b7.html

  6. 说说M451例程讲解之串口

    /**************************************************************************//** * @file main.c * @ve ...

  7. M451例程讲解之按键

    /**************************************************************************//** * @file main.c * @ve ...

  8. CH58X/CH57X/V208 Observer(观察者)例程讨论讲解

    使用的是沁恒的CH582M的Observer例程与官方的demo板. 本例程的功能是主机扫描到从机的MAC地址并打印出来. 先对宏定义进行理解讨论. 最大响应扫描数为8,在串口调试助手那里可以看到打印 ...

  9. 【iCore2 模块相关资料】iM_LAN 100M 以太网模块UDP例程

    ============================== 技术论坛:http://www.eeschool.org 博客地址:http://xiaomagee.cnblogs.com 官方网店:h ...

  10. 【iCore2 双核心板视频教程一】iM_LAN 100M 以太网模块UDP例程(包含视频教程)

    ============================== 技术论坛:http://www.eeschool.org 博客地址:http://xiaomagee.cnblogs.com 官方网店:h ...

随机推荐

  1. babel npm包说明

    babel-plugin-import 用于按需加载,在使用antd 的时候引入,可以减少包体积

  2. Unity Shader实现《死亡搁浅》扫描效果!

    https://mp.weixin.qq.com/s/4YwjxScnU0zprjGekAyvsw

  3. uni-app使用阿里巴巴图标库icon详细步骤--避免踩坑

    踩了很多坑~~  最终终于找到可以使用阿里图标库的方法  简单方便 阿里巴巴图标库:https://www.iconfont.cn/home/index?spm=a313x.7781069.19989 ...

  4. 完全使用vscode开发python

    完全使用vscode开发python 作为Python开发,以前一直使用Pycharm社区版,因为卡顿,尝试使用vscode替换,尝试后并在工作中使用了半个月觉得真香,所以分享给大家. 更详细的视频介 ...

  5. Python冰墩墩(非原创,搬运工)

    import turtle turtle.title('2022北京冬奥会冰墩墩') turtle.speed(10000) # 速度 # 左手 turtle.penup() turtle.goto( ...

  6. 实时中文语音克隆——开源项目MockingBird体验

    [引子] 在今年大型网络攻防演练前不久,笔者接到一个公司的座机号码来电,上来就问防守准备得怎么样了,哪里还有不足等.等等,这声音不认识,笔者第一反应就是蓝军(Red Team)来进行社会工程攻击,于是 ...

  7. Tomcat put 漏洞批量工具

    工具下载 https://share.weiyun.com/96ffd3bf26b09ffece8d01317f3b3efb

  8. JS缓存三种方法_sessionStorage_localStorage_Cookie

    1.sessionStorage:临时的会话存储 只要当前的会话窗口未关闭,存储的信息就不会丢失,即便刷新了页面,或者在编辑器中更改了代码,存储的会话信息也不会丢失. 2.localStorage:永 ...

  9. Windows系统Redis集群搭建

    一.参考网址 https://mp.weixin.qq.com/s/ImdEJTdAmCFJsT55rici0Q 二.Redis版本 注意:搭建windows版的redis集群,redis的版本需要5 ...

  10. uniapp 移动端渲染富文本时图片超宽解决方法

    使用replace替换富文本中的图片属性 let reg = new RegExp('<img','gi'); this.info = this.info.replace(reg,'<im ...