美文网首页
电位器调光

电位器调光

作者: MT521 | 来源:发表于2020-05-13 11:42 被阅读0次

    课前学习

    单词 含义
    rotation 旋转,转动
    sensor 传感器
    电位器这个名词对我们来说非常陌生,但是在我们生活中非常的常见,对我们的生活也有着很大的影响。也许你并不知道,在很多电器设备中都有应用,那我们来看一下哪些电器设备会用到电位器。 调光台灯

    我们所使用的调光台灯的电路中就有应用。今天这节课我们就通过读取电位器输入的电压值来控制LED灯的亮度。

    一.电位器

    电位器模块 电位器又叫滑动变阻器或者可变电阻器。具有三个引出端,阻值可按某种规律调节电阻的电阻元件。由于它在电路中的作用是获得与输入电压成一定关系的输出电压,因此称之为电位器。 电位器原理图

    通过旋转旋钮改变2号脚位置,从而改变2号脚到两端的阻值。实验中将1脚和3脚分别接到开发板的5V的GND,再通过模拟输入引脚A0来读取电位器2号脚分得的电压,其范围在0V和5V之间。

    二.实验步骤

    1.实验器材

    名称 实物 数量
    UNO主控板 1
    面包板 1
    电位器 1
    LED 1
    导线 若干

    2.绘制连线图

    三.程序设计

    1.函数介绍

    米思齐模块:模拟输入

    analogRead()
    描述:读取指定模拟引脚的值。
    函数原型:analogRead(pin)
    参数:模拟输入引脚。
    返回值:0到1024之间的整数。


    米思齐模块:映射

    map()
    描述:将数据从一个范围映射到另一个范围。
    函数原型:map(value, fromLow, fromHigh, toLow, toHigh)
    参数:
    value: 要映射的数据
    fromLow: 当前范围的下限值。
    formHigh: 当前范围的上限值。
    toLow: 目标范围的下限值。
    toHigh: 目标范围的上限值。
    返回值:重新映射后的数据。

    2.代码部分

     /*
        AnalogRead
        通过电位器改变LED灯亮度
     */
     
     int ledPin = 10;
     
     int readValue = 0; //保存读到的模拟值
     int ledValue = 0;  //保存LED灯占空比
     
     void setup()
     {
       pinMode(ledPin, OUTPUT);     //数字口要选择带~号的具有pwm功能的输出口
     }
     
     void loop()
     {
       readValue = analogRead(A0);     //读取A0模拟口的数值(0-5V 对应 0-1204取值)
       ledValue = map(readValue, 0, 1024, 0, 255); //将0到1024之间的数据映射成0到255之间的数据
       analogWrite(ledPin, ledValue);   //PWM最大取值255  
     }   
    

    相关文章

      网友评论

          本文标题:电位器调光

          本文链接:https://www.haomeiwen.com/subject/qimgnhtx.html