楼主: 奈何col

按键控制LED实验

  [复制链接]
  • TA的每日心情
    开心
    2018-9-4 15:16
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2018-9-4 11:23 | 显示全部楼层
    刚开始不明白 上拉电阻 下拉电阻,细细咀嚼一下,懂了,为了稳定引脚电平状态,不能让引脚处在悬空状态,所以需要接地或者接入高电平,但是又不能直接连,因为这样电路就短接了,所以接入一个大电阻
  • TA的每日心情
    开心
    2018-9-9 19:22
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    发表于 2018-9-4 23:19 | 显示全部楼层
    进阶过程
    1.上拉电阻在电路图中有表示出来吗?内部上拉电阻是否不表示,在arduino部。。。。。。胡言乱语,没有依据。。。求指导。
    2.void loop()
    {
      buttonState = digitalRead(buttonPin);
      if(buttonState==HIGH)
      {
        digitalWrite(ledPin,LOW);
      }
      else
      {
        digitalWrite(ledPin,HIGH);
      }
    }
    为什么不是
    void loop()
    {
      buttonState = digitalRead(buttonPin);

      if(buttonState==HIGH)
        digitalWrite(ledPin,HIGH);
      else
        digitalWrite(ledPin,LOW);
    }
    3.上述代码“digitalRead(buttonPin)” buttonPin读取的电平和ledPin的电平有关吗?看电路,我觉得吧,有关系的。。。。。。如果有关,由下方代码知ledPin的输出电平又取决于读入的buttonPin的电平。

    点评

    1.电路一是上拉,二使用的内部上拉,内部上拉是芯片内集成的 2.取决于你怎么接电路和你想实现的效果,这个自己试验即可 3.同上,自己试验  详情 回复 发表于 2018-9-5 00:06
  • TA的每日心情
    郁闷
    2018-12-6 22:21
  • 签到天数: 48 天

    [LV.5]常住居民I

     楼主| 发表于 2018-9-5 00:06 | 显示全部楼层
    蒜香窝瓜 发表于 2018-9-4 23:19
    进阶过程
    1.上拉电阻在电路图中有表示出来吗?内部上拉电阻是否不表示,在arduino部。。。。。。胡言乱语, ...

    1.电路一是上拉,二使用的内部上拉,内部上拉是芯片内集成的

    2.取决于你怎么接电路和你想实现的效果,这个自己试验即可

    3.同上,自己试验
  • TA的每日心情
    开心
    2018-9-9 19:22
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    发表于 2018-9-5 18:23 | 显示全部楼层
    奈何col 发表于 2018-9-5 00:06
    1.电路一是上拉,二使用的内部上拉,内部上拉是芯片内集成的

    2.取决于你怎么接电路和你想实现的效果,这 ...

    炒鸡感谢
  • TA的每日心情
    难过
    2018-9-30 15:42
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2018-9-22 16:15 | 显示全部楼层
    love294710 发表于 2018-4-20 14:38
    代码中的
    ledState=!ledState
    起什么作用?

    状态取反,判断下一次灯是否亮。
  • TA的每日心情
    开心
    2018-9-23 11:00
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2018-9-26 22:41 | 显示全部楼层
    //优化程序//没必要有布尔命令

    //命名引脚
    const int buttonPin = 3;
    const int ledPin = 2;

    void setup() {
      //初始化I/O
      pinMode(buttonPin,INPUT_PULLUP);
      pinMode(ledPin,OUTPUT);
    }

    void loop() {
      // 等待按键按下
      while(digitalRead(buttonPin)==HIGH){}

      //当按键按下点亮或者熄灭led
      if (digitalRead(ledPin)==HIGH){
        digitalWrite(ledPin,LOW);
      }
      else{
        digitalWrite(ledPin,HIGH);
      }
      delay(200);
    }
  • TA的每日心情
    开心
    2018-12-27 12:20
  • 签到天数: 9 天

    [LV.3]偶尔看看II

    发表于 2018-10-7 11:23 | 显示全部楼层
    本帖最后由 李宏1995 于 2018-10-7 11:27 编辑

    老师你好,我想请问一下为什么程序写进去了,板子也按教程接好了,按键按下去却没有任何反应呢?我尝试了一下把电阻拿走,灯都会亮。应该不是灯或者线的问题,有没有可能是按键的问题呢

    点评

    可能的原因: 线连错了;电阻阻值错了  详情 回复 发表于 2018-10-7 11:55
  • TA的每日心情
    郁闷
    2018-12-6 22:21
  • 签到天数: 48 天

    [LV.5]常住居民I

     楼主| 发表于 2018-10-7 11:55 | 显示全部楼层
    李宏1995 发表于 2018-10-7 11:23
    老师你好,我想请问一下为什么程序写进去了,板子也按教程接好了,按键按下去却没有任何反应呢?我尝试了一 ...

    可能的原因:
    线连错了;电阻阻值错了

    该用户从未签到

    发表于 2018-10-8 09:44 | 显示全部楼层
    奈何col 发表于 2018-4-20 19:58
    取反,如果不懂,请看C语言逻辑运算

    如果第一次LEDState是低电平  那么加上!后自动取反
  • TA的每日心情
    开心
    2018-10-13 08:37
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    发表于 2018-10-9 19:50 | 显示全部楼层
    楼主太伟大了
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    热门推荐

    [限时福利]5分钟带你快速了解新一代开发板:M5STACK
    [限时福利]5分钟带你快速
    一、什么是M5Stack M5Stack是一种模块化、可堆叠扩展的开发板,每个模块
    点灯·blinker-1物联网初次尝试-Arduino物联网控制LED灯-零基础篇
    点灯·blinker-1物联网初
    疫情期间,待在家中在抖音上看到“暴改车间”分享的手机小爱同学物联网控制电脑开
    OLED 128*64自制可达10000000个选项的菜单(已更新)
    OLED 128*64自制可达10000
    OLED 128*64自制可达10000000个选项的菜单 温馨提示: 建议占个楼再食用本帖子
    萌新跪求arduinoUNO板对接无线模块(如何接和程序)
    萌新跪求arduinoUNO板对接
    哪位dalao能帮帮我啊???急!!! (提供有偿服务可加我QQ3285396460)
    DHT11温度模块写不了
    DHT11温度模块写不了
    Arduino:1.8.11 (Windows 10), 开发板:"Generic ESP8266 Module, 80 MHz, Flash, ck,
    Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   
    快速回复 返回顶部 返回列表