版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、四,Arduino开发平台,1,Arduino开发平台,2,Arduino开发平台介绍,1. 什么是Arduino? Arduino项目起源于意大利,该名字在意大利是男性用名,音译为“阿尔杜伊诺”,意思为“强壮的朋友” 。Arduino的出现并不是偶然,Arduino最初是为一些非电子工程专业的学生设计的。设计者最初为了寻求一个廉价好用的微控制器开发板从而决定自己动手制作开发板,Arduino一经推出,因其开源、廉价、简单易懂的特性迅速受到了广大电子迷的喜爱和推崇。几乎任何人,即便不懂电脑编程,利用这个开发板也能用Arduino做出炫酷有趣的东西,比如对感测器探测做出一些回应、闪烁灯光、控制马
2、达等。,3,Arduino开发平台介绍,1. 什么是Arduino? Arduino应用(视频),4,Arduino开发平台介绍,Arduino是一块基于开放原始代码的Simple i/o平台,并且具有开发语言和开发环境都很简单、易理解的特点。让您可以快速使用Arduino做出有趣的东西。 它是一个能够用来感应和控制现实物理世界的一套工具。 它由一个基于单片机并且开放源码的硬件平台,和一套为Arduino板编写程序的开发环境组成。,5,Arduino开发平台介绍,Arduino是一个加载了微控制器的电路板,更是一个包含了硬件和软件的开发平台。,将程序下载到主板,6,Arduino开发平台介绍,
3、Arduino硬件是一块完整的电路板,包含一块微控制器IC,一组排母用于连接到其它电路、若干个稳压器IC用于给整个电路提供合适的电源,一个USB接口用于连接计算机。,7,Arduino开发平台介绍,Arduino软件是一个编程的开发环境。这个软件包含一个文本编辑器,可以在文本编辑编辑器中编写并修改程序,软件还包含一个自动上传器,可以将编写完成的程序发送到Arduino开发板。,8,Arduino开发平台介绍,Arduino开发板上需要关注的重点:,1. 核心微控制器:Arduino Uno使用的是Atmel AVR ATmega328P微控制器。,9,Arduino开发平台介绍,Arduino
4、开发板上需要关注的重点:,2. 外部连接排母。与外部交互的接口。Uno一共有28个。 分成三组: (1)电源 (2)模拟输入 (3)数字输入/输出,10,Arduino开发平台介绍,Arduino开发板上需要关注的重点:,3. USB接口。 三个重要功能: (1)程序上传 (2)程序调试(Debug) (3)临时供电,11,Arduino开发平台介绍,Arduino开发板上需要关注的重点:,4. 可用内存。 (1) Flash内存:用于写入和保存数据,ATmega328提供32K Flash内存,其中0.5K用于保存特殊程序Bootloader。 (2)静态RAM:运行时临时储存数据。大小为2
5、K。RAM中的数据掉电之后丢失。 (3)EEPROM(电可擦可编程只读存储器):用来保存程序的额外数据,如数学公式的值,或者Arduino读取到的传感器读数。掉电之后,它储存的数据不会丢失。,12,Arduino开发平台介绍,Arduino开发板上需要关注的重点:,5. Arduino工作速度。 所有的微控制器,包括Arduino,都使用一个系统时钟产生的脉冲来进行工作。大部分Arduino的工作速度为16MHz,也就是说每秒能处理1600万条指令。,13,Arduino开发平台,14,Arduino开发基础操作,2.1搭建开发环境,2.1.1 交叉编译: 就是在一个平台上生成另一个平台上可以
6、执行的代码。开发人员在电脑上将程序写好,编译生成单片机执行的程序,就是一个交叉编译的过程。很多嵌入式系统需要从一台计算机上编程,将写好的程序下载到开发板中进行测试和实际运行。因此跨平台开发在嵌入式系统软件开发中很常见。因为单片机上不具备直接编程的环境,因此利用Arduino编程需要两台计算机:Arduino单片机和PC。,15,2.1搭建开发环境,2.1.2 在windows上安装IDE 给Arduino编程需要用到IDE(集成开发环境),这是一款免费的软件。在这款软件上编程需要使用Arduino的语言,这是一种解释型语言,写好的程序被称为sketch,编译通过后就可以下载到开发板中。在Ard
7、uino的官方网站上可以下载这款官方设计的软件及源码、教程和文档。,Arduino开发基础操作,16,Arduino开发基础操作,2.1搭建开发环境,2.1.2 在windows上安装IDE(注意USB驱动,Java Framework,查看端口,选择主板类型),17,Arduino开发基础操作,2.1搭建开发环境,2.1.2 在windows上安装IDE,18,Arduino开发基础操作,2.2 常用的Arduino 第三方软件介绍,2.2.1 图形化编程软件ArduBlock,19,Arduino开发基础操作,2.2 常用的Arduino 第三方软件介绍,2.2.2 Arduino 仿真软
8、件Virtual breadboard,20,Arduino开发基础操作,2.2 常用的Arduino 第三方软件介绍,2.2.2 Arduino 仿真软件Virtual breadboard,Virtual breadboard 是一款专门的Arduino 仿真软件,简称VBB,中文名为“虚拟面包板”。这款软件主要通过单片机实现嵌入式软件的模拟和开发环境,它不但包括了所有Arduino 的样例电路,可以实现对面包板电路的设计和布置,非常直观地显示出面包板电路,还可实现对程序的仿真调试。,21,Arduino开发基础操作,2.2 常用的Arduino 第三方软件介绍,2.2.2 Arduino
9、 仿真软件Virtual breadboard,VBB 可以模拟Arduino 连接各种电子模块,例如液晶屏、舵机、逻辑数字电路、各种传感器以及其他的输入/输出设备。这些部件都可以直接使用,也可以通过组合,设计出更复杂的电路和模块。 使用VBB 可以直观的了解电路设计,能够在设计出原型后快速实现。而且虚拟面板具有可视性和模拟交互效果,可以实时地在软件上看到LED、LCD 等可视模块的变化,同时可以确保安全,因为不是实物操作不会引起触电或者烧毁芯片等问题。,22,Arduino开发基础操作,2.3 第一个程序,2.3.1 LED闪光灯,编写第一个程序控制开发板上的LED灯闪烁,修改参数调整闪烁时
10、间。(Arduino IDE和blink),23,Arduino开发基础操作,2.3 第一个程序,2.3.1 LED闪光灯程序解析,/* Blink Turns on an LED on for one second, then off for one second, repeatedly. */,注释,并非程序的内容,24,Arduino开发基础操作,2.3 第一个程序,2.3.1 LED闪光灯程序解析,int LEDPin=13; /declare variable,声明变量,25,Arduino开发基础操作,2.3 第一个程序,2.3.1 LED闪光灯程序解析,/ the setup f
11、unction runs once when you press reset or power the board void setup() / initialize digital pin13 as an output. pinMode(LEDPin, OUTPUT); ,设置数字引脚13为输出,INPUT和OUTPUT是 Arduino IDE已经预先定义好的变量,26,Arduino开发基础操作,2.3 第一个程序,2.3.1 LED闪光灯程序解析,/ the loop function runs over and over again forever void loop() digit
12、alWrite(LEDPin, HIGH); /set the led on delay(1000 ) /wait for a second digitalWrite(LEDPin, LOW); /set the led off delay(1000); /wait for a second ,digitalWrite是内建函数,改变数字引脚输出状态是ON还是OFF,它需要两个参数。Delay是内建的延迟函数。,27,Arduino开发平台介绍,2.3.3函数库和程序架构介绍,Arduino 程序的架构大体可分为3 个部分。 (1)声明变量及接口的名称。 (2)setup()。在Arduino
13、 程序运行时首先要调用setup()函数,用于初始化变量、设置针脚的输出/输入类型、配置串口、引入类库文件等等。每次Arduino 上电或重启后,setup()函数只运行一次。 (3)loop()。在setup()函数中初始化和定义变量,然后执行loop()函数。顾名思义,该函数在程序运行过程中不断地循环,根据反馈,相应地改变执行情况。通过该函数动态控制Arduino 主控板。,28,Arduino开发平台,29,Arduino开发实例,3 用Arduino控制一个舵机,3.1 舵机基本工作原理,舵机是一种位置伺服的驱动器,主要是由外壳、电路板、无核心马达、齿轮与位置检测器所构成。其工作原理是
14、由单片机发出信号给舵机,与舵机内部的基准信号比较,获得电压差输出,驱动无核心马达开始转动,透过减速齿轮将动力传至摆臂,同时由位置检测器送回信号,判断是否已经到达定位,此过程中电机通过级联减速齿轮带动电位器旋转,使得电压差为0,电机停止转动。舵适用于那些需要角度不断变化并可以保持的控制系统。,30,Arduino开发实例,Arduino开发板上需要关注的重点:,1. 核心微控制器:Arduino Uno使用的是Atmel AVR ATmega328P微控制器。,31,Arduino开发实例,3.1 舵机有很多规格,但所有的舵机都有外接三根线,分别用棕、红、橙三种颜色进行区分,由于舵机品牌不同,颜
15、色也会有所差异,棕色为接地线,红色为电源正极线,橙色为信号线。,32,Arduino开发实例,3.1舵机的转动的角度是通过调节PWM(脉冲宽度调制)信号的占空比来实现的,由于舵机牌子不同,对于同一信号,不同牌子的舵机旋转的角度也会有所不同。,33,Arduino开发实例,34,Arduino开发实例,这是Sketch源码: #include Servo duoji; void setup() duoji.attach(9); ,35,Arduino开发实例,void loop() duoji.write(90); delay(2000); duoji.write(180); delay(200
16、0); duoji.write(0); delay(2000); ,36,Arduino开发实例,Sketch分析:,这个Sketch精悍,它的工作原理如下:,#include ,Sketch第一行指向Arduino的一个库文件,Servo库文件提供了专门用于操作舵机的指令集。库文件可以极大的简化编程任务。,37,Arduino开发实例,Sketch分析:,这个Sketch精悍,它的工作原理如下:,Servo duoji;,使用Servo类创建一个对象duoji.编程语言中,类是指一个封装了数据的封包,包含了对这个数据进行处理的各种机制。(举例),38,Arduino开发实例,Sketch分析:,这个Sketch精悍,它的工作原理如下:,void
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 土石方工程中介协议书范本
- 模具存放与管理协议
- 个人轿车租车协议范本
- 金融英语口语课程设计
- 官方家具租赁合同样本
- 建筑安装工程技术咨询协议模板
- 2025年四川省新高考八省适应性联考模拟演练(二)历史试卷(含答案详解)
- 2024学校合作协议书范本
- 商场卫生维护协议
- 行业内部战略合作伙伴协议
- 乡村振兴战略试题和答案(精简100题)
- 供水运营管理实施方案(4篇)
- 水电站基本构造原理与类型ppt版(共67)
- 秦朝统一PPT课件教学
- 2022-2023学年 选择性必修2 浙科版 人类与环境章末核心素养整合 课件(15张)
- 《民族团结》- 完整版课件
- 医院 交班站位图
- 修改病句(句子成分讲解)课件
- 2021年江苏交通控股有限公司校园招聘笔试试题及答案解析
- 第七章 森林植被恢复与重建理论
- 室间隔缺损护理查房-课件
评论
0/150
提交评论