收藏 分享(赏)

arduino入门经典.doc

上传人:精品资料 文档编号:10761906 上传时间:2020-01-08 格式:DOC 页数:59 大小:9.98MB
下载 相关 举报
arduino入门经典.doc_第1页
第1页 / 共59页
arduino入门经典.doc_第2页
第2页 / 共59页
arduino入门经典.doc_第3页
第3页 / 共59页
arduino入门经典.doc_第4页
第4页 / 共59页
arduino入门经典.doc_第5页
第5页 / 共59页
点击查看更多>>
资源描述

1、1目录一、 制作第一个电路 单 led 闪烁2二、 hello world 经典例程9三、 Arduino 基础10四、Arduino 的数字输出11五、 Arduino 的串口输入14六、Arduino 的串口输出16七、Arduino 的模拟输入18八、Arduino 的模拟输出20九、6LED 灯闪烁实验23十、蜂鸣器实验29十一、1 位数码管实验 32十二、按键实验34十三、光控 LED 实验37十四、1602 实验39十五、lm35 温度传感器实验42十六、舵机控制实验45十七、红外遥控接收实验 48十八、红外遥控控制舵机实验50十九、LED 点阵实验52二十、74HC595 实验5

2、42ASCII 表 57ATMEGA328 引脚图 58一、制作第一个电路 单 led 闪烁做任何一个电路之前,一定要先了解电路中原件的参数,其工作电压,工作电流等。第一个实验咱们用到的 LED 从网上查找资料得知,其工作电压一般为 1.5-2.0V,工作电流一般为 10-20ma,反向击穿电压为 5V。控制板逻辑电路供电为 5V。根据以上参数假设 LED 工作电压选用 1.7,工作电流选用 15ma,限流电阻 =(总电压-LED 电压)/电流,所以限流电阻=(5-1.7)/0.015=220。首先需要从 arduino 官方网站下载其编译软件,地址是http:/arduino.cc/en/M

3、ain/Software笔者使用的平台为 win7 32 位,如果大家使用的是其他平台,按照对应的下载就可以。下载回来的软件包解压缩后的目录结构如下图,arduino.exe 是程序的启动文件,driver 目录是控制板 usb 芯片驱动, usb 接上控制板后如果要寻找驱动,把目录指定到这里就可以。3本次实验用到的器材为一个面包板,一个 LED,一个 1k 的电阻,两根导线,如下图:本次实验的连接方法如下图,LED 两个针脚有一长一短,短的是连接 GND,长的是连接正极。在 LED 的长引脚前,需要添加一个 220 的限流电阻。连接数字 5 号接口。实物连接如下图:通过面包板把个个电子器件连

4、接好以后,接上 USB 线,设置好控制板型号、端口号。4程序语言先不详解,大家先照猫画虎对着抄,后面通过各个实验,将对不同命令进行详解。编写程序前,先需要选择控制板的型号。如下图:控制板型号选择好后,选择串口位置,笔者电脑的串口为 COM15:5串口具体是多少号可以到设备管理中进行查看,如下图:先把程序复制进去:6int ledPin=5; /设定控制 LED 的数字 IO 脚void setup()pinMode(ledPin,OUTPUT);/设定数字 IO 口的模式,OUTPUT 为输出void loop() digitalWrite(ledPin,HIGH); /设定 PIN5 脚为

5、HIGH = 5V 左右delay(2000); /设定延时时间,2000 = 2 秒digitalWrite(ledPin,LOW); /设定 PIN5 脚为 LOW = 0Vdelay(2000); /设定延时时间,2000 = 2 秒 图中 int;void setup 等褐色的文字是系统命令,OUTPUT 等蓝色文字是命令的功能开关,黑色文字是变量。程序写好以后点击编译按钮进行编译。 编译完成后会显示出来编译后的文件大小,本次编译出来的程序大小为 1068 字节。7然后把编译好的程序下载到 arduino 控制板上,点击下载按钮。8下载完成后会有提示本次实验效果如下,闪烁着光芒的灯。总

6、结:int;void setup 等褐色文字是系统命令,OUTPUT 等蓝色文字是系统命令的功能开关,黑色文字是变量。在“int ledpin=5“中;设置了 LED 的数字 IO 脚,ledpin 仅仅是 5 号数字端口自定义出来的名字,变成 xxx 等都可以。对于多脚 IO 操作的程序中,为每一个引脚定义名字是有必要性的,程序复杂后方便功能识别。9二、hello world 经典例程通过 Arduino 编译器查看串口数据最简单的例子:void setup() Serial.begin(9600); / 打开串口,设置波特率为 9600 bpsvoid loop() Serial.prin

7、tln(“Hello world!”);delay(1000);如果电路安装正确,按照示例代码运行、上传,然后点击编译器的 Serial Monitor 按钮,就可以看到 Serial Monitor 输出 Hello world!。10三、 Arduino 基础在学语言之间,还要做的一个功课就是要明白程序的构架,这个也同样简单,大体可分为几个部分。1、声明变量及接口名称(int val;int ledPin=13;)。2、setup()函数在程序开始时使用,可以初始化变量、接口模式、启用库等(例如:pinMode(ledPin,OUTUPT);)。3、loop() 在 setup()函数之后

8、,即初始化之后,loop() 让你的程序循环地被执行。使用它来运转 Arduino。接下来就开始学习一下几个基本函数。1、pinMode(接口名称,OUTPUT 或 INPUT)将接口定义为输入或输出接口,用在setup()函数里。2、digitalWrite(接口名称, HIGH 或 LOW)将数字接口值至高或低。3、digitalRead (接口名称) 读出数字接口的值。4、analogWrite(接口名称, 数值)给一个接口写入模拟值(PWM 波)。对于 ATmega168 芯片的 Arduino(包括 Mini 或 BT),该函数可以工作于 3, 5, 6, 9, 10和 11 号接口

9、。老的 ATmega8 芯片的 USB 和 serial Arduino 仅仅支持 9, 10 和 11 号接口。5、analogRead(接口名称)从指定的模拟接口读取值, Arduino 对该模拟值进行10-bit 的数字转换,这个方法将输入的 0-5 电压值转换为 0 到 1023 间的整数值。6、delay() 延时一段时间, delay(1000)为一秒。7、Serial.begin( 波特率)设置串行每秒传输数据的速率(波特率)。在同计算机通讯时,使用下面这些值:300, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 576

10、00 或 115200。你也可以在任何时候使用其它的值,比如,与 0 号或 1 号插口通信就要求特殊的波特率。用在 setup()函数里8、Serial.read()读取持续输入的数据。9、Serial.print( 数据,数据的进制) 从串行端口输出数据。Serial.print(数据) 默认为十进制等于 Serial.print(数据,DEC) 。10、Serial.println(数据,数据的进制)从串行端口输出数据,跟随一个回车和一个换行符。这个函数所取得的值与 Serial.print()一样。以上几个函数是常用基本函数,还有很多以后会慢慢学习11四、 Arduino 的数字输出Ar

11、duino 的数字 I/O 被分成两个部分,其中每个部分都包含有 6 个可用的 I/O 管脚,即管脚 2 到管脚 7 和管脚 8 到管脚 13。除了管脚 13 上接了一个 1K 的电阻之外,其他各个管脚都直接连接到 ATmega 上。我们可以利用一个 6 位的数字跑马灯,来对 Arduino 数字 I/O 的输出功能进行验证,以下是相应的原理图:12电路中在每个 I/O 管脚上加的那个 1K 电阻被称为限流电阻,由于发光二极管在电路中没有等效电阻值,使用限流电阻可以使元件上通过的电流不至于过大,能够起到保护的作用。该工程对应的代码为:int startPin = 2;int endPin =

12、7;int index = 0;void setup()for (int i = startPin; i =1;j-)digitalWrite(j,LOW);delay(200); void setup() unsigned char i;for(i=1;i=1;j-)digitalWrite(j,LOW);delay(200); void setup() unsigned char i;for(i=1;i=1;j-)/每隔 200ms 依次熄灭 61 引脚相连的 led 灯digitalWrite(j,LOW);/熄灭 j 引脚相连的 led 灯delay(200);/延时 200ms /灯

13、闪烁子程序void flash(void) unsigned char j,k;for(k=0;k=1;j-) digitalWrite(j,HIGH);/点亮灯digitalWrite(j+k,HIGH);/点亮灯delay(400);/延时 400msk +=2;/k 值加 2k=5;/设置 k 值为 5for(j=1;j=1;j-) digitalWrite(j,HIGH);/点亮灯digitalWrite(j+k,HIGH);/点亮灯delay(400);/延时 400msdigitalWrite(j,LOW);/熄灭灯digitalWrite(j+k,LOW);/熄灭灯k +=2;/

14、k 值加 2 void setup() unsigned char i;for(i=1;i=6;i+)/依次设置 16 个数字引脚为输出模式pinMode(i,OUTPUT);/设置第 i 个引脚为输出模式void loop() style_1();/样式 1flash();/闪烁style_2();/样式 2flash();/闪烁style_3();/样式 3flash();/闪烁 29十、蜂鸣器实验30本次实验所用的为下图所示的这种小型无源蜂鸣器通过上网查询参数,得到其工作电压为 5V,和 arduino 控制板数字端口输出电压一致,所以不需要接电阻。可直接接上使用。先简单介绍一下这种小型蜂鸣器。小型蜂鸣器因其体积小(直径只有 6mm)、重量轻、价格低、结构牢靠,而广泛地应用在各种需要发声的电器设备、电子制作和单片机等电路中。这种蜂鸣器分有源蜂鸣器与无源蜂鸣器下图为有源蜂鸣器下图为无源蜂鸣器从外观上看,两种蜂鸣器好像一样,如果将蜂鸣器引脚朝上时,可以看到,有绿色电

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报