Arduino项目开发——智能生活pdf/doc/txt格式电子书下载
本站仅展示书籍部分内容
如有任何咨询
请加微信10090337咨询
书名:Arduino项目开发——智能生活pdf/doc/txt格式电子书下载
推荐语:
作者:李永华,彭木根
出版社:清华大学出版社
出版时间:2019-09-01
书籍编号:30616614
ISBN:9787302530572
正文语种:中文
字数:638000
版次:1
所属分类:计算机-程序设计
本书封面贴有清华大学出版社防伪标签,无标签者不得销售。
版权所有,侵权必究。侵权举报电话:010-62782989 13701121933
图书在版编目(CIP)数据
Arduino项目开发:智能生活/李永华,彭木根编著.—北京:清华大学出版社,2019
(清华开发者书库)
ISBN 978-7-302-53057-2
Ⅰ.①A… Ⅱ.①李…②彭… Ⅲ.①单片微型计算机-程序设计 Ⅳ.①TP368.1
中国版本图书馆CIP数据核字(2019)第098358号
责任编辑:赵 凯
封面设计:李召霞
责任校对:白 蕾
责任印制:刘海龙
出版发行:清华大学出版社
网 址:http://www.tup.com.cn,http://www.wqbook.com
地 址:北京清华大学学研大厦A座
邮 编:100084
社总机:010-62770175
邮 购:010-62786544
投稿与读者服务:010-62776969,c-service@tup.tsinghua.edu.cn
质量反馈:010-62772015,zhiliang@tup.tsinghua.edu.cn
课件下载:http://www.tup.com.cn,010-62795954
印装者:三河市君旺印务有限公司
经 销:全国新华书店
开 本:185mm×260mm
印 张:26.25
字 数:638千字
版 次:2019年9月第1版
印 次:2019年9月第1次印刷
定 价:69.00元
产品编号:083918-01
内容简介
本书系统论述了Arduino开源硬件的架构、原理和开发方法,并具体阐述了19个完整的项目设计案例。全书共分20章,内容涉及Arduino项目设计基础、四旋翼飞行器项目设计、宇宙飞船大战小蜜蜂项目设计等。
在编排方式上,全书侧重对创新产品的项目设计过程进行介绍。分别从需求分析、设计与实现等多个角度论述硬件电路、软件设计、传感器和功能模块等,并剖析产品的功能、使用、电路连接和程序代码。为便于读者高效学习,快速掌握Arduino开发方法,本书配套提供项目设计的硬件电路图、程序代码、实现过程中出现的问题及解决方法,可供读者举一反三,二次开发。
本书既可作为高校电子信息类专业“开源硬件设计”“电子系统设计”“创新创业”等课程的教材,也可作为创客及智能硬件爱好者的参考用书,还可作为从事物联网、创新开发和设计专业人员的技术参考书。
作者简介
李永华 现执教于北京邮电大学,拥有超过10年的嵌入式开发经验,目前致力于物联网、云计算与大数据的研究工作。在教学中善于以兴趣为导向,激发学生的创造性;以素质为基础,提高自身教学水平;以科研为手段,促进教学理念的转变。在研发及教学实践中指导学生实现300个创新案例,参与了30余项国家级与企业横向课题的研究工作,在国内外学术期刊及会议发表论文60余篇,申请专利40余项,出版教材10余部。
前言
PREFACE
物联网、智能硬件和大数据技术给社会带来了巨大的冲击,个性化、定制化和智能化的硬件设备成为未来的发展趋势。“中国制造2025”计划、德国的“工业4.0”及美国的“工业互联网”都是将人、数据和机器连接起来,其本质是工业的深度信息化,为未来智能社会的发展提供制造技术基础。
在“大众创业、万众创新”的时代背景下,人才培养方法和模式也应该满足当前的时代需求。编者依据当今信息社会的发展趋势,结合Arduino开源硬件的发展及智能硬件的发展要求,采取激励创新的工程教育方法,培养适应未来“工业4.0”发展的人才。因此,本书试图探索基于创新工程教育的基本方法,并将其提炼为适合我国国情、具有自身特色的创新实践教材,对实际教学中应用智能硬件的创新工程教学经验进行总结,包括具体的创新方法和开发案例,希望对教育教学及工业界有所帮助,起到抛砖引玉的作用。
本书的内容和素材主要来源于编者所在学校近几年承担的教育部和北京市的教育、教学改革项目和成果,也是北京邮电大学信息工程专业的同学们创新产品的设计成果。书中系统地介绍了如何利用Arduino平台进行产品开发,包括相关的设计、实现与产品应用,主要内容包括Arduino设计基础及智能生活案例。
本书的编写也得到了教育部电子信息类专业教学指导委员会、信息工程专业国家第一类、第二类特色专业建设项目、教育部CDIO工程教育模式研究与实践项目、教育部本科教学工程项目、信息工程专业北京市特色专业建设、北京市教育教学改革项目、北京邮电大学教育教学改革项目(2019ZY01)的大力支持。在此一并表示感谢!
由于编者水平有限,书中不妥之处在所难免,衷心希望广大读者多提宝贵意见及具体的整改措施,以便编者进一步修改和完善。
李永华
于北京邮电大学
2019年8月
第1章
Arduino项目设计基础
1.1 开源硬件简介
电子电路是人类社会发展的重要成果,在早期的硬件设计和实现上都是公开的,包括电子设备、电器设备、计算机设备以及各种外围设备的设计原理图,大家认为公开是十分正常的事情,所以,早期公开的设计图并不称为开源。1960年前后,很多公司根据自身利益选择了闭源,由此也就出现了贸易壁垒、技术壁垒、专利版权等问题,不同公司之间也出现了互相起诉的情形。例如,国内外的IT公司之间由于知识产权而诉诸法律,屡见不鲜。虽然这种做法在一定程度上有利于公司自身的利益,但是,不利于小公司或者个体创新者的发展。特别是,在互联网进入Web 2.0的个性化时代背景下,更加需要开放、免费和开源的开发系统。
因此,在“大众创业,万众创新”的时代背景下,Web 2.0时代的开发者思考硬件是否可以重新进行开源。电子爱好者、发烧友及广大的创客一直致力于开源的研究,推动开源的发展,最初从很小的物品发展到现在,已经有3D打印机、开源的单片机系统等。就是说,开源硬件是指与开源软件采取相同的方式,设计各种电子硬件的总称。也就是说,开源硬件是考虑对软件以外的领域进行开源,是开源文化的一部分。开源硬件是可以自由传播硬件设计的各种详细信息,例如,电路图、材料清单和开发板布局数据,通常使用开源软件来驱动开源的硬件系统。本质上,共享逻辑设计、可编程的逻辑元件重构也是一种开源硬件,通过硬件描述语言代码实现电路图共享。硬件描述语言通常用于芯片系统,也用于可编程逻辑阵列或直接用在专用集成电路中,在当时也称之为硬件描述语言模块或IP核。
众所周知,Android就是开源软件之一。开源硬件和开源软件类似,通过开源软件可以更好地理解开源硬件,就是在之前已有硬件的基础之上进行二次开发。二者也有差别,体现在复制成本上,开源软件的成本几乎是零,而开源硬件的复制成本较高。另外,开源硬件延伸着开源软件代码的定义,包括软件、电路原理图、材料清单、设计图等都使用开源许可协议,自由使用分享,完全以开源的方式去授权。避免了以往DIY分享的授权问题。同时,开源硬件把开源软件常用的GPL、CC等协议规范带到硬件分享领域,为开源硬件的发展提供了标准。
1.2 Arduino开源硬件
本节主要介绍Arduino开源硬件的各种开发板和扩展板的使用方法、Arduino开发板的特性以及Arduino开源硬件的总体情况,以便更好地应用Arduino开源硬件进行开发创作。
1.2.1 Arduino开发板
Arduino开发板是基于开放原始代码简化的I/O平台,并且使用类似Java、C/C++语言的开发环境。可以快速使用Arduino语言与Flash或Processing软件,完成各种创新作品。Arduino开发板可以使用各种电子元件,如传感器、显示设备、通信设备、控制设备或其他可用设备。
Arduino开发板也可以独立使用,成为与其他软件沟通的平台,例如,Flash、Processing、Max/MSP、VVVV或其他互动软件。Arduino开发板的种类很多,包括Arduino UNO、YUN、DUE、Leonardo、Tre、Zero、Micro、Esplora、MEGA、MINI、NANO、Fio、Pro以及LilyPad Arduino等。随着开源硬件的发展,将会出现更多的开源产品,下面介绍几种典型的Arduino开发板。
Arduino UNO开发板是Arduino USB接口系列的常用版本,是Arduino平台的参考标准模板,如图1-1所示。Arduino UNO开发板的处理器核心是ATmega328,具有14个数字输入/输出引脚(其中6个可作为PWM输出)、6个模拟输入引脚、1个16MHz晶体振荡器、1个USB接口、1个电源插座、1个ICSP插头和1个复位按钮。
如图1-2所示,Arduino YUN是一款基于ATmega32U4和Atheros AR9331的单片机开发板。Atheros AR9331可以运行基于Linux和OpenWRT的操作系统Linino。这款单片机开发板具有内置的Ethernet、WiFi、1个USB接口、1个Micro插槽、20个数字输入/输出引脚(其中7个可以用于PWM,12个可以用于ADC)、1个Micro USB接口、1个ICSP插头、3个复位开关。
图1-1 Arduino UNO开发板
图1-2 Arduino YUN开发板
如图1-3所示,Arduino DUE是一块基于Atmel SAM3X8E CPU的开发板。它是第一块基于32位ARM核心的Arduino开发板,有54个数字输入/输出引脚(其中12个可用于PWM输出)、12个模拟输入引脚、4个UART硬件串口、84MHz的时钟频率、1个USB OTG接口、2个DAC(模数转换)、2个TWI、1个电源插座、1个SPI接口、1个JTAG接口、1个复位按键和1个擦写按键。
如图1-4所示,为Arduino MFGA 2560开发板也是采用USB接口的核心开发板,它最大的特点就是具有多达54个数字输入/输出引脚,特别适合需要大量输入/输出引脚的设计。Arduino MEGA 2560的处理器核心是ATmega2560,具有54个数字输入/输出引脚(其中16个可作为PWM输出)、16个模拟输入引脚、4个UART接口、1个16MHz晶体振荡器、1个USB接口、1个电源插座、1个ICSP插头和1个复位按钮。Arduino MRGA 2560开发板也能兼容为Arduino UNO设计的扩展板。目前,Arduino MEGA 2560开发板已经发布到第3版,与前两版相比有以下新的特点:
图1-3 Arduino DUE开发板
图1-4 Arduino MEGA 2560开发板
(1)在AREF处增加了两个引脚SDA和SCL,支持I2C接口;增加IOREF和1个预留引脚,以便将来扩展板能够兼容5V和3.3V核心板,改进了复位电路设计;USB接口芯片由ATmega16U2替代了ATmega8U2。
(2)Arduino MEGA 2560开发板可以通过三种方式供电:外部直流电源通过电源插座供电,电池连接电源连接器的GND和VIN引脚供电,USB接口直接供电。而且,它能自动选择供电方式。
电源引脚说明如下:
(1)VIN:当外部直流电源接入电源插座时,可以通过VIN向外部供电,也可以通过此引脚向Arduino MEGA 2560开发板直接供电;VIN供电时将忽略从USB或者其他引脚接入的电源。
(2)5V:通过稳压器或USB的5V电压,为Arduino MEGA 2560开发板上的5V芯片供电。
(3)3.3V:通过稳压器产生的3.3V电压,最大驱动电流为50mA。
(4)GND:接地引脚。
如图1-5所示,Arduino Leonardo是一款基于ATmega32u4的开发板。它有20个数字输入/输出引脚(其中7个可用于PWM输出、12个可用于模拟输入)、1个16MHz晶体振荡器、1个Micro USB连接、1个电源插座、1个ICSP头和1个复位按钮。具有支持微控制器所需的一切功能,只需通过USB电缆将其连至计算机,或者通过电源适配器、电池为其供电即可使用。
Leonardo与先前的所有开发板都不同,ATmega32u4具有内置式USB通信,从而无须二级处理器。这样,除了虚拟(CDC)串行/通信端口,Leonar
....
本站仅展示书籍部分内容
如有任何咨询
请加微信10090337咨询