板载LED测试实验
上面的帖子我们介绍了Arduino的硬件、软件及语法。估计大家看着也很枯燥,话不多说,今天我们就将用我们的UNO板做第一个实验。
一般在我们的Arduino UNO或者相关的兼容板上都会有一个标有“L”字母的LED灯,它直接连接在控制板的数字端口13,它方便刚开始接触的新手进行第一次测试。
今天我们要准备的实验材料也很简单:一块 UNO R3控制板、一根USB数据线
首先我们要将UNO R3控制板用USB连接到电脑,之前的贴子我们已经装好了驱动,你的计算机已经认识了你的板子,这次连接,就可以直接用了。(如果还没装好驱动的,请回 http://www.yfrobot.com/forum.php?mod=viewthread&tid=251 参考)
然后我们打开arduino IDE编译器:
[attach]66[/attach]
打开后我们会看到下面的图标(说明正在打开,第一次打开可能会有点慢)
[attach]54[/attach]
打开后,我们就可以看到之前介绍过的编译界面了
[attach]55[/attach]
下面我们就可以打开程序了,官方下载下来的IDE软件中都带有很多例子,我们就使用其中的Blink程序;
下图是打开方式:
[attach]56[/attach]
打开后,看到如下图:
[attach]57[/attach]
打开之后我们要选择控制板型号,我们使用的是TSRobot UNO兼容板,所以我们选择Arduino UNO即可:
[attach]94[/attach]
然后还要选择下端口号,我们的端口号为2,所以选择它,如果你的电脑有多个端口,一般选择最后一个:
[attach]95[/attach]
当然如果你想锻炼下编程能力也可以自己编写代码;
程序很简单:就是给LED灯一秒高电平,一秒低电平,使其亮一秒,灭一秒;
代码如下:
代码打开或者你自己码好之后,点击IDE中的编译按钮:[attach]61[/attach]
点击后,IDE自动编译,窗口中下方出现“Compiling sketch... ”,旁边还出现个进度条:
[attach]63[/attach]
待编译完成,“Compiling sketch...”字样,变为“Done compiling.”说明编译成功,信息提示框内也会出现一行提示:
[attach]64[/attach]
编译成功后我们就可以将其烧写进控制板中,点击IDE中的上传按钮:[attach]62[/attach]
点击后,IDE将程序传给控制板,窗口中下方还会出现“Compiling sketch... ”,旁边有个进度条(这是在编译):
[attach]65[/attach]
再过一会,进度条过半,“Compiling sketch... ” 字样变成“Uploading”(正在上传),这时候观察控制板TX/RX串口灯,它们会不停的闪烁(数据传输):
[attach]67[/attach]
待上传完成提示“Done uploading”上传完成:
[attach]68[/attach]
程序我们已经上传完成,观察控制板上标有“L”字样的LED灯(如下图):
[attach]468[/attach]
它应该按照我们的要求:点亮一秒,熄灭一秒。
如果实验结果正确,恭喜你,你的第一个实验完成了,并且你的板子可以正常工作!
volatile int item;
void setup(){
item = 0;
pinMode(0, OUTPUT);
pinMode(1, OUTPUT);
pinMode(13, OUTPUT);
}
void loop(){
for (int item = 50; item <= 400; item = item + (25)) {
digitalWrite(0,HIGH);
digitalWrite(1,HIGH);
digitalWrite(13,HIGH);
delay(item);
digitalWrite(0,HIGH);
digitalWrite(1,LOW);
digitalWrite(13,LOW);
delay(item);
digitalWrite(0,LOW);
digitalWrite(1,HIGH);
digitalWrite(13,LOW);
delay(item);
}
for (int item = 400; item >= 50; item = item + (-25)) {
digitalWrite(0,HIGH);
digitalWrite(1,HIGH);
digitalWrite(13,HIGH);
delay(item);
digitalWrite(0,HIGH);
digitalWrite(1,LOW);
digitalWrite(13,LOW);
delay(item);
digitalWrite(0,LOW);
digitalWrite(1,HIGH);
digitalWrite(13,LOW);
delay(item);
}
for (int item = 50; item <= 400; item = item + (25)) {
digitalWrite(0,LOW);
digitalWrite(1,HIGH);
digitalWrite(13,LOW);
delay(item);
digitalWrite(0,HIGH);
digitalWrite(1,LOW);
digitalWrite(13,LOW);
delay(item);
digitalWrite(0,HIGH);
digitalWrite(1,HIGH);
digitalWrite(13,HIGH);
delay(item);
}
for (int item = 400; item >= 50; item = item + (-25)) {
digitalWrite(0,LOW);
digitalWrite(1,HIGH);
digitalWrite(13,LOW);
delay(item);
digitalWrite(0,HIGH);
digitalWrite(1,LOW);
digitalWrite(13,LOW);
delay(item);
digitalWrite(0,HIGH);
digitalWrite(1,HIGH);
digitalWrite(13,HIGH);
delay(item);
}
}
欢迎光临 YFROBOT创客社区 (http://www.yfrobot.com.cn/) | Powered by Discuz! X3.1 |