Arduino 自学笔记

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Arduino教程

1.Arduino的介绍

●什么叫arduino?

Arduino是一块基于开放原始代码的Simple i/o平台,并且具有开发语言和开发环境都很简单,易理解的特点。可以让你轻松利用arduino做出有趣的东西。

他是一个能够用来感应和控制现实物理世界的一套工具。他由一个基于单片机并且开放源码的硬件平台和一套为arduino板编程软件的开发环境组成。

Arduino可以用来开发交互产品,比如它可以用来读取大量开关和传感器的信号,并且可以控制各种各样的灯,电机和其他物理设备。Arduino项目可以是单独的也可以和你的电脑上的软件程序(例如:flash,processing,maxMsp 等)进行通讯。Arduino开源的IDE可以免费下载得到

●Arduino的特点

1.开放原始码的电路图设计,开放界面免费下载,也可以依需求自己修改

2.下载程序简单,方便。

3.可简单的与传感器,各种各样的电子元件连接(如:LED灯,蜂鸣器,

开关,光敏电阻等),做出各种各样的有趣的东西。

4.使用高效的微处理器

5.开发语言和开发环境都非常的简单,对初学者来说很容易上手

●Arduino的性能

1.Digital I/O数字输入/输出端口0-13.

2.Analog I/O模拟输入/输出0-5.

3.支持ISP下载功能。

几个比较特殊的端口说明

●VIN端口:VIN是input voltage的缩写,表示有外部电源是的输入端

口。如果不使用USB供电时,外部电源可以通过此引脚提供电压(如电

池供电,电池正极接VIN引脚,负极接GND引脚)。

●AREF:Reference voltage for the analog input(模拟输入的基准电

压)。使用analogReference()命令使用。

2.流水灯的设计

●实验原理

在生活中我们经常看到一些有各种颜色组成的广告灯,广告灯上各个位置的LED灯不断的两咩变化,就形成各种不同的效果,本届实验就

是利用led灯编程做一个流水灯的效果,在程序中我们设置led灯的亮

灭的次序与时间就可以实现流水灯的效果

本次实验我们用6个led灯作流水灯,通过控制各个led的亮灭次序与时间,就可以实现流水灯的效果。

一排6个led灯,首先依次点亮,再依次熄灭;然后6灯齐闪3次;

最后实现两个两个一起闪3次。

●实验器材

1.Led灯:6个

2.220欧姆电阻:6个

3.面包板以及跳线:若干

4.Arduinio板子一块,数据线等

●程序代码

●int LED1=8;

●int LED2=9;

●int LED3=10;

●int LED4=11;

●int LED5=12;

●int LED6=13;

●int n;

●void setup()

●{ //设置各个引脚的初始状态

●for(n=8;n<=13;n++)

●{

● pinMode(n, OUTPUT);

●}

●}

●void loop()

●{

● turn1();//顺序点亮,顺序熄灭

● clean(); //灭掉所有灯

● turn2();//6灯齐闪

● clean();//灭掉所有灯

● turn3();

● clean();//灭掉所有灯

●}

●void turn1() //顺序点亮,顺序熄灭●{

●{

● digitalWrite(n,HIGH);

● delay(300);

●}

● for(n=8;n<=13;n++)

●{

● digitalWrite(n,LOW);

● delay(300);

●}

●}

●void turn2()//6灯齐闪3次

●{ for(int x=0;x<=2;x++)

●{

● for(n=8;n<=13;n++)

●{

● digitalWrite(n,HIGH); ●}

●delay(300);

● for(n=8;n<=13;n++)

●{

● digitalWrite(n,LOW);

●}

●delay(300);

●}

●}

●void turn3()//两个两个一起闪3次●{

● for(int x=0;x<=2;x++)

● {

● digitalWrite(8,HIGH);

● digitalWrite(9,HIGH);

● digitalWrite(n,LOW);

● }

● delay(300);

● digitalWrite(10,HIGH);

● digitalWrite(11,HIGH);

● digitalWrite(8,LOW);

● digitalWrite(9,LOW);

● digitalWrite(12,LOW);

● digitalWrite(13,LOW);

● delay(300);

● digitalWrite(12,HIGH);

● digitalWrite(13,HIGH);

● for(n=8;n<=11;n++){

● digitalWrite(n,LOW);

● }

● delay(300);

●}

●}

●void clean()

●{ for(n=8;n<=13;n++)

●{

● digitalWrite(n,LOW); ●

●}

●delay(300);

●代码回顾

相关文档
最新文档