2018-11-01


今天从arduino中文社区学习如何使用上拉电阻和下拉电阻感觉其中的一个程序很有趣,记录下来,后期使用:
先介绍下拉电阻:

      下拉电阻,如下图,在Genuino101板子的2号引脚到GND之前,连接了一个阻值10K的电阻。如果没有该电阻,当未按下按键时,2号引脚会一直处于悬空状态,此时使用digitalRead()读取2号引脚状态,会得到一个不稳定的值(可能会高,也可能是低)。添加R1电阻到地就是为了稳定引脚电平,当引脚悬空时,就会识别为低电平。而这种将某节点通过电阻接地的做法,叫做下拉,这个电阻叫做下拉电阻。

示例程序:

const int buttonPin=2;

const int ledPin=13;

void setup()

{

   pinMode(ledPin,OUTPUT);

   pinMode(butterPin,INPUT);

}

void loop()

{

    buttonState=digitalRead(buttonPin);

    if(buttonStae==HIGH)

    {

      digitalWrite(ledPin,HIGH);
    }

    else

   {

     digitalWrite(ledPin,LOW);

   }

}

然后介绍上拉电阻:

       如下图,同下拉电阻一样,可以稳定I/O口电平,不同的是电阻连接到VCC,将引脚稳定在高电位。这种电阻叫做上拉电阻。

       这里使用的是内部上拉电阻,也可以使用外部上拉电阻代替。稳定悬空引脚的电平所用电阻应该选择合适的阻值。

示例程序:

int buttonPin=2;

int ledPin=13;

int buttonState=0;

void setup()

{

    pinMode(buttonPin,INPUT_PULLUP);

    pinMode(ledPin,OUTPUT);

}

void loop()

{

   buttonState=digitalRead(buttonPin);

   if(buttonStae==HIGH)

   {

    digitalWrite(ledPin,LOW);

   }

else

{

   digitalWrite(ledPin,HIGH);

}

}



关于程序升级,完成一个新的控制效果。按一下按键,点亮LED;再按一下按键,熄灭LED。


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 排错指南 - Pod 本文档介绍 Pod 的异常状态,可能原因和解决办法。 排查 Pod 异常的常用命令如下: 查...
    小孩子的童话2014阅读 11,908评论 0 2
  • Gartner:以下5种情况公司应该选择私有云而不是公有云 2015年2月6日,中国农历除夕的前一天,当大多数中国...
    喵喵唔的老巢阅读 1,247评论 0 0
  • Page1腌臜za,第二个字是轻声,形容肮脏,不干净,也可形容(心里)别扭,不痛快。《红楼梦》:破衲芒鞋无住迹,腌...
    8a506ab7cec7阅读 2,994评论 0 1
  • 中午跟妈妈说:心里很矛盾,既想赶快考试,又不想赶快考试,担心考不好,我说:只能选择一个,她说:那还是选择赶快考吧!...
    郑彩云_aa1b阅读 1,405评论 2 1
  • 从小我们就被长辈教育,要做一个正经人,别学XXX不正经!大概在我们的记忆里:不好好念书,就知道打架玩游戏是不正经;...
    胖死你个大肥猫阅读 12,294评论 0 8

友情链接更多精彩内容