Arduino学习笔记1---开发环境搭建
主要内容:(一)、 Arduino IDE的下载及安装
(二)、 Arduino IDE的应用
(三)、 Arduino的程序结构
(四)、 Arduino程序的编译及下载
(一)、 Arduino IDE的下载及安装
(1)、 Arduino IDE的下载:到https://www.arduino.cc/en/Main/Software
根据自己的情况,下载对应的版本,如果是windwos就下载windows版本的,苹果就下载Mac版本的,linux的就根据32位或64位选择对应的,如果是树莓派之类的就下载Linux ARM版本的,我的是linux32位的,下载32位linux版本的,具体地址:https://www.arduino.cc/download.php?f=/arduino-nightly-linux32.tar.xz,不同时段和不同网络的速度是不一样的,拼人品吧。是个压缩版本的,只要解压就可以直接使用了。如果你和我一样,使用的是Manjaro Linux,那就直接使用命令:pacman -S arduino直接安装就可以了。
(2)、 Arduino IDE的安装:如果上一步使用的命令安装,可以在菜单“开发”-“Arduino IDE”找到对应的菜单。如果你是下载的解压包,安装其实就是解压,右击解压所到目录即可解压。在执行解压目录中arduino文件即可。
(二)、 Arduino IDE的应用
Arduino的界面包括五个主要部分:菜单栏(文件 编辑 项目 工具 帮助)
工具栏:菜单栏下的图标,有左至右,依次为(验证 上传 新建 打开 保存)
编辑器窗口(主要代码在该窗口完成,默认的如图所示)
消息区(在编辑器窗口区的下面,背景为绿色,主要用来显示当前操作的即时消息,编辑的进度等)
控制台窗口(在消息区的下面,背景为黑色,主要用来显示最近命令报告的消息的详细信息)
任务栏(在控制台窗口区下面,背景为深绿色,主要用来现实代码区的光标信息等)
(三)、 Arduino的程序结构
arduino程序的基本结构如图所示,主要有两个函数组成:
其中:setup()函数中,主要存放一些板子启动后,只执行一次的代码,又叫启动代码,初始化管脚、设置输入输出、设置串口速率等
loop()函数中,主要存放需要反复执行的代码,读取传感器的内容等。
一些变量的声明,通常放置到setup()之前来完成。
下面代码就是一个简单的闪烁灯的代码,代码出自arduino的官方文档具体如下:
int ledPin = ; // LED connected to digital pin 13 void setup()
{
pinMode(ledPin, OUTPUT); // sets the digital pin as output
} void loop()
{
digitalWrite(ledPin, HIGH); // sets the LED on
delay(); // waits for a second
digitalWrite(ledPin, LOW); // sets the LED off
delay(); // waits for a second
}
代码非常简单,大家可以先复制代码到自己的Arduino的代码编辑窗口,保存项目。
(四)、 Arduino程序的编译及下载
在工具菜单栏中,开发板选中Arduino/Genuino Uno
在工具菜单栏中,端口选中含有Genuino Uno的选项,我这里选择/dev/ttyACM)(Arduino/Genuino Uno)
在linux中可能会出现权限问题,请参考http://blog.csdn.net/guochaoxxl/article/details/50447565解决方案解决即可,
点击工具栏的上传图标,控制台窗口就会出现很多信息,看到了如下:
Reading | ################################################## | 100% 0.13s
avrdude: verifying ...
avrdude: 940 bytes of flash verified
avrdude done. Thank you.
IDE已完成编译及上传工作,并且无误,这就是第一个代码了。好好欣赏下吧。
附录内容,以后为了方便,主要使用开源的fritzing来画图, 还算不错把。
Arduino学习笔记1---开发环境搭建的更多相关文章
- Cocos2dx 学习笔记整理----开发环境搭建
最近在学习cocos2dx,预备将学习过程整理成笔记. 需要的工具和环境整理一下: 使用的版本 cocos2dx目前已经出到了v3.1.1,学习和项目的话还是用2.2.3为宜,毕竟不大想做小白鼠,并且 ...
- Flink学习笔记:Flink开发环境搭建
本文为<Flink大数据项目实战>学习笔记,想通过视频系统学习Flink这个最火爆的大数据计算框架的同学,推荐学习课程: Flink大数据项目实战:http://t.cn/EJtKhaz ...
- PHP学习笔记(1) - 开发环境搭建
运行环境:phpstudy 它基本包括运行php应用需要的一切,php. apache.mysql,一键傻瓜安装 装好之后只需要配置虚拟主机和修改host文件就可以支持多站点 下载: http://w ...
- angular2.0学习笔记1.开发环境搭建 (node.js和npm的安装)
开发环境, 1.安装Node.js®和npm, node 6.9.x 和 npm 3.x.x 以上的版本. 更老的版本可能会出现错误,更新的版本则没问题. 控制台窗口中运行命令 node -v 和 n ...
- Hadoop学习笔记(3)——分布式环境搭建
Hadoop学习笔记(3) ——分布式环境搭建 前面,我们已经在单机上把Hadoop运行起来了,但我们知道Hadoop支持分布式的,而它的优点就是在分布上突出的,所以我们得搭个环境模拟一下. 在这里, ...
- Nutch1.7学习笔记:基本环境搭建及使用
Nutch1.7学习笔记:基本环境搭建及使用 作者:雨水,时间:2013-10-31博客地址:http://blog.csdn.net/gobitan 说明:Nutch有两个主版本1.x和2.x,它们 ...
- Django:学习笔记(1)——开发环境配置
Django:学习笔记(1)——开发环境配置 Django的安装与配置 安装Django 首先,我们可以执行python -m django --version命令,查看是否已安装django. 如果 ...
- python学习之python开发环境搭建
Python简介 Python是一种面向对象.解释型计算机程序设计语言.Python语法简洁而清晰,具有丰富和强大的类库等等众多的特性,这是来自百度百科的介绍,在百度百科还能看到它的更详细的介绍信息, ...
- Scala学习1————scala开发环境搭建(windows 10)
Scala开发环境搭建 先讲几点我学习scala的目的或者原因吧: JVM在企业中的霸主地位,Scala也是JVM上的语言,很有可能未来会从Java过度到Scala也不是不可能. 先进的函数式编程和面 ...
随机推荐
- python基础面试题整理---从零开始 每天十题(03)
一.Q:用Python输出一个Fibonacci数列?(斐波那契额数列) A:我们先来看下代码 #!/usr/bin/env python # -*- coding: utf-8 -*- def fi ...
- 前台解析json的方法
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式.同时,JSON是 JavaScript 原生格式,这意 ...
- Spring框架针对dao层的jdbcTemplate操作crud之query查询数据操作 —— 查询表,返回结果为对象的list集合
用JdbcTemplate的方法完成, 查询数据库表,把用户表sw_user所有数据以List<User>集合返回 在JdbcTemplateDemo类中增加查询返回所有对象集合的方法qu ...
- java第九次作业:第九章例题3个
作业1: 例题9.1 制作圆类,根据圆的半径求出周长及面积 package com.swift; //抽象的方法构成类,把属性和方法进行封装 public class Circle { // 两个方面 ...
- CS193p Lecture 8 - Protocols, Blocks and Animation
一.协议(Protocols) 1. 声明协议 @protocol Foo <Xyzzy, NSObject> // ... @optinal // @required //... @en ...
- iOS开发遇见的坑之二:工程文件中插件和自身工程命名冲突
在升级cocoapod后,我重新管理了一下工程,其实也就是把各个类分类进行管理 类似于这样 然后编译就发现不能运行 1.其中一个错误是工程文件缺失,根据提示添加进来进行 2.有一个是pch的相对路径变 ...
- [LUOGU] P2593 [ZJOI2006]超级麻将
f[a][b][c][i]表示考虑到第i个,第i位用了b个,第i-1位用了a个,此时有将/无将(c=1/0)的情况是否可达. 转移分以下几类: 1.调一个将 f[a][b][1][i]|=f[a][b ...
- PHP+Mysql实现分页
我们在项目开发的过程中避免不了使用分页功能,拿php来说,现在市面上有很多大大小小的php框架,当然了分页这种小功能这些框架中都是拿来直接可以用的. 这些框架的分页功能使用都很方便,配置一下分页所需参 ...
- TB平台搭建之二
主要想记录关于debug问题: 一般我会1.定位问题所在位置比如使能信号错误.地址读写错误.数据流pipeline错误.... 2.首先看问题的源头(对应信号)是否还正确,比如出现XX要查看她的第一级 ...
- day20-python之装饰器
1.装饰器 #!/usr/bin/env python # -*- coding:utf-8 -*- import time def cal(l): start_time=time.time() re ...