0


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);
  }
}

标签: arduino

本文转载自: https://blog.csdn.net/nullccc/article/details/127346489
版权归原作者 余生皆假期- 所有, 如有侵权,请联系我们删除。

“arduino 笔记【1】 模拟IO与数字IO区别”的评论:

还没有评论