Arduino程序设计基础

Arduino程序设计基础

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

  Arduino不仅仅是全球流行的开源硬件,也是一个优秀的硬件开发平台,更是硬件开发的趋势。Arduino简单的开发方式使得开发者更关注于创意与实现,更快地完成自己的项目开发,大大节约学习的成本,缩短开发的周期。

  《Arduino程序设计基础(第2版)》是作者几年间开发Arduino的经验总结,纯干货分享。本书针对大学教育编写,体系结构清晰,开发细节完善,适合初学者学习,亦可以用于专业开发者查阅。

内容简介

  Arduino不仅仅是全球的开源硬件,也是一个优秀的硬件开发平台,更是硬件开发的趋势。Arduino简单的开发方式使得开发者更关注于创意与实现,更快地完成自己的项目开发,大大节约学习的成本,缩短开发的周期。

  《Arduino程序设计基础(第2版)》是作者几年间开发Arduino的经验总结,纯干货分享。本书针对大学教育编写,体系结构清晰,开发细节完善,适合初学者学习,亦可以用于专业开发者查阅。

作者简介

  《Arduino程序设计基础(第2版)》涵盖Arduino基础知识及高级应用,中途穿插简单项目制作,用于巩固知识与扩展提高,同时提供常用的API参考,以便读者实践时查阅。第2版中,作者修正了之第1版的纰漏,并根据Arduino近年来的发展,更新了部分内容,重写了部分章节,也融入了更多作者对Arduino开发的思考。

  本书主要针对本科生及研究生阶段的Arduino教学实验进行编写,亦适用于相关开发人员及入门者学习。

章节目录

第1章 初识Arduino

1.1什么是Arduino

1.2 Arduino的由来

1.3为什么使用Arduino作为开发平台

1.4 Arduino硬件——选择一款适合自己的Arduino控制器

1.4.1认识不同型号的Arduino控制器

1.4.2众多的Arduino外围模块

1.4.3从Arduino UNO开始

1.5 Arduino软件

1.5.1下载配置Arduino开发环境

1.5.2认识Arduino IDE

1.5.3安装Arduino驱动程序

1.6 Blink——Arduino的Hello World!

第2章 基础篇

2.1 Arduino语言及程序结构

2.1.1 Arduino语言

2.1.2 Arduino程序结构

2.2 C/C语言基础

2.2.1数据类型

2.2.2运算符

2.2.3表达式

2.2.4数组

2.2.5字符串

2.2.6注释

2.2.7用流程图表示程序

2.2.8顺序结构

2.2.9选择结构

2.2.10循环结构

2.3电子元件和Arduino扩展模块

2.4传感器扩展板的使用

2.5 Arduino I/O的简单控制

2.5.1数字I/O的使用

2.5.2项目:人体感应灯(继电器模块与数字传感器)

2.5.3模拟I/O的使用

2.5.4项目:电子温度计

2.5.5数字传感器与模拟传感器的使用

2.6与计算机交流——串口的使用

2.6.1串口输出

2.6.2串口输入

2.6.3实验:串口控制开关灯

2.7时间控制函数

2.7.1运行时间函数

2.7.2延时函数

第3章I/O口高级应用

3.1调声函数

3.2项目:简易电子琴

3.3脉冲宽度测量函数及超声波测距

3.3.1脉冲宽度测量函数

3.3.2超声波测距

3.4设置ADC参考电压

3.5外部中断

3.5.1外部中断的使用

3.5.2实验:外部中断触发蜂鸣器报警

第4章 使用和编写类库

4.1编写并使用函数,提高程序的可读性

4.2使用Arduino类库

4.3编写Arduino类库

4.3.1编写头文件

4.3.2预处理命令

4.3.3宏定义

4.3.4文件包含

4.3.5条件编译

4.3.6版本兼容

4.3.7编写.cpp文件

4.3.8关键字高亮显示

4.3.9建立示例程序

4.4类库优化与发布

第5章 通信篇

5.1硬件串口通信——HardwareSerial类库的使用

5.1.1 HardwareSerial类库成员函数

5.1.2 print()和write()输出方式的差异

5.1.3 read()和peek()输入方式的差异

5.1.4串口读取字符串

5.1.5串口事件

5.1.6串口缓冲区

5.1.7实验:串口控制RGB LED调光

5.1.8更好的串口监视器——串口调试助手

5.2软件模拟串口通信——SoftwareSerial类库的使用

5.2.1 SoftwareSerial类库的局限性

5.2.2 SoftwareSerial类库成员函数

5.2.3建立一个软串口通信

5.2.4实验:Arduino间的串口通信

5.2.5同时使用多个软串口

5.3 IIC总线的使用——Wire类库的使用

5.3.1 IIC主机、从机与引脚

5.3.2 Wire类库成员函数

5.3.3 IIC连接方法

5.3.4主机写数据,从机接收数据

5.3.5从机发送数据,主机读取数据

5.4 SPI总线的使用——SPI类库的使用

5.4.1 SPI引脚

5.4.2 SPI总线上的从设备选择

5.4.3 SPI类库成员函数

5.4.4 SPI总线上的数据发送与接收

5.4.5实验:使用数字电位器AD5206

5.4.6软件模拟SPI通信

5.4.7实验:使用74HC595扩展I/O口

第6章 存储篇

6.1断电也能保存数据——EEPROM类库的使用

6.1.1 EEPROM类库成员函数

6.1.2写入操作

6.1.3读取操作

6.1.4清除操作

6.1.5存储各类型数据到EEPROM

6.2保存大量数据——SD卡类库的使用

6.2.1格式化SD卡

6.2.2 SD卡类库成员函数

6.2.3使用SD卡读/写模块

6.2.4创建文件

6.2.5删除文件

6.2.6写文件

6.2.7读文件

6.3项目:SD卡环境数据记录器

6.3.1 DHT11温湿度检测模块的使用

6.3.2硬件连接方法

6.3.3温湿度记录器

6.3.4在Excel中分析数据

第7章 无线通信篇——红外遥控

7.1 IRremote类库成员函数

7.2红外接收

7.3红外发射

7.4实验:遥控家电设备

第8章LCD显示篇

8.1 1602 LCD的使用——LiquidCrystal类库的使用

8.1.1将1602 LCD与Arduino连接

8.1.2 1602 LCD相关参数

8.1.3 LiquidCrystal类库成员函数

8.1.4实验:“hello,world!”

8.1.5实验:将串口输入数据显示到1602 LCD上

8.1.6实验:显示滚动效果

8.1.7实验:显示自定义字符

8.2项目:制作电子时钟

8.2.1 DS1307时钟模块的使用

8.2.2电子时钟

8.3图形显示器的使用——u8glib类库的使用

8.3.1使用MINI12864显示屏

8.3.2使用其他图形液晶显示器

8.3.3 u8glib程序结构

8.3.4纯文本显示

8.3.5数据显示

8.3.6实验:绘制图形

8.3.7实验:显示图片——位图取模

第9章USB类库的使用

9.1 USB设备模拟相关函数

9.1.1 USB鼠标类的成员函数

9.1.2 USB键盘类的成员函数

9.2模拟键盘输入信息

9.2.1 Arduino Leonardo在模拟USB设备后,无法正常下载程序

9.2.2模拟键盘组合按键

9.3实验:使用摇杆模块控制计算机鼠标

9.4项目:PPT播放遥控器

第10章Ethernet类库的使用

10.1 Ethernet相关硬件介绍

10.2 Ethernet类库

10.2.1 Ethernet 类

10.2.2 IPAddress 类

10.2.3 EthernetServer类

10.2.4 EthernetClient类

10.3 Ethernet的初始化

10.3.1自定义IP地址

10.3.2 DHCP获取IP地址

10.4通过Telnet建立简易聊天室

10.4.1建立Arduino Telnet聊天服务器

10.4.2 Windows Telnet客户端的使用

10.5 Ethernet与Web应用

10.5.1 HTTP协议简介

10.5.2 HTTP响应

10.5.3网页客户端

10.5.4网页服务器

10.6 UDP通信

10.6.1 EthernetUDP类

10.6.2使用UDP收/发数据

10.7项目:网页控制Arduino

附录

A.1使用专业IDE编写Arduino项目

A.2常见问题及解决方法

A.3 Arduino Leonardo手册

A.4 Arduino Due手册

A.5 ASCII码对照表

A.6串口通信可用的config配置

A.7 USB键盘库支持的键盘功能按键列表

A.8常见Arduino型号的参数比较表

后记

参考文献

Arduino程序设计基础是2015年由北京航空航天大学出版社出版,作者陈吕洲。

得书感谢您对《Arduino程序设计基础》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
JavaScript程序设计基础教程 电子书
JavaScript是目前**流行的网页前端开发技术之一。本书由浅入深、循序渐进地介绍了使用JavaScript开发网页前端应用的基础知识和技术技能。全书分为3篇。第1篇是JavaScript语法基础,包括JavaScript简介、基本语法、数据类型、控制语句、函数与数组等。第2篇是JavaScript面向对象基础,包括JavaScript面向对象编程、屏幕和浏览器对象、文档对象、窗口对象、历史地
Python程序设计基础教程 电子书
本书以全国计算机等级考试Python大纲为基准进行内容编排,共分为10章,内容包括Python概述、语法基础、程序控制结构、数据结构、函数与模块、面向对象程序设计、编程规范、错误和异常、文件操作及Python第三方库。本书适合作为普通高等院校相关专业的Python程序设计的教材和参考资料,也可作为全国计算机等级考试的培训材料。
C#程序设计基础与实践 电子书
本书以C#语言为载体,系统地讲解了算法的概念、程序设计的基本思想,以及常用的程序设计方法。本书的主要内容包括:程序设计基础知识与C#程序设计的一般方法;算法的概念及应用;数据类型的概念及C#中的常用数据类型;类和对象的概念及应用;用户界面设计的一般方法和技能;I/O流与数据文件的概念及应用。
C++程序设计基础教程 电子书
《C++程序设计基础教程》利用通俗易懂的语言以及大量浅显易懂的典型实例,循序渐进地介绍C++程序设计的基础知识与编程方法,将C++程序设计的难点、要点分层次、分阶段地逐步展示出来,十分易学易懂。全书共分10章,包括:C++简介、C++编程基础、函数及变量的作用域、数组、结构体和简单链表、面向对象的程序设计、继承与多态性、友元函数与运算符重载、模板和异常处理、输入/输出流。
Arduino创意机器人入门 电子书
机器人教育融机械、传感与控制等内容为一体,让学生在手脑并用解决实际问题的过程中,有效地提高逻辑思维能力、判断能力、动手能力和创新能力,是实施素质教育的一个重要平台。作为面向中小学的选修课程,《Arduino创意机器人入门》设计了大量需要学生动手实践的任务或者实验,引导学生在玩中学、做中学,由浅入深地理解和掌握机器人技术。《Arduino创意机器人入门》课程共22课时,除绪论外,分为智能LED、智能