arduino 笔记【1】 模拟IO与数字IO区别

arduino 电路板各部分介绍

点亮灯泡实验

实验需要 面包板、两根杜邦线、一颗 220 电阻 、一个 led 灯泡,以及 arduino 主板。

 值得注意的是,led 的两侧电线长度并不相同,偏长的一侧接入电源,短的一侧接地。

 并且一定要让电阻应用到电路中,否则会烧毁 led 灯。

数字 IO 和模拟 IO 区别

arduino 有两种端口,数字端口和模拟端口。

数字端口:该端口只有通常的逻辑电平只有高电平或者低电平,用数字来表示高电平就是1,低电平就是0。其中共有两个函数配合数字端口使用:digitalWrite( ) 和 digitalRead( )。

模拟端口:通过调制高低电平的占空比调制电压。arduino 将模拟端口的值设定在 0~1023 之间。使用 analogRead() 和 analogWrite() 函数控制。

其中:所有的端口都可以使用数字输入输出,PWM口可以使用模拟输出,但不可以模拟输入;模拟端口(A0~A5)可以使用模拟输入,但不能用模拟输出。

像 arduino uno 的3,5,6,9,10,11 等 IO 脚,是通过内部时钟控制电平高低输出 PWM,好处是不占用 cpu 时间。

其它 IO 脚并非不具备 PWM 输出功能,只是不能使用 analogWrite() 函数输出,但是可以通过自己写延迟代码控制高低电平形成PWM波,不好的地方是要使用循环语句,占用cpu时间。

数字端口点亮 IO

将电路连接好,正极接入电阻。

执行代码:

void setup() {
  pinMode(3,OUTPUT);
}

void loop() {
  digitalWrite(3,HIGH);
}

成功点亮。

模拟端口点亮 IO

模拟输出口只能用 A0~A5

所以我们用 3 口在这里模拟输出 0~255 级的电压,实现呼吸灯效果。

void setup() {
  pinMode(3,OUTPUT);
}

void loop() {
  for(int i = 0;i<255;i++){
      analogWrite(3,i);
      delay(10);
  }
}

  • 4
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值