天天看点

[nRF51822] 9、基础实验代码解析大全 · 实验12 - ADC

一、本实验ADC 配置

分辨率:10 位。

输入通道:5,即使用输入通道AIN5 检测电位器的电压。

ADC 基准电压:1.2V。

二、NRF51822 ADC 管脚分布

  NRF51822 的ADC 共有8 个输入通道,对应的管脚分布入下图:

[nRF51822] 9、基础实验代码解析大全 · 实验12 - ADC

三、NRF51822 ADC 原理

  NRF51822 的ADC 比较简单,如下图所示。

[nRF51822] 9、基础实验代码解析大全 · 实验12 - ADC

3.1、ADC 通道及预分压系数

  NRF51822 的ADC 共有8 个输入通道,在使用ADC 时,要设定ADC 的输入通道。本实验中,因为连接电位器的管脚是P0.04,所以,选择输入通道AIN5。

3.2、基准电压

  基准电压有4 种选择,分别是:

1) 内部1.2V。

2) CONFIG. EXTREFSEL 中设定的外部基准。

3) 1/2 VDD,仅适用于VDD 工作在1.7 V - 2.6 V 电压范围内。

4) 1/3 VDD,仅适用于VDD 工作在2.5 V - 3.6 V 电压范围内。

3.3、分辨率

  NRF51822 的ADC 可以作8、9、10 位转换,本实验中,选择最高分辨率:10 位。需要注意的是:NRF51822 的ADC 自身仅支持单次转换,每次转换时都需要触发STARTtask。当然,我们可以借助NRF51822 强大的PPI 功能,通过定时器时间来触发ADC 的STARTtask,从而进行连续转换。

四、代码解析:

main函数:

<a></a>

ADC初始化:

ADC事件中断:

<a>本文转自beautifulzzzz博客园博客,原文链接:http://www.cnblogs.com/zjutlitao/p/5753079.html,如需转载请自行联系原作者</a>

继续阅读