首页 > 其他分享 >arduino 开发入门

arduino 开发入门

时间:2023-01-28 10:34:25浏览次数:40  
标签:入门 arduino int digitalWrite 开发 time Serial now

官方网址:
https://www.arduino.cc/

IDE 下载
https://www.arduino.cc/en/software
https://downloads.arduino.cc/arduino-ide/arduino-ide_2.0.3_Windows_64bit.zip

 

arduino uno 开发非常简单,也有很多方便的第三方库,很适合儿童学习编程使用,开发的 IDE 基于 Electron 开发,我下载的是 zip 免安装包,第一次,需要用管理员身份运行,会自动安装一些插件包。

 

安装第三方插件

void setup() {  用来执行一次初始化操作,如配置 IO 的模式

}

void loop() {  一直在循环执行,在里面写控制逻辑

}

下面是一个实例,一个开机延时关灯的程序,用到的功能有:1, eeprom 内部存储 2,计时检查 3,按键检测

#include <EEPROM.h>

int ctrl1 = 2;
int key1 = 12;
int led1 = 13;
int time = 0;
int now_time = 0;

void setup() {
  Serial.begin(115200);
  pinMode(key1, INPUT_PULLUP);
  pinMode(led1, OUTPUT);
  pinMode(ctrl1, OUTPUT);
  time = EEPROM.read(0);
  digitalWrite(ctrl1,LOW);
}

void loop() {  
  if(LOW == digitalRead(key1))
  {
    digitalWrite(led1,LOW);
    while(LOW == digitalRead(key1));
    
    time = EEPROM.read(0);
    time = (time >= 20) ? 1: time + 1;
    EEPROM.write(0, time);
    now_time = 0;

    Serial.print("### set time:");
    Serial.println(time);
  }
  else
  {
    digitalWrite(led1,HIGH);
  }
  delay(100);
  now_time++;

  if(now_time > time * 60 * 10)
  {
    digitalWrite(ctrl1,HIGH);
  }
  Serial.print("out time:");
  Serial.print(time * 60 * 10);
  Serial.print(" now time:");
  Serial.println(now_time);
}

 

 

标签:入门,arduino,int,digitalWrite,开发,time,Serial,now
From: https://www.cnblogs.com/ningci/p/17062546.html

相关文章

  • 1.5万字长文:从 C# 入门 Kafka
    目录1,搭建Kafka环境安装docker-compose单节点Kafka的部署Kafka集群的部署2,Kafka概念基本概念关于Kafka脚本工具主题管理使用C#创建分区分区与复制生产者消......
  • 算法入门--搜索插入位置
    给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。请必须使用时间复杂度为O(logn)的算法。 ......
  • 转义字符在前端开发中的详细介绍
    说起转义字符,大家最先想到的肯定是使用反斜杠,这也是我们最常见的,很多编程语言都支持。转义字符从字面上讲,就是能够转变字符原本的意义,得到新的字符。常用在特殊字符的显示......
  • Python入门之转义符
    """转义符:改变原始字符含义的特殊符号"""#不支持所见即所得name="黎二狗"name='黎二狗'#可见即所得name='''黎二狗'''name="""黎......
  • python入门之str/ord/chr
    """字符串(str):由一系列字符组成的不可变系列容器,存储的是字符的编码值。编码:1.字节byte:计算机最小存储单位,等于8位bit。(bitBKBMBGT)2.字符:单个的数......
  • 第25章 web层开发-用户接口开发
    目录1表单验证的初始化2自定义mobile验证器3登录逻辑完善4session机制在微服务下的问题5jsonwebtoken的认证机制6集成jwt到gin中7给url添加登录权限验证8如何解......
  • 230127_50_SpringBoot入门
    5.页面国际化:网页中文和英文相互转换修改默认编码为UTF-8loginlogin.tip=请登录login.password=密码login.remember记住我login.username=用户名login.btn=登......
  • 使用provisio-maven-plugin+ airlift launcher 开发类似trino 的运行包
    如果运行过trino或者presto会发现比较方便,配置放的特别清晰,而且包含了方便的cli工具,实际上trino或者presto内部也是基于了provisio-maven-plugin+airliftlauncher......
  • ChatGPT开发实战
    1.概述前段时间使用体验了ChatGPT的用法,感受到ChatGPT的强大,通过搜索关键字或者输入自己的意图,能够快速得到自己想要的信息和结果。今天笔者将深挖一下ChatGPT,给大家介绍......
  • Python入门笔记
    Python入门笔记Nowisbetterthannever.Althoughneverisoftenbetterthanrightnow.—————TheZenofPython,byTimPeters目录Python入门笔记1.前言py......