Arduino嵌入式系统的开发与应用_第1页
Arduino嵌入式系统的开发与应用_第2页
Arduino嵌入式系统的开发与应用_第3页
Arduino嵌入式系统的开发与应用_第4页
Arduino嵌入式系统的开发与应用_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目录摘要:11.Arduino简述21.1Arduino嵌入式系统的概念41.2 Arduino功能特点51.3基本结构82.Arduino嵌入式系统的应用实例14-基于Arduino的简易亮光报警器的设计与实现.142.1ATmega单片机152.2光敏电阻介绍152.3 工作原理162.4设计与实现162.4.1 实验器件162.4.2 实验连线162.4.3 实验原理172.4.4 下载程序182.4.5 功能验证192.4.6 程序代码192.5arduino的应用领域212.6结语253.Arduino的现状与未来26参考文献:28摘要:在2011年Google I/O开发者大会,Google发布了基于Arduino的Android Open Accessory标准和ADK工具, 同年谷歌推出了与安卓与之对应的物联网平台arduino(安e乐),大家对Arduino的前景十分看好。国内关注Arduino的人越来越多。Arduino具有丰富的接口,简便的编程环境,极大的自由度,可拓展性能非常高, 没有复杂的单片机底层代码,没有难懂的汇编,只是简单而实用的函数,它必将引领一个新的时代!Arduino是目前较为流行的电子互动平台,基于单片机系统开发,具有使用简单、功能多样、价格低廉等优点, 广泛应用于电子系统设计和互动产品开发方面。本文详细介绍了Arduino 的功能特点、基本结构,并通过“基于Arduino的简易亮光报警器的设计与实现”的应用给出了具体的使用方法。关键词: 电子设计; 控制电路; Arduino; LED;报警器Abstract: Google I/O developer conference in 2011, Google released its Android based on the Arduino Open standard Accessory and ADK tools, in the same year Google launched with Android and the matching of the Internet of things platform Arduino (e), of the Arduino prospects look good. Domestic more and more people pay attention to the Arduino. Arduino has rich interface, simple programming environment, great freedom, scalable performance is very high, there are no complicated SCM underlying code, not difficult to assembly, only simple and practical function, it will lead a new era! The Arduino is currently more popular electronic interactive platform, based on the single-chip microcomputer system development, has the use of simple, functional diversity, price is low wait for an advantage, is widely applied to electronic system design and interactive product development. This paper introduces in detail the functions and characteristics of the Arduino, basic structure, and through the design and implementation of a simple light alarm based on the Arduino application gives the specific method of use.Key words: electronic design; Control circuit; The Arduino. The LED; alarm1.Arduino简述 图:arduino商标logo:最常见的一种Arduino实物图片一种常见的Arduino实物图片:Arduino Uno一种常见的Arduino实物图片:Arduino Mega 2560一种常见的Arduino实物图片:Arduino Nano1.1Arduino嵌入式系统的概念 Arduino是2005年由米兰交互设计学院的两位教师David Cuartielles和Massimo Banzi联合创建,是一块基于开放原始代码的Simple I/O平台,该平台由两部分组成:硬件(包括微处理器、电路板等)和软件(编程接口和语言)。平台的两部分都是开源的,如果需要,可以下载Arduino的图表、购买需要的所有独立部件、切割电路板并制作一个电路板。Arduino具有类似java、C语言的开发环境。可以快速使用Arduino语言与Flash或Processing等软件完成互动作品。Arduino能够使用开发完成的电子元件,如Switch、Sensors或其它控制器、LED、步进电机或其它输入/输出装置,同时,Arduino也可以成为独立与软件沟通的平台,如flash、Processing、Max/MSP或其它互动软件。我们可以将Arduino与大家熟知的51单片机开发系统放在一起来对比理解,就如计算机系统中Linux系统之于Windows系统的对照。Arduino可以被用来开发能够独立运行并具备一定互动性的电子作品,也可以被用来开发与PC相连接的外围装置,目前较广泛地应用于欧美、日本等国家的电子设计及互动艺术设计领域。 MIT(美国麻省理工学院)的Neil Gershenfeld教授提出了一个个人制造的概念:电脑主机从占地百十亩、重量几十吨到小得一个桌上能摆好几个,这个桌面革命没用几十年,在不久的未 来,自己用电脑芯片做小玩意将是下一个桌面革命。他判断那些制造昂贵且具有巨型电脑主机的专业工具,也会像当年几十吨的主机渐进到当今几公斤在这之后世界各地出现不少在这个理念下设立的FAB LAB,除此之外也有很多人也早已经在自家车库动手改造电脑、写程序、装配电子元件和机械结构,开始个人制造的尝试。 由个人制造的电脑设备,跟个人电脑的最大不同在于,它可以是任何你希望的形状,有着为你量身定做的功能。它不再是全功能的设备,只为处理某件对于我们特别重要的事项而诞生,甚至它不再被叫做电脑,而是折纸、橡皮泥、蜡笔。1.2 Arduino功能特点Arduino在开发之初设计了开源开放的平台,便于对其进行二次开发。Arduino的主要功能特点如下:1)开放源代码的电路图设计。程序开发接口免费下载,也可依需求自己修改。2)使用低价格的微处理控制器(ATmega8或ATmega 128)。可以采用USB接口供电,不需外接电源,也可以使用外部9VDC输入。3)支持ISP线上烧入器,将Bootloader固件烧入芯片。Arduino控制器内带Bootloader程序,是系统上电后运行的第一段代码,就好比PC机BIOS中的程序,启动就进行自检,配置端口等等,当然,单片机是靠烧写熔丝位来设定上电从boot区启动的,使用这个程序就可以直接把从串口发来的程序存放到flash区中。所以,使用Arduino编译环境下载程序时,就先让单片机复位,启动Bootloader程序引导串口发过来的程序顺利写入flash区中,flash可以重复烧写,因此想更新软件非常方便。有了Bootloader之后,可以通过串口或者USB to RS232线更新固件。4)可依据官方提供的PCB和SCH电路图,简化Arduino模组,完成独立运作的微处理控制。5)可简单地与传感器,各式各样的电子元件连接,如红外线、超音波、热敏电阻、光敏电阻、伺服马达等。下面是其中一些的实物图片光敏传感器 电机驱动板 蓝牙模块霍尔传感器烟雾传感器6)支持多样的互动程序,如Flash,Max/MSP,VVVV,Pure Data,C,Processin等。使用低价格的微处理控制器。7)应用方面,利用Arduino,突破以往只能使用鼠标、键盘、CCD等输入的装置的互动内容,可以更简单地达成单人或多人游戏互动。1.3基本结构Arduino系统针对不同的应用环境还开发了不同的版本,文中以“ArduinoDuemilanove”版本为例介绍,该版本于2009年开发,基于ATmega328微控制器板,能自动选择何种供电,直接将它用USB线连上计算机或者用一个电源适配器给它供电,就可以开始使用。Arduino Duemilanove的外部结构如下图所示。Arduino外部结构图实物图片Arduino Duemilanove的结构包括以下几个部分:1)1个9V DC输入,为Arduino板提供外部电源输出,使Arduino控制板具有能够驱动舵机等大功率外部设备的能力; 2)1个USB口,通过该口连接到计算机,由Arduino的IDE将用户编写好的控制程序上传到控制板中,同时还可以通过该口为电路板供电,驱动小功率的外部设备;3)14个数字输入/输出端,其中端口0(RX)和1(TX)分别连接主控芯片的串行引脚,用来接收和发送TTL串行数据。其中端口2、3可以接收外部信号,实现外部中断功能;端口3、5、6、9、10、11作为PWM端口,可用于电机PWM调速或音乐播放;端口10(SS)、11(MOSI)、12(MISO)和13(SCK)在SPI模块库的支持下,可以提供SPI通信模式;端口13内部连接了一个LED指示灯,随着13脚上电平的高低变化,实现开启和关闭;4)6个模拟输入/输出端,其中端口4(SDA)和端口5(SCL)端口可以实现I2C通信;5)1个5VDC输出和1个3.3VDC输出,可为其它电路提高3.3 V和5 V直流电源;6)1个复位接口。Arduino系统是基于单片机开发的,并且大量应用通用和标准的电子元器件,包括硬件和软件在内的整个设计,代码均采用开源方式发布,因此采购的成本较低,在各种电子制作竞赛、电子艺术品创意设计等越来越多地使用Arduino作为开发平台。3应用Arduino系统在电子设计等方面应用较多,本文以简单的LEO控制为例,说明Arduino系统的使用。LEO控制系统中,采用开关S控制LED的亮灭,设开关S闭合时,LED发光,S断开时,LED熄灭。因此,系统设计时采用数字输入/输出口的两个引脚分别进行LED和S开关的连接,电路如下图所示。LED控制电路原理图Arduino语言是建立在C/C+基础上的,其实也就是基础的C语言,Arduno语言将AVR单片机(微控制器)相关的一些参数设置模块化,包括EEPROM、以太网、LED矩阵、舵机、步进和TWI/I2C控制程序库,不需要用户直接处理底层系统,可以提高应用程序的开发效率。流程如下图所示。Arduino语言是以setup()开头,loop()作为主体的一个程序构架。将编写好的控制代码通过Arduino的IDE上传到控制板之后,关闭或者打开开关S,便会观察到LED的亮灭情况。2.Arduino嵌入式系统的应用实例-基于Arduino的简易亮光报警器的设计与实现.下面让我们来通过一个实例来体味一下Arduino的开发与应用的特点.我们将完成的课题名字叫做基于Arduino的简易亮光报警器的设计与实现.我们将试图通过该实验探究Arduino及其特色;并对ATmega单片机进行简单介绍;详细地去叙述了光敏电阻的结构和工作原理。阐述了亮光报警器的基本原理和组成,给出了器件清单、连线方法、源程序及程序下载方法。最后指出Arduino应用前景。 Arduino控制器,它的硬件CPU就是AVR, 主要是软件编程环境与ICCAVR和WINAVR不同,Arduino环境里,不需要设置单片机各寄存器,直接用简单的几个类C的函数就可编程,容易上手,是电子爱好者普遍使用的下位机语言。用过AVR单片机的人都知道AVR难学的原因就是需了解众多的寄存器的功能,并且要在软件中小心地设置这些寄存器,而Arduino不需要。在Arduino环境里,可以把单片机内部当成黑匣子,只要知道单片机的引脚作用就行,Arduino语言程序直接控制这些引脚 的输入输出即可,很容易学习使用的。2.1ATmega单片机ATmega单片机属于美国ATMEL公司AVR中 的高档产品,它承袭了AT90所具有的特点, 并在AT90(如AT9058515、AT9058535)的基础 上,增加了更多的接口功能,而且在省电性 能。稳定性、抗干扰性以及灵活性方面考虑 得更加周全和完善。2.2光敏电阻介绍2.2.1 认识光敏电阻光敏电阻又称光电管,常用的制作材 料为硫化镉,另

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论