2931|2

664

帖子

104

TA的资源

纯净的硅(中级)

楼主
 

STEVAL-IDB007V1 ADC测试1 [复制链接]

  本帖最后由 gs001588 于 2018-1-26 03:10 编辑

STEVAL-IDB007V1 ADC测试1

    本次评测和挑战赛主要是检测电池电量,那么必须用到了ADC转换。
    通过对比三个ADC样例程序DMA、PDM、Polling,觉得Polling就可以满足要求,单次转换。因此本贴仅介绍与分析Polling样例程序。
    测试工程路径“BlueNRG-1_2 DK 2.5.0\Project\BlueNRG1_Periph_Examples\ADC\Polling\MDK-ARM\BlueNRG-1\Polling.uvprojx”,使用Keil工程。
   

    打开Keil工程。我们只关心“User”下的两个文件“ADC_Polling_main.c”、“BlueNRG1_it.c”。“ADC_Polling_main.c”是主程序,“BlueNRG1_it.c”是中断服务程序,其它统统不用管。
   

    “BlueNRG1_it.c”下就一个滴答时钟中断服务,比较简单。用于主程序中的延时。
   

    打开主程序“ADC_Polling_main.c”。包含头文件、定时延时全局变量、定义ADC初始化结构体、(基于滴答时钟的)毫秒延时函数、ADC配置。
   

    系统初始化、平台识别、LED1初始化(程序中闪灯用)、串口配置(串口打印ADC信息)、滴答基准时钟定时1ms初始化、ADC配置及主循环。下面着重看看ADC部分。
   

    看看函数“ADC_Configuration()”。ST一贯的风格,要进行外设操作,先开相应时钟。接下来5个参数设置什么意思呢,结合注释与数据手册来看看。
   

    “ADC_OSR_200”——好吧,没得选,直流采集只能用这个。
   

    “ADC_Input_AdcPin12”——差分采集,消除共模干扰;也可能通过串联毫欧采样电阻,来测试回路电流。
   

    “ADC_ConversionMode_Single”——没错,单次采集就够了,不需要循环采。
   

    “ADC_ReferenceVoltage_0V6”——采样参考基准电压0.6V
    “ADC_Attenuation_9dB54”——由于采集范围0到3.6V,因此Attenuation需要设置9.54
   

    “ADC_Init()”初始结构体参数赋值到寄存器,“ADC_Calibration(ENABLE)”、“ADC_AutoOffsetUpdate(ENABLE)”AD校准和自动偏置更新暂时不去管它,只管用就是了。
  1. [/font][/align][align=left][font=宋体]  ADC_Init(&xADC_InitType);[/font]  [/align][font=宋体]  /* Enable auto offset correction */
  2.   ADC_Calibration(ENABLE);
  3.   ADC_AutoOffsetUpdate(ENABLE);[/font][font=宋体]
复制代码


    “ADC_Cmd(ENABLE)”函数开始一次新的ADC转换,只管用。判断转换完成标志,如果转换完成则读取ADC数据,数据输出打印到串口,闪灯,延时,开始下一次转换。
   

    喜欢ST的风格,样例程序比较简单,注释比较足。

    程序仿真全速跑。
   

    用串口检控ADC数据
   

    试试测试一下几个点的电压
   

    串口打印显示各点电压值。对比万用表实测的值为3.298V、1.370V、1.928V,BlueNRG-1的ADC转换精度已经很可以了,线性度也还不错,还要啥自行车。

   

    到此,ADC简单测试完成。

    那么再了解一下ADC的数值与电压转换是什么样的,这也是BlueNRG-1比较有意思的一点,似乎整复杂了。分为了5种情况。
   

    对照数据手册,
   
   

    挑战赛的法拉电容电压测量,ADC需要使用“ADC_ConvertBatterySensor”模式。



最新回复

BlueNRG-1的ADC库里把转换公式都写好了,用起来确实很方便  详情 回复 发表于 2018-1-26 10:16

赞赏

1

查看全部赞赏

点赞 关注
 
 

回复
举报

9792

帖子

24

TA的资源

版主

沙发
 
BlueNRG-1的ADC库里把转换公式都写好了,用起来确实很方便

点评

是的,很方便,ST大爱呀!  详情 回复 发表于 2018-1-26 11:08
个人签名虾扯蛋,蛋扯虾,虾扯蛋扯虾
 
 
 

回复

664

帖子

104

TA的资源

纯净的硅(中级)

板凳
 
littleshrimp 发表于 2018-1-26 10:16
BlueNRG-1的ADC库里把转换公式都写好了,用起来确实很方便

是的,很方便,ST大爱呀!
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表