当前位置: 首页 > news >正文

Arduino系列教程:点亮一个LED灯

硬件准备:一套Arduino UNO R3或者其他国产替代型号均可,这里我们使用的是微雪电子的R3 PLUS.

打开IDE工具,编辑如下示例程序,并保存。程序示例:

#define PIN 13void 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号引脚通过11k电阻与LED相连,LED另一端接入地回路,所以要点亮LED,只需让D13输出高电平即可;反之就输出低电平;

pinMode(PIN,OUTPUT);设置为输出模式。

digitalWrite(PIN,HIGH);digitalWrite(PIN,LOW);设置管脚输出高电平或低电平。

delay(1000)     延时函数,延时1000ms,1s

编译并下载程序后,可以看到UNO PLUS开发板的USER LED会以2s为周期闪烁。

http://www.dtcms.com/a/322939.html

相关文章:

  • 本地部署网络流量分析工具 ntopng 并实现外部访问( Windows 版本
  • C++高频知识点(十七)
  • 【lucene】HitsThresholdChecker命中阈值检测器
  • istio笔记03--快速上手多集群mesh
  • 本地WSL ubuntu部署whisper api服务
  • NVIDIA Jetson JetPack 全面解析:从硬件到定制镜像
  • 智能情趣设备、爆 bug:可被远程操控。。。
  • 目标检测数据集 - 无人机检测数据集下载「包含COCO、YOLO两种格式」
  • Python 中的 Mixin
  • 二十、MySQL-DQL-条件查询
  • 第八章:终极合体 —— 实现智能一键分组
  • 【Python 工具人快餐 · 第 1 份】
  • 【代码随想录|232.用栈实现队列、225.用队列实现栈、20.有效的括号、1047.删除字符串中的所有相邻重复项】
  • 第05章 排序与分页
  • 模板方法模式:优雅封装算法骨架
  • Python-UV-portry项目管理流程
  • redis8.0.3部署于mac
  • C++ 中的智能指针
  • Python 继承和多态
  • ElaWidgetTools qt5+vs2019编译
  • 1.JavaScript 介绍
  • 基于STM32的智能电表设计与实现
  • 计算机组成原理2-4-1:浮点数的表示
  • Linux 安装 JDK 8u291 教程(jdk-8u291-linux-x64.tar.gz 解压配置详细步骤)​
  • 【c++】探秘Loop机制:C++中优雅的双向数据交互模式
  • 低速CAN 高速CAN是否兼容?
  • 功能测试详解
  • 【面试题】cookie和session 的区别
  • Ubuntu下Nginx的部署后端项目(Java为例),配置Nginx代理
  • 自编教材实操课程学习笔记