登入帳戶  | 訂單查詢  | 購物車/收銀台( 0 ) | 在線留言板  | 付款方式  | 聯絡我們  | 運費計算  | 幫助中心 |  加入書簽
會員登入 新註冊 | 新用戶登記
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2023年度TOP分類閱讀雜誌 香港/國際用戶
最新/最熱/最齊全的簡體書網 品種:超過100萬種書,正品正价,放心網購,悭钱省心 送貨:速遞 / EMS,時效:出貨後2-3日

2024年03月出版新書

2024年02月出版新書

2024年01月出版新書

2023年12月出版新書

2023年11月出版新書

2023年10月出版新書

2023年09月出版新書

2023年08月出版新書

2023年07月出版新書

2023年06月出版新書

2023年05月出版新書

2023年04月出版新書

2023年03月出版新書

2023年02月出版新書

『簡體書』面向Arduino用户的树莓派实用指南 物联网应用开发

書城自編碼: 3385595
分類: 簡體書→大陸圖書→計算機/網絡程序設計
作 者: Jim Strickland
國際書號(ISBN): 9787111630876
出版社: 机械工业出版社
出版日期: 2019-07-01


書度/開本: 16开

售價:NT$ 561

我要買

share:

** 我創建的書架 **
未登入.



新書推薦:
正念心理学:全面开启自我觉察与接纳的疗愈之旅
《 正念心理学:全面开启自我觉察与接纳的疗愈之旅 》

售價:NT$ 391.0
车用锂离子动力电池碰撞安全
《 车用锂离子动力电池碰撞安全 》

售價:NT$ 885.0
中国近代史(中国史学大家蒋廷黻典作品)
《 中国近代史(中国史学大家蒋廷黻典作品) 》

售價:NT$ 223.0
先跳了再说: 仓本聪的工作与生活哲学
《 先跳了再说: 仓本聪的工作与生活哲学 》

售價:NT$ 314.0
抗焦虑饮食(赠实践手册)
《 抗焦虑饮食(赠实践手册) 》

售價:NT$ 498.0
生活不是掷骰子:理性决策的贝叶斯思维
《 生活不是掷骰子:理性决策的贝叶斯思维 》

售價:NT$ 386.0
万有引力书系·基辅罗斯:东斯拉夫文明的起源
《 万有引力书系·基辅罗斯:东斯拉夫文明的起源 》

售價:NT$ 661.0
康熙的红票:全球化中的清朝
《 康熙的红票:全球化中的清朝 》

售價:NT$ 437.0

內容簡介:
本书全面介绍了树莓派开发板的配置步骤、开发环境构建和实际应用技术,讲述了在树莓派上采用C++语言和库进行开发的方法,更为难得的是介绍了结合使用Arduino和树莓派的工具和流程。全书共分为13章,第1章为完成书中的项目提供了一份购物清单;第2章~第5章从硬件设置、操作系统安装和管理、树莓派上C++开发的流程和库等方面进行了介绍;第6章~第11章则采用实例的方式介绍了树莓派在多个方面的开发过程;第13章为总结和建议部分。本书适用于有意学习树莓派开发的读者,尤其适合具有Arduino经验的读者快速入门,也可作为STEAM教育的课程设计蓝本。
關於作者:
审校者简介
第1章 采购清单1
1.1 树莓派1
1.1.1 3B+型树莓派1
1.1.2 为何购买3B+型树莓派4
1.1.3 Zero W型树莓派4
1.1.4 为何购买Zero W型树莓派5
1.1.5 适配器6
1.1.6 其他型号的树莓派7
1.2 树莓派的GPIO分线板7
1.3 5V USB微型电源9译者序
前言
作者简介
审校者简介
第1章 采购清单1
1.1 树莓派1
1.1.1 3B+型树莓派1
1.1.2 为何购买3B+型树莓派4
1.1.3 Zero W型树莓派4
1.1.4 为何购买Zero W型树莓派5
1.1.5 适配器6
1.1.6 其他型号的树莓派7
1.2 树莓派的GPIO分线板7
1.3 5V USB微型电源9
1.4 集成电路10
1.4.1 ATmega328P-PU10
1.4.2 16MHz TTL时钟振荡器11
1.4.3 74LVC245A八进制总线收发器12
1.5 LED13
1.5.1 10段光带13
1.5.2 普通LED14
1.6 microSD卡14
1.7 USB闪存设备15
1.8 电阻15
1.9 连接线和面包板16
1.10 微动开关17
1.11 焊接工具和技巧17
1.12 关于供货商18
1.13 关于元器件18
1.14 元器件一览18
第2章 结识树莓派20
2.1 简介20
2.1.1 Windows20
2.1.2 MacOS X20
2.1.3 Linux20
2.2 所需工具21
2.3 硬件设置21
2.3.1 3B+型树莓派21
2.3.2 Zero W型树莓派22
2.3.3 两型树莓派22
2.4 用NOOBS安装Raspbian22
2.4.1 什么是NOOBS22
2.4.2 什么是Raspbian23
2.4.3 格式化microSD卡24
2.4.4 下载NOOBS29
2.4.5 安装NOOBS30
2.5 启动NOOBS32
2.6 排除故障32
2.7 安装Raspbian33
2.8 本章小结36
第3章 Linux基础37
3.1 导航37
3.1.1 桌面37
3.1.2 终端应用程序38
3.1.3 网络浏览器39
3.1.4 桌面的背后39
3.2 重启和关闭树莓派40
3.2.1 在GUI桌面中启动和关闭树莓派40
3.2.2 在终端中启动和关闭树莓派40
3.2.3 命令摘要42
3.3 配置42
3.3.1 树莓派的配置应用程序42
3.3.2 WiFi和网络配置44
3.4 安装和更新软件44
3.4.1 GUI软件安装程序44
3.4.2 apt-get包管理器44
3.5 文件系统导航50
3.5.1 GUI桌面50
3.5.2 终端53
3.5.3 所在何处54
3.5.4 目录中有什么55
3.5.5 创建文件58
3.5.6 删除文件59
3.5.7 创建目录60
3.5.8 删除目录和文件61
3.5.9 小结63
3.6 权限和特权63
3.6.1 用户和组64
3.6.2 root和sudo67
3.7 内存和驱动程序70
3.7.1 内存70
3.7.2 驱动程序70
3.8 术语71
3.9 本章小结72
第4章 结识C++73
4.1 Arduino包的内容73
4.1.1 在树莓派上安装Arduino73
4.1.2 IDE76
4.1.3 编译器76
4.1.4 函数库78
4.1.5 上传程序79
4.2 结识Geany79
4.3 设置Geany82
4.4 编写第一个C++程序87
4.4.1 C++编程方式87
4.4.2 TicTac程序90
4.5 本章小结109
第5章 结识WiringPi110
5.1 什么是WiringPi110
5.2 WiringPi函数110
5.2.1 设置函数111
5.2.2 接线函数111
5.2.3 线程函数113
5.2.4 中断函数114
5.2.5 定时函数115
5.3 GPIO命令行工具117
5.4 GPIO组和权限118
5.5 在Geany中调用WiringPi119
5.6 搭建拉森(纪念)扫描器119
5.6.1 所需工具120
5.6.2 欧姆定律121
5.6.3 电路连接示意122
5.6.4 电路搭建122
5.6.5 项目123
5.6.6 程序124
5.6.7 首次运行程序126
5.6.8 代码127
5.7 本章小结129
第6章 输入和输出130
6.1 所需工具130
6.2 修改后的电路130
6.2.1 微动开关130
6.2.2 上拉电阻和下拉电阻132
6.3 Button_Polled项目132
6.3.1 项目概述132
6.3.2 修改代码133
6.3.3 代码134
6.4 Button_Interrupt项目137
6.4.1 项目概述137
6.4.2 修改代码138
6.4.3 代码141
6.5 本章小结144
第7章 一台树莓派和多个进程145
7.1 进程145
7.2 设计多进程拉森扫描器146
7.2.1 fork命令147
7.2.2 控制信号147
7.2.3 修改代码148
7.3 代码152
7.4 运行程序157
7.5 Linux中的进程158
7.6 本章小结160
第8章 单进程和多线程161
8.1 进程与内存161
8.1.1 内核空间162
8.1.2 堆栈162
8.1.3 内存映射段162
8.1.4 堆162
8.1.5 BSS段162
8.1.6 数据段162
8.1.7 文本段163
8.2 线程163
8.2.1 线程函数163
8.2.2 线程ID164
8.2.3 创建线程164
8.2.4 取消线程164
8.2.5 流程控制164
8.2.6 内存保护:互斥锁165
8.3 POSIX线程与WiringPi线程166
8.4 Larson_pthread167
8.4.1 工作规划167
8.4.2 修改代码167
8.4.3 代码169
8.5 Larson_wiringPiThread175
8.6 本章小结181
第9章 从树莓派走向世界:网络套接字182
9.1 互联网上的小装置182
9.2 安全性182
9.3 网络简介183
9.3.1 TCPIP端口和套接字183
9.3.2 IPv4和IPv6184
9.3.3 域名服务185
9.3.4 客户端和服务器185
9.4 程序186
9.5 规划186
9.5.1 gpio_class类187
9.5.2 socket_class类188
9.5.3 main函数189
9.5.4 关于std::string类的一些讨论18
目錄
译者序
前言
作者简介
审校者简介
第1章 采购清单1
1.1 树莓派1
1.1.1 3B+型树莓派1
1.1.2 为何购买3B+型树莓派4
1.1.3 Zero W型树莓派4
1.1.4 为何购买Zero W型树莓派5
1.1.5 适配器6
1.1.6 其他型号的树莓派7
1.2 树莓派的GPIO分线板7
1.3 5V USB微型电源9
1.4 集成电路10
1.4.1 ATmega328P-PU10
1.4.2 16MHz TTL时钟振荡器11
1.4.3 74LVC245A八进制总线收发器12
1.5 LED13
1.5.1 10段光带13
1.5.2 普通LED14
1.6 microSD卡14
1.7 USB闪存设备15
1.8 电阻15
1.9 连接线和面包板16
1.10 微动开关17
1.11 焊接工具和技巧17
1.12 关于供货商18
1.13 关于元器件18
1.14 元器件一览18
第2章 结识树莓派20
2.1 简介20
2.1.1 Windows20
2.1.2 MacOS X20
2.1.3 Linux20
2.2 所需工具21
2.3 硬件设置21
2.3.1 3B+型树莓派21
2.3.2 Zero W型树莓派22
2.3.3 两型树莓派22
2.4 用NOOBS安装Raspbian22
2.4.1 什么是NOOBS22
2.4.2 什么是Raspbian23
2.4.3 格式化microSD卡24
2.4.4 下载NOOBS29
2.4.5 安装NOOBS30
2.5 启动NOOBS32
2.6 排除故障32
2.7 安装Raspbian33
2.8 本章小结36
第3章 Linux基础37
3.1 导航37
3.1.1 桌面37
3.1.2 终端应用程序38
3.1.3 网络浏览器39
3.1.4 桌面的背后39
3.2 重启和关闭树莓派40
3.2.1 在GUI桌面中启动和关闭树莓派40
3.2.2 在终端中启动和关闭树莓派40
3.2.3 命令摘要42
3.3 配置42
3.3.1 树莓派的配置应用程序42
3.3.2 WiFi和网络配置44
3.4 安装和更新软件44
3.4.1 GUI软件安装程序44
3.4.2 apt-get包管理器44
3.5 文件系统导航50
3.5.1 GUI桌面50
3.5.2 终端53
3.5.3 所在何处54
3.5.4 目录中有什么55
3.5.5 创建文件58
3.5.6 删除文件59
3.5.7 创建目录60
3.5.8 删除目录和文件61
3.5.9 小结63
3.6 权限和特权63
3.6.1 用户和组64
3.6.2 root和sudo67
3.7 内存和驱动程序70
3.7.1 内存70
3.7.2 驱动程序70
3.8 术语71
3.9 本章小结72
第4章 结识C++73
4.1 Arduino包的内容73
4.1.1 在树莓派上安装Arduino73
4.1.2 IDE76
4.1.3 编译器76
4.1.4 函数库78
4.1.5 上传程序79
4.2 结识Geany79
4.3 设置Geany82
4.4 编写第一个C++程序87
4.4.1 C++编程方式87
4.4.2 TicTac程序90
4.5 本章小结109
第5章 结识WiringPi110
5.1 什么是WiringPi110
5.2 WiringPi函数110
5.2.1 设置函数111
5.2.2 接线函数111
5.2.3 线程函数113
5.2.4 中断函数114
5.2.5 定时函数115
5.3 GPIO命令行工具117
5.4 GPIO组和权限118
5.5 在Geany中调用WiringPi119
5.6 搭建拉森(纪念)扫描器119
5.6.1 所需工具120
5.6.2 欧姆定律121
5.6.3 电路连接示意122
5.6.4 电路搭建122
5.6.5 项目123
5.6.6 程序124
5.6.7 首次运行程序126
5.6.8 代码127
5.7 本章小结129
第6章 输入和输出130
6.1 所需工具130
6.2 修改后的电路130
6.2.1 微动开关130
6.2.2 上拉电阻和下拉电阻132
6.3 Button_Polled项目132
6.3.1 项目概述132
6.3.2 修改代码133
6.3.3 代码134
6.4 Button_Interrupt项目137
6.4.1 项目概述137
6.4.2 修改代码138
6.4.3 代码141
6.5 本章小结144
第7章 一台树莓派和多个进程145
7.1 进程145
7.2 设计多进程拉森扫描器146
7.2.1 fork命令147
7.2.2 控制信号147
7.2.3 修改代码148
7.3 代码152
7.4 运行程序157
7.5 Linux中的进程158
7.6 本章小结160
第8章 单进程和多线程161
8.1 进程与内存161
8.1.1 内核空间162
8.1.2 堆栈162
8.1.3 内存映射段162
8.1.4 堆162
8.1.5 BSS段162
8.1.6 数据段162
8.1.7 文本段163
8.2 线程163
8.2.1 线程函数163
8.2.2 线程ID164
8.2.3 创建线程164
8.2.4 取消线程164
8.2.5 流程控制164
8.2.6 内存保护:互斥锁165
8.3 POSIX线程与WiringPi线程166
8.4 Larson_pthread167
8.4.1 工作规划167
8.4.2 修改代码167
8.4.3 代码169
8.5 Larson_wiringPiThread175
8.6 本章小结181
第9章 从树莓派走向世界:网络套接字182
9.1 互联网上的小装置182
9.2 安全性182
9.3 网络简介183
9.3.1 TCPIP端口和套接字183
9.3.2 IPv4和IPv6184
9.3.3 域名服务185
9.3.4 客户端和服务器185
9.4 程序186
9.5 规划186
9.5.1 gpio_class类187
9.5.2 socket_class类188
9.5.3 main函数189
9.5.4 关于std::string类的一些讨论18
內容試閱
如果你拿着本书在自己最喜欢的电子业余爱好者商店中寻找所需要的全部元件,请跳至第1章,该章有你需要的全部信息,然后可再回来阅读前言的剩余部分。
一些背景知识
曾经,实际的计算要么是在大型机上完成(这种大型机可以填满整个房子),要么是在小型机上完成(小型机的尺寸和一些文件柜的尺寸差不多)。当时,这两种机器具有超强的计算能力,你要按分钟缴费才能使用它们。这种情况直到1971年首款微处理器Intel 4004发明后才开始改变,紧接着,微处理器衍生出两个泾渭分明的计算机家族。
微型计算机
早期,如果你想要一台微型计算机—因为你在白天要用计算机工作或者可能你是一位需要做相关实验的计算机科学专业的学生,却不想为使用大型机或小型机付钱—那么可以购买诸如Altair 8800(或者其克隆版本Imsai 8080)、Heathkit H8或者Cosmac Elf之类的套装(如果预算足够的话)。如果你的能力够强又足够幸运地把套装内的元部件连接在一起,并让它正常工作,那么你就拥有了一台计算机,可以用它来做想做的事情。
到了1982年年底,微型计算机已经变得风行一时。人们可以到Kmart超市购买Vic 20或者Commodore 64,或者到Radio Shack商店购买任意一台属于庞大的TRS-80计算机家族的计算机。但是对于这些计算机而言,有一点是相同的,那就是软件昂贵。除非想把这类计算机当作Atari街机使用(如同当时的一款视频游戏控制台Atari 2600那样),否则人们不得不编写一些代码。对大多数人而言,这才是真正有吸引力的地方。计算机可以完成我们想做的很多事情,即使是小孩子,也能够操纵计算机。计算机会按我们的需求完成工作。类似以姆赛(IMSAI)这样的公司在计算机中添加了更多设计精巧的电路。你可以从内到外地探究一下微型计算机,看看你能让它做什么。以姆赛以及杰出的Apple IITRS-80Commodore玩家对计算机都有深刻的理解,对于计算机知识的学习可以达到甚至超越逻辑门层级。
微控制器
20世纪70年代中后期,用计算机进行控制的交通信号灯、汽车以及烤箱等显然还是过于昂贵。一台微型计算机必须具有CPU、时钟、随机存储器(RAM)、控制RAM的逻辑以及用于启动的只读存储器(ROM)。为了执行简单的任务,你必须搭建一台完整的计算机,这种计算机体积庞大、耗电量惊人,并且批量生产的费用非常高。德州仪器和Intel的工程师首先分别利用TMS 1000及Intel 8048和8051微控制器解决了这个问题,这些微控制器在一块IC芯片上包含了RAM和ROM,并且TMS 1000还包含系统时钟。你可以像对ROM或者EPROM那样对它们进行编程—把IC芯片放置到经过特殊设计的编程器当中,然后把程序烧录到微控制器当中,接下来连接电源以及任何完成工作所需的外围电路。今天当你将桌面微型计算机与微控制器的数量进行比较时,就好像拿消化系统中的细菌和身体中细胞的数量进行比较,微控制器的数量远远超过桌面计算机,比例达到1000:1。
衰退期
到了2000年,得益于互联网以及能够访问互联网的计算机的蓬勃发展,家用计算机变得和家庭汽车一样,被包装成消费型设备,包装中不带有用户可自行维护的元部件,就像如今的Mac Mini或iPhone一样,包裹得严严实实,开箱就会导致质保无效,甚至不能在iPhone上加载自己编写的软件。就如同今天一样,微控制器设备完全是用户不可更改的,如果你购买了一个新的空白的微控制器,就必须在装备、软件和授权许可方面进行大量投资。这样一来,结果就是在大多数事物已经或正在变得计算机化时,却很少有人像当初那样对计算机有深刻的理解,而计算机正是实现计算机化的基石。既然人们已经创造了Linux操作系统,难道就不能创造出新的系统或工具,让未来的技术人员更深层地理解计算机吗?当然能!
新的开端
业余爱好者总是存在,8051以及之后的MicroChip PIC和Parallax BASIC Stamp平台都带有(并且仍然带有)计算机爱好者喜欢的核心硬件,但是这些平台需要复杂的(通常也是昂贵的)软件工具,还需要对各个IC芯片进行大量研究以便弄清它们究竟如何控制自己特定的外围设备。正如Hernando Barragán的硕士论文中的项目那样,他着手简化微控制器的学习和编程,并让这些工具免费和开源。他的项目为每个引脚赋予了一个标准名称,并为每个引脚建立了一个标准化的函数集来控制它,如果引脚具有控制函数,就可以调用其专门的函数。他称这个项目为Wiring,不久之后,他又把Atmel公司的比较廉价的AVR微控制器作为该项目的新的应用目标。
Wiring逐步发展为包含IDE,并加入了Brian Dean开发的AVRDUDE烧录工具,该工具可以让用户轻松地把程序上传到自己的微控制器板当中。Wiring从一开始就是开源的,这并不奇怪。Wiring板大约50美元一块,根据Barragán的成果,Massimo Banzi(即Barragán在Wiring项目上的导师)利用ATmega8系列芯片开发了一款更便宜的微控制器板,并由Wiring创建了一个分支项目,他把整个项目称为Arduino。接下来的事情就众所周知了,当前,涌现了一整个基于微控制器的系统家族,这些系统都用到了WiringArduino开发环境。
再来看微型计算机,树莓派于2012年2月29日出现。圣约翰学院的计算机系曾面临学生动手能

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 香港用户  | 台灣用户 | 海外用户
megBook.com.tw
Copyright (C) 2013 - 2024 (香港)大書城有限公司 All Rights Reserved.