查看: 1666|回复: 1

【赚周年币】技术帖——Fireduino学习2、Analog I/O

[复制链接]
  • TA的每日心情

    2023-7-25 22:49
  • 签到天数: 385 天

    连续签到: 1 天

    [LV.9]以坛为家II

    发表于 2016-12-27 23:25:22 | 显示全部楼层 |阅读模式
    分享到:
    今天学习下 Analog I/O,要学习的几个函数:
    analogReference()
    说明

      选择ADC的基准电压(等同于可以输入电压的最大值)。Fireduino只能够选择内部基准电压,并且只有一个基准电压可以选取,为2.56V。
    语法

       analogReference(INTERNAL2V56)
    参数

       INTERNAL2V56 :  内部基准源,2.56V(默认)
    返回值
       无
    注意事项

       由于ADC的基准只有一项,实际上可以不进行配置。如果有进行配置其他选项的话,那么该配置语句是无效的,基准并不会因此改变。
    analogRead()

    说明

       读取模拟引脚的输入电压测量值(不可大于基准电压)。   Fireduino一共有8个10bit的ADC(逐次逼近型)输入口,分别是A0~A7。调用此函数的时候,ADC会将基准电压分成1024份,然后一份一份的叠加,   直到最接近当前模拟引脚的电压为止,此时叠加的值就是电压测量值。   所以实际上引脚上的电压值为:V = value/1024*Vef(V:实际测量电压值,value为电压测量值,即此函数的返回值,Vef为基准电压,2.56V)。
    语法
       analogRead(pin)
    参数
       pin:需要进行ADC采集的模拟输入引脚。(A0~A7)
    返回值
       ADC测量值,取值为0~1023。   获取当前电压值的方法是:当前电压值 = (ADC测量值/1023)*  ADC基准电压值。
    注意事项
       如果ADC采集对应的模拟输入引脚没有接入任何电流,那么由analogRead()返回的值将根据多项因素(例如其他模拟输入引脚,你的手靠近板子等)产生波动。
    我们使用Analog I/O来进行ADC的数据采集。
    1. int analogPin = A0;
    2. int val = 0;

    3. void setup() {
    4.   // put your setup code here, to run once:
    5.   Serial.begin(9600);
    6.   Serial.println("setup");
    7. }

    8. void loop() {
    9.   // put your main code here, to run repeatedly:
    10.   float voltage;
    11.   val = analogRead(analogPin);
    12.   voltage = val/1023.0 * 2.55;
    13.   Serial.print("adc_value is ");
    14.   Serial.println(voltage);
    15.   delay(1000);
    16. }
    复制代码
    输出结果:
    QQ图片20161227232421.png

    评分

    参与人数 1 +15 收起 理由
    loveeeboard + 15

    查看全部评分

    回复

    使用道具 举报

  • TA的每日心情
    开心
    8 小时前
  • 签到天数: 3752 天

    连续签到: 78 天

    [LV.Master]伴坛终老

    发表于 2016-12-27 23:30:32 | 显示全部楼层
    消灭零回复,没有板板试
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-4-27 08:48 , Processed in 0.134218 second(s), 19 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.