明白了吗?
我们现在把连接的红线接在AI的数字脚7上,黑线接在AI的GND(负极)上。一定要接电阻!电阻至少为220欧,如果电阻阻值太大,灯的亮度就会很暗。好了硬件搭载完成,现在就编写程序就可以了。
我们的目标是点亮一个灯。
在程序窗口写上以下代码(你复制也是可以的)
C++ Code
1
2
3
4
5
6
7
8
9
10
11
12
|
| void setup()
{
pinMode(7,OUTPUT);
}
void loop()
{
digitalWrite(7,HIGH);
delay(1000);
digitalWrite(7,LOW);
delay(1000);
}
|
(, 下载次数: 94)
板子上的本身带有的RX和TX的灯会在下载的过程中会闪起来的。当下载完成后我们看到面包板上的led亮起来的。
如果我想让这个灯灭呢,现在程序又怎么编写的,可以这样子:把digitalWrite(7,HIGH);改成digitalWrite(7,LOW);按编译,下载。
然后我们看到面包板上的led灭了。是不是好简单呢?
我们再改一下,把程序里面的7都改成8,把digitalWrite里面的LOW改回HIGH,程序如下: 按编译,下载。然后我们看到面包板上的led还是灭的。为什么呢,因为我们现在led灯实际插的脚是7!!但是我们程序控制的是8!!led肯定不亮啦!我们只要把红线从7拔出来接到8那里,这时我们看到led亮起来了。
上面的程序是最基本的程序,我们一定把语法给记住,就像我们说话一样遵循一定语法,否则别人会听不懂。
这样我们就完成了第一个自己编写的程序了!
现在给大家说下记忆技巧,大家要注意下,编程必须是在英文输入状态下输入,中文的符号是会导致程序编译不过的
void是“声明”的意思,这个格式是c语言的程序开头一般都要写的
setup是“设置”的意思,就是程序初始化前的一些设置,setup里面的语句只执行一次。
loop是“圈、循环”的意思,从意思上知道,程序就不断在这里循环执行!
pinMode(注意M是大写)中的pin是引脚的意思,Mode是模式的意思,合起来就是引脚模式
它的编写格式是这样的
pinMode(x,OUTPUT/INPUT),x是填你要初始化的数字脚,逗号后面只能填OUTPUT(输出模式);INPUT(输入模式),控制led用OUTPUT,按键则用INPUT。
digitalWrite(注意W是大写)中的digital是数字的意思,Write是写的意思。合起来了就是数字脚写(高电平或者低电平)
它的编写格式是这样的
digitalWrite(x,HIGH/LOW),x是填你要控制的数字脚,逗号后面只能填HIGH(输出高电平【5V】)或者是填LOW(输出低电平【0V】)
还有一个重要的技巧是,arduino是采用骆驼峰拼法,即当两个单词合起来(如pinMode、digitalWrite),第二个单词开头要大写!(如pinMode的M、digitalWrite的W)。大家可能会问这有什么意义,意义大着呢!例如我们保存程序必须是英文名(保存中文名会乱码),我们用骆驼峰拼法就能比较容易找出我们的程序。不信,我来考下你。
没用骆驼峰拼法:nimamajiaonihuijiachifan
用骆驼峰拼法:niMaMaJiaoNiHuiJiaChiFan
怎样是不是骆驼拼法容易看出来点,这样我们就能较快知道这一大串字母实际要表达什么意思。
保存我们的程序File》Save as》打上你的文件名,例如我取名led(一定是英文名,中文会乱码),保存ok。我们默认保存在我的文档的arduino文件夹里面,下次打开直接打开。
打开我们的程序
现在就练习下如何打开我们刚刚保存的程序
File》sketchbook(速写本)》led
这时候我们可以看到刚才存储的led就被打开了。但是如果我们程序不是存储在“我的文档的arduino文件夹”里面,就不能在sketchbook找到。所以还是建议大家存储在“我的文档"arduino里面,方便打开。
现在我要让7脚接上Led灯,然后让它每隔一秒闪烁。尝试自己写下程序,忘了格式就偷偷看下之前写的那个。
先写大框架
[mw_shl_code=cpp,true]void setup()
{
}
void loop()
{
}[/mw_shl_code]
我用要控制7脚,初始化设置,肯定要设置7脚为输出
pinMode(7,OUTPUT); 不要忘记;分号,分号是表示一个语句的结束
在循环里面则控制7脚输出高电平、低电平
digitalWrite(7,HIGH);
digitalWrite(7,LOW);
但是要实现每隔一秒闪,我们要学会一个延时函数
格式:delay(x),x是以毫秒为单位的(如1秒=1000毫秒/1s=1000ms)
即我们想延时一秒,就这样写delay(1000);
[mw_shl_code=cpp,true]void setup()
{
pinMode(7,OUTPUT);
}
void loop()
{
digitalWrite(7,HIGH);
delay(1000);
digitalWrite(7,LOW);
delay(1000);
}[/mw_shl_code]
程序的意思就是,把7脚初始化设置为输出模式,然后程序不断死循环执行,7脚输出高电平,延时一秒(我们可以理解7脚保持输出高电平保持一秒),LED就会亮一秒;7脚再输出低电平,延时一秒(我们可以理解7脚保持输出低电平一秒),LED就会灭一秒。程序就是不断的执行这个“亮”“灭”“亮”“灭”的过程!
实验到此就结束,你自己可以试下改改delay里面的数字,看下延时是不是发生变化。只要多练就很容易学会arduino,让我们继续加油吧!