Arduino系列教程:点亮一个LED灯
本文介绍了使用Arduino UNO R3开发板实现LED闪烁的示例程序。程序包含setup()和loop()两个必要函数,setup()用于初始化引脚,loop()通过digitalWrite()和delay()控制D13引脚电平变化,使LED以1秒间隔闪烁。文章还解释了Arduino程序的底层结构相当于C/C++中的main()函数循环调用setup()和loop(),并说明了硬件连接原理(D
硬件准备:一套Arduino UNO R3或者其他国产替代型号均可,这里我们使用的是微雪电子的R3 PLUS.
打开IDE工具,编辑如下示例程序,并保存。程序示例:
#define PIN 13 void setup() { // put your setup code here, to run once: pinMode(PIN,OUTPUT); } void loop() { // put your main code here, to run repeatedly: digitalWrite(PIN,HIGH); delay(1000); digitalWrite(PIN,LOW); delay(1000); }
程序分析:
Arduino程序结构由两部分构成。
setup():在Arduino程序运行时首先要调用setup()函数,用于初始化变量、设置针脚的输出/输入类型、配置串口、引入类库文件等等。每次 Arduino 上电或重启后,setup()函数只运行一次。
loop():在setup()函数中初始化和定义变量,然后执行loop()函数。顾名思义,该函数在程序运行过程中不断地循环,根据反馈,相应地改变执行情况。通过该函数动态控制Arduino主控板。
这两个函数在Arduino编程中是必须的,缺一不可。对于习惯使用C/C++的程序员来讲,这个程序结构比较奇葩。其实是Arduino编译器将一些初始化代码集成在了内部,为从来没有接触过编程的初学者提供了方便。
整代码可能是下面的格式:
int main(void) { init(); setup(); for(;;) loop(); return 0; }
系统上电后,首先执行init函数,对硬件进行初始化操作。然后再去执行setup函数,最后重复去执行loop函数。
在UNO PLUS中,D13号引脚通过1个1k电阻与LED相连,LED另一端接入地回路,所以要点亮LED,只需让D13输出高电平即可;反之就输出低电平;
pinMode(PIN,OUTPUT);设置为输出模式。
digitalWrite(PIN,HIGH);digitalWrite(PIN,LOW);设置管脚输出高电平或低电平。
delay(1000) 延时函数,延时1000ms,即1s。
编译并下载程序后,可以看到UNO PLUS开发板的USER LED会以2s为周期闪烁。
更多推荐
所有评论(0)