立即注册 找回密码

微雪课堂

搜索
微雪课堂 外围模块 Accessory Shield 查看内容

Accessory Shield学习2:可调电位器

2015-5-6 16:54| 发布者: yanwl| 查看: 2459| 评论: 0

摘要: 上节我们学习了按键的识别,这是一种纯数字信号0,1的应用。本章讲解利用Arduino读取模拟信号,通过引脚可以读取外部的电压值;具体的AD转换原理大家可以百度查找,我们教程的宗旨是,只发干货!!! UNO PLUS开发板 ...
上节我们学习了按键的识别,这是一种纯数字信号0,1的应用。本章讲解利用Arduino读取模拟信号,通过引脚可以读取外部的电压值;具体的AD转换原理大家可以百度查找,我们教程的宗旨是,只发干货!!!

原理大放送:
UNO PLUS开发板主芯片采用ATMEGA38P-AU,该芯片供电电压范围广,适应3.3V及5V供电,内置10位AD转换模块,所以可提供2^10 = 1024级模数转换。当系统的供电为3.3V时,对应的分辨率可以达到3300mv / 1024 = 3.22mv,即每个AD值代表3.22mv;若5V供电,分辨率为5000mv / 1024 = 4.88mv,每个AD采样值代表4.88mv。
Accessory Shield板载的10k可调电位器采用3.3V供电,即最大可调节输出的电压值为3.3V。若开发板供电电压配置为3.3V,输出AD值的范围是0-1023;若开发板供电电压配置为5V,此时ADC的分辨率为4.88mv,电位器最大输出电压3.3V对应的AD值为3300 / 4.88 = 676,即输出AD值的范围是0-676。

代码示例:
const int analog_pin = 0;
int adcvalue;

void setup(void)
{
  Serial.begin(9600);
}


void loop(void)
{
  adcvalue = analogRead(analog_pin);
  
  Serial.print("The current ADC value is: ");
  Serial.println(adcvalue);
  
  delay(500);
}
程序运行后,打开串口监视器,可以看到当前采样的AD值,旋转电位器,输出值会发生改变。现象见下图:


附件:


181

顶一下

刚表态过的朋友 (181 人)

相关阅读

最新评论

微雪官网|产品资料|手机版|小黑屋|微雪课堂. ( 粤ICP备05067009号 )

GMT+8, 2024-4-26 03:38 , Processed in 0.025846 second(s), 21 queries .

返回顶部