arduino是什么以及arduino能干什么

arduino是什么以及arduino能干什么,第1张

  你了解什么是Arduino吗?你知道Arduino能做些什么吗?今天就让我们来认识一下Arduino!什么是Arduino?

  一、什么是Arduino?

  Arduino是一款便捷灵活、方便上手的开源电子原型平台。包含硬件(各种型号的Arduino板)和软件(Arduino IDE)。由一个欧洲开发团队于2005年冬季开发。其成员包括Massimo Banzi、David Cuartielles、Tom Igoe、Gianluca MarTIno、David Mellis和Nicholas ZambetTI等。

  

  Arduino能通过各种各样的传感器来感知环境,通过控制灯光、马达和其他的装置来反馈、影响环境。板子上的微控制器可以通过Arduino的编程语言来编写程序,编译成二进制文件,烧录进微控制器。对Arduino的编程是通过 Arduino编程语言 (基于 Wiring)和Arduino开发环境(基于 Processing)来实现的。基于Arduino的项目,可以只包含Arduino,也可以包含Arduino和其他一些在PC上运行的软件,他们之间进行通信 (比如 Flash, Processing, MaxMSP)来实现。

  1、Arduino的来历

  Massimo Banzi之前是意大利Ivrea一家高科技设计学校的老师。他的学生们经常抱怨找不到便宜好用的微控制器。 2005年冬天, Massimo Banzi跟David CuarTIelles讨论了这个问题。 David CuarTIelles是一个西班牙籍晶片工程师,当时在这所学校做访问学者。两人决定设计自己的电路板,并引入了Banzi的学生David Mellis为电路板设计编程语言。两天以后,David Mellis就写出了程式码。又过了三天,电路板就完工了。Massimo Banzi喜欢去一家名叫di Re Arduino的酒吧,该酒吧是以1000年前意大利国王Arduin的名字命名的。为了纪念这个地方,他将这块电路板命名为Arduino。

  

  随后Banzi、Cuartielles和Mellis把设计图放到了网上。版权法可以监管开源软件,却很难用在硬件上,为了保持设计的开放源码理念,他们决定采用Creative Commons(CC)的授权方式公开硬件设计图。在这样的授权下.任何人都可以生产电路板的复制品,甚至还能重新设计和销售原设计的复制品。人们不需要支付任何费用,甚至不用取得Arduino团队的许可。然而,如果重新发布了引用设计,就必须声明原始Arduino团队的贡献。如果修改了电路板,则最新设计必须使用相同或类似的Creative Commons(CC)的授权方式,以保证新版本的Arduino电路板也会一样是自由和开放的。唯一被保留的只有Arduino这个名字,它被注册成了商标,在没有官方授权的情况下不能使用它。

  二、arduino能干什么

  1.趣味彩灯

  arduino是什么以及arduino能干什么,arduino是什么以及arduino能干什么,第2张

  void setup()

  {

  for(int i=0;i《=7;i++) //把0-7设置为输入

  pinMode(i,INPUT);

  for(int j=8;j《=13;j++) //把8-13设置为输出

  pinMode(j,OUTPUT);

  }

  void loop()

  {

  if(digitalRead(1)==HIGH)

  {

  if(digitalRead(1)==HIGH)

  {

  for (int x=9; x《=12; x++) //循环方式依次让每个led在1秒内点亮

  {

  digitalWrite(x,HIGH);

  delay(1000);

  }

  }

  delay(10000);

  for (int x=9; x《=12; x++) //循环方式依次让每个led熄灭

  {

  digitalWrite(x,LOW);

  }

  for (int K=1; K《=10; K++) //循环10次,亮0.5秒灭0.5秒,共10秒

  {

  digitalWrite(13,HIGH);

  delay(500);

  digitalWrite(13,LOW);

  delay(500);

  }

  }

  }

  2.楼道延时报警灯

  arduino是什么以及arduino能干什么,arduino是什么以及arduino能干什么,第3张

  void setup()

  {

  for(int i=0,j=9;i《=8,j《=13;i++,j++) //设置0-8为输入,9-13为输出

  {pinMode(i,INPUT);pinMode(j,OUTPUT);}

  }

  void loop()

  {

  if(digitalRead(1)==HIGH||digitalRead(2)==HIGH) //引脚1或2置高电平

  {

  digitalWrite(9,HIGH); //9置高电平

  delay(25000); //延时25秒

  digitalWrite(10,HIGH); //10置高电平

  delay(5000); //延时5秒

  digitalWrite(10,LOW); //10置低电平

  digitalWrite(9,LOW); //9置低电平

  }

  }

  3.行程自动往返工件传送带

  arduino是什么以及arduino能干什么,arduino是什么以及arduino能干什么,第4张

  void setup()

  {

  for(int i=0;i《=7;i++) //把0-7设置为输入

  pinMode(i,INPUT);

  for(int j=8;j《=13;j++) //把8-13设置为输出

  pinMode(j,OUTPUT);

  }

  void loop() {

  if(digitalRead(1)==HIGH){

  digitalWrite(9,HIGH);

  digitalWrite(10,LOW);

  }

  if(digitalRead(2)==HIGH){

  digitalWrite(10,HIGH);

  digitalWrite(9,LOW);

  }

  if(digitalRead(3)==HIGH){

  digitalWrite(9,LOW);

  digitalWrite(10,LOW);

  }

  }

  4.A、B、C三路智能抢答器(直接用带闪烁灯的蜂鸣器更好)

  arduino是什么以及arduino能干什么,arduino是什么以及arduino能干什么,第5张

  void setup()

  {

  for(int i=0,j=9;i《=8,j《=13;i++,j++) //设置0-8为输入,9-13为输出

  {pinMode(i,INPUT);pinMode(j,OUTPUT);}

  }

  void loop()

  { if(digitalRead(1)==HIGH&&digitalRead(11)==LOW&&digitalRead(13)==LOW)

  {

  digitalWrite(8,HIGH);

  digitalWrite(9,HIGH);

  } if(digitalRead(2)==HIGH&&digitalRead(9)==LOW&&digitalRead(13)==LOW)

  {

  digitalWrite(10,HIGH);

  digitalWrite(11,HIGH);

  }

  if(digitalRead(3)==HIGH&&digitalRead(9)==LOW&&digitalRead(11)==LOW)

  {

  digitalWrite(12,HIGH);

  digitalWrite(13,HIGH);

  }

  if(digitalRead(4)==HIGH)

  {

  for(int k=8;k《=13;k++)

  digitalWrite(k,LOW);

  }

  }

  5.机床控制系统

  arduino是什么以及arduino能干什么,arduino是什么以及arduino能干什么,第6张

  void setup()

  {

  for(int i=0;i《=7;i++) //把0-7设置为输入

  {pinMode(i,INPUT);}

  for(int j=8;j《=13;j++) //把8-13设置为输出

  {pinMode(j,OUTPUT);}

  }

  void loop() {

  digitalWrite(9,digitalRead(1));

  digitalWrite(10,!digitalRead(2));

  digitalWrite(11,digitalRead(3));

  }

  6.楼上楼下共控一灯(方式2)

  arduino是什么以及arduino能干什么,arduino是什么以及arduino能干什么,第7张

  void setup()

  {

  for(int i=0,j=9;i《=8,j《=13;i++,j++) //设置0-8为输入,9-13为输出

  {pinMode(i,INPUT);pinMode(j,OUTPUT);}

  }

  void loop() {

  if(digitalRead(1) == HIGH) //有按键按下

  {

  delay(20); //延时去抖动

  if(digitalRead(1) == HIGH) //有按键按下

  {

  digitalWrite(9,!digitalRead(9)); //LED的状态翻转

  while(digitalRead(1) == HIGH); //等待按键松手

  }

  }

  if(digitalRead(2) == HIGH) //有按键按下

  {

  delay(20); //延时去抖动

  if(digitalRead(2) == HIGH) //有按键按下

  {

  digitalWrite(9,!digitalRead(9)); //LED的状态翻转

  while(digitalRead(2) == HIGH); //等待按键松手

  }

  }

  }

  7.工厂顺序启动反顺序停车控制系统

  arduino是什么以及arduino能干什么,arduino是什么以及arduino能干什么,第8张

  void setup()

  {

  for(int i=0;i《=7;i++) //把0-7设置为输入

  {pinMode(i,INPUT);}

  for(int j=8;j《=13;j++) //把8-13设置为输出

  {pinMode(j,OUTPUT);}

  }

  void loop() {

  if(digitalRead(1)==HIGH)

  {digitalWrite(9,HIGH);

  delay(5000);

  digitalWrite(10,HIGH);}

  if(digitalRead(2)==HIGH)

  {digitalWrite(10,LOW);

  delay(5000);

  digitalWrite(9,LOW);}

  }

  8.楼道声光控灯

  arduino是什么以及arduino能干什么,arduino是什么以及arduino能干什么,第9张

  void setup()

  {

  for(int i=0;i《=7;i++) //把0-7设置为输入

  {pinMode(i,INPUT);}

  for(int j=8;j《=13;j++) //把8-13设置为输出

  {pinMode(j,OUTPUT);}

  }

  void loop() {

  if(digitalRead(1)==HIGH&digitalRead(2)==HIGH)

  {digitalWrite(9,HIGH);

  delay(20000);

  digitalWrite(9,LOW);}

  }

  9.水塔自动上水装置

  arduino是什么以及arduino能干什么,arduino是什么以及arduino能干什么,第10张

  arduino是什么以及arduino能干什么,arduino是什么以及arduino能干什么,第11张

  void setup() {

  pinMode(1,INPUT);

  pinMode(9,OUTPUT);}

  void loop()

  {digitalWrite(9,!digitalRead(1));}

  10.电机拖动控制

  arduino是什么以及arduino能干什么,arduino是什么以及arduino能干什么,第12张

  void setup()

  {

  for(int i=0;i《=7;i++) //把0-7设置为输入

  pinMode(i,INPUT);

  for(int j=8;j《=13;j++) //把8-13设置为输出

  pinMode(j,OUTPUT);

  }

  void loop()

  {

  if(digitalRead(1)==HIGH&&digitalRead(9)==LOW&&digitalRead(10)==LOW)

  {

  digitalWrite(9,HIGH);

  delay(5000);

  digitalWrite(10,HIGH);

  }

  if(digitalRead(2)==HIGH)

  {digitalWrite(9,HIGH);}

  if(digitalRead(3)==HIGH)

  {digitalWrite(9,LOW);}

  if(digitalRead(4)==HIGH)

  {digitalWrite(10,HIGH);}

  if(digitalRead(5)==HIGH)

  {digitalWrite(10,LOW);}

  }

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/dianzi/2717039.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-17
下一篇 2022-08-17

发表评论

登录后才能评论

评论列表(0条)

保存