学习arduino第一课
欢迎使用Markdown编辑器
你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。
什么是arduino?
简单来讲arduino就是通过源代码控制开发板的信号输入输出从而实现对一些电子元件的控制,例如LED灯,蜂鸣器,按键。
arduino程序
首先来讲arduino程序是基于C语言,而实现类似对于LED灯和蜂鸣器的简单控制只需简单C语言知识即可实现。
arduino程序是基于函数的,而在arduino的库有很多函数,我们只需要调用即可。
arduino的程序主体是**setup()函数和loop()**函数以及其它在使用过程中需要构建的函数。
setup()函数
**setup()**函数主要功能是初始化变量,调用库函数,管理引脚等。
loop()函数
**loop()**函数的主要功能是循环的执行函数内的语句,简单来讲就是一个循环。
LED灯实验中用到的库函数
1.pinMode(pin,mode),数字I/O口输入输出定义函数,pin代表数字数字I/O输入输出端的1~13,mode表示输入(INPUT)输出(OUTPUT),例如你想实现从端口6输出信号,则代码是:
pinMode(6,OUTPUT);
2.digitalWrite(pin,vale),数字I/O口电平定义函数,pin同样代表1~13,vale代表HIGH(高电平)或LOW(低电平),对于LED灯来说,HIGH可使灯发光,LOW可使灯熄灭。例如想实现位于端口6的灯亮的代码是:
digitalWrite(6,HIGH);
3.delay(ms),延时函数,单位ms,可实现对命令的延迟,例如,实现亮灯500ms,就是让输出的高电平持续500ms,代码是:
delay(500);
实验一:让LED灯亮出不同样式的效果光
通过对第一节的学习,我们已经会实现控制LED灯亮光的效果了,那么还可以实现其他的吗?当然可以,只要肯大胆的把想法实践出来,一定会出现惊喜的。比如,让一个LED灯亮出求救信号SOS该怎么做呢?
首先,我们要想好怎样让灯亮出…~~~…的信号
我们可以定义一个函数,让它可以发出一个代表S的信号
void style_s(void){
for(int i=1;i<=3;i++){
digitalWrite(6,HIGH);
delay(150);
digitalWrite(6,LOW);
delay(150);
}
}
这个函数可以实现发出信号S
我们再定义一个函数发出信号O
void style_o(void){
for(int i=1;i<=3;i++){
digitalWrite(6,HIGH);
delay(450);
digitalWrite(6,LOW);
delay(150);
}
}
可以实现代码O
最后,调用setup()和loop()函数
void setup(){
pinMode(6,OUTPUT)
}
这样,实现从端口6输出信号
实现循环如下
void loop(){
style_s();
delay(450);
style_o();
delay(450);
style_s();
delay(1000);
}
这样就可以实现每间隔1秒输出一个SOS的信号了。
第一课小结
程序
学过代码的同学都知道,语句中是不能出现任何错误的,有时候哪怕是一个空格都可能导致程序错误,当语句少时我们花一些时间就能检查出来,但是当代码有很多句时,检查起来就相当麻烦,所以我们要从一开始就要养成良好的代码写作习惯,这样才能提高效率。
开发板使用
我们在对于一些小元件的使用时,可能因为太小而不好操作,这个时候就要保持足够的耐心,更加细心才能更好的学习arduino。
附页:SOS代码
void style_s(void){
for (int I=1;I<=3;I++){
digitalWrite(6,HIGH);
delay(150);
digitalWrite(6,LOW);
delay(150);
}
} //输出代码S
void style_o(void){
for (int j=1;j<=3;j++){
digitalWrite(6,HIGH);
delay(450);
digitalWrite(6,LOW);
delay(150);
}
} //输出代码O
void setup(){
pinMode(6,OUTPUT);
}
void loop(){
style_s();
delay(450);
style_o();
delay(450);
style_s();
delay(1000);
}