描述
开 本: 16开纸 张: 胶版纸包 装: 平装是否套装: 否国际标准书号ISBN: 9787302432654
目 录
第1章 Linux和Raspberry的简介………………………… 1
1.1 Linux前世今生…………………………………………………………. 1
1.1.1
Linux的诞生………………………………………………….. 1
1.1.2
Linux的发行版本…………………………………………… 2
1.1.3
Linux的将来………………………………………………….. 3
1.2 深度剖析Raspberry…………………………………………………. 4
1.2.1
Raspberry Pi的诞生……………………………………….. 4
1.2.2
Raspberry家族………………………………………………. 5
1.3 Raspberry配件选择…………………………………………………. 5
1.3.1
Raspberry必要设备……………………………………….. 5
1.3.2
Raspberry非必要设备……………………………………. 6
1.4 Raspberry OS的选择……………………………………………….. 7
1.4.1
Raspberry官网推荐OS………………………………….. 7
1.4.2 官方推荐的第三方OS……………………………………. 8
1.4.3 其他的OS……………………………………………………… 8
第2章 Raspberry的安装配置…………………………….. 10
2.1 从零开始安装配置Raspberry………………………………… 10
2.1.1 下载Raspberry的系统…………………………………. 10
2.1.2
Windows下安装RaspBian……………………………. 10
2.1.3
Linux下安装RaspBian…………………………………. 11
2.1.4 Mac
OS下安装RaspBian……………………………… 14
2.2 RaspBian基本配置………………………………………………… 15
2.2.1
raspi-config配置…………………………………………… 15
2.2.2 网络配置……………………………………………………… 20
2.2.3 无线网络配置………………………………………………. 23
2.2.4 其他配置……………………………………………………… 24
2.3 远程无密码登录…………………………………………………….. 25
2.3.1
Windows远程无密码登录…………………………….. 26
2.3.2
Linux远程无密码登录………………………………….. 33
2.4 系统备份和还原…………………………………………………….. 34
2.4.1 tar备份还原…………………………………………………. 35
2.4.2 tar增量备份还原………………………………………….. 37
2.4.3 dd备份还原…………………………………………………. 38
第3章 Raspberry开发利器……………………………….. 40
3.1 apt-get…………………………………………………………………….. 40
3.1.1
apt-get简介………………………………………………….. 40
3.1.2
apt命令用法………………………………………………… 41
3.2 vim………………………………………………………………………….. 43
3.2.1 vim简介………………………………………………………. 43
3.2.2 安装配置vim……………………………………………….. 43
3.2.3 以vim做一个简单的python
IDE…………………. 45
3.2.4 vim使用指南……………………………………………….. 47
3.3 bash………………………………………………………………………… 49
3.3.1
bash简介……………………………………………………… 49
3.3.2 个bash脚本Hello world………………………… 53
3.3.3
bash script实例——增量备份脚本……………….. 55
3.4 Python…………………………………………………………………….. 56
3.4.1
Python简介…………………………………………………. 57
3.4.2 个Python脚本 Hello world…………………… 57
3.4.3
Python常用模块………………………………………….. 59
3.4.4
Python
script实例——touch2py.py……………… 63
3.4.5
Python进阶实例——getNip.py……………………. 65
3.5 常用工具………………………………………………………………… 67
3.5.1 正则表达式(RE)………………………………………. 67
3.5.2
grep……………………………………………………………… 74
3.5.3
find………………………………………………………………. 76
3.5.4 sed……………………………………………………………….. 79
3.5.5
awk……………………………………………………………… 82
3.5.6 其他常用工具………………………………………………. 86
第4章 Raspberry常用服务……………………………….. 90
4.1 xrdp远程桌面服务…………………………………………………. 90
4.1.1
xrdp简介……………………………………………………… 90
4.1.2
xrdp安装……………………………………………………… 90
4.1.3 登录xrdp……………………………………………………… 91
4.2 samba共享服务……………………………………………………… 94
4.2.1
samba简介…………………………………………………… 94
4.2.2
samba安装…………………………………………………… 94
4.2.3
samba配置…………………………………………………… 95
4.2.4 登录samba服务器……………………………………….. 97
4.3 miniDLNA共享影音服务……………………………………… 101
4.3.1
miniDLNA简介………………………………………….. 101
4.3.2
miniDLNA安装………………………………………….. 102
4.3.3
miniDLNA配置………………………………………….. 102
4.4 VSFTP FTP服务…………………………………………………… 103
4.4.1
VSFTP简介……………………………………………….. 103
4.4.2
VSFTP安装……………………………………………….. 103
4.4.3
vsftp配置………………………………………………….. 103
4.4.4 登录VSFTP服务器……………………………………. 108
4.5 Nginx…………………………………………………………………….. 110
4.5.1
Nginx简介………………………………………………….. 111
4.5.2
Nginx安装………………………………………………….. 111
4.5.3
Nginx配置………………………………………………….. 111
4.6 LAMP……………………………………………………………………. 115
4.6.1
LAMP简介……………………………………………….. 115
4.6.2
LAMP安装……………………………………………….. 115
4.6.3
LAMP配置……………………………………………….. 116
第5章 Raspberry常用功能……………………………… 122
5.1 挂载磁盘………………………………………………………………. 122
5.1.1 硬件准备……………………………………………………. 122
5.1.2 软件设置……………………………………………………. 122
5.2 Aria2下载机…………………………………………………………. 130
5.2.1 安装下载组件…………………………………………….. 130
5.2.2
Aria2配置………………………………………………….. 131
5.2.3 测试Aria2下载机………………………………………. 133
5.3 迅雷远程下载……………………………………………………….. 134
5.3.1 下载迅雷远程下载固件………………………………. 135
5.3.2 设置迅雷远程下载……………………………………… 135
5.4 动态域名解析……………………………………………………….. 140
5.4.1 神器花生壳………………………………………………… 140
5.4.2 下载安装花生壳…………………………………………. 140
5.4.3 设置花生壳………………………………………………… 141
5.5 无域名访问内网…………………………………………………… 143
5.5.1 确定公网IP……………………………………………….. 143
5.5.2 端口映射……………………………………………………. 145
5.6 实战:Raspberry给自己发短信………………………….. 152
5.6.1 方案原理……………………………………………………. 152
5.6.2 方案执行……………………………………………………. 152
5.7 监控器Motion……………………………………………………… 155
5.7.1 安装Motion……………………………………………….. 155
5.7.2 配置使用Motion………………………………………… 155
第6章 实战Raspberry GPIO……………………………. 157
6.1 GPIO简介……………………………………………………………… 157
6.1.1
Raspberry GPIO…………………………………………. 157
6.1.2 物理端口……………………………………………………. 158
6.2 实战GPIO——LED呼吸灯………………………………….. 158
6.2.1 准备实验物品…………………………………………….. 159
6.2.2
Python控制……………………………………………….. 161
6.3 实战GPIO——蜂鸣器………………………………………….. 163
6.3.1 准备实验物品…………………………………………….. 163
6.3.2
Python控制……………………………………………….. 164
6.4 实战GPIO——超声波模块………………………………….. 166
6.4.1 准备实验物品…………………………………………….. 166
6.4.2
Python控制……………………………………………….. 167
第7章 实战:智能开门报警器………………………….. 170
7.1 硬件准备………………………………………………………………. 170
7.1.1 必需的硬件………………………………………………… 170
7.1.2 可选硬件……………………………………………………. 170
7.1.3 组装及原理………………………………………………… 171
7.2 软件准备………………………………………………………………. 171
7.2.1 创建mylog模块…………………………………………. 172
7.2.2
Python控制……………………………………………….. 173
第8章 实战:移动小车 (手机控制 网页控制)…. 179
8.1 硬件准备………………………………………………………………. 179
8.1.1 必需的硬件………………………………………………… 179
8.1.2 可选的硬件………………………………………………… 181
8.2 组装及原理…………………………………………………………… 181
8.2.1 小车组装……………………………………………………. 181
8.2.2 电机组装……………………………………………………. 186
8.2.3 小车原理……………………………………………………. 191
8.3 软件准备………………………………………………………………. 191
8.3.1
Python控制……………………………………………….. 191
8.3.2 Web控制和手机控制………………………………….. 194
8.3.3 无线设置 196
前 言
随着计算机硬件的急剧微型化和物联网的快速发展,出现了越来越多的微型计算机,而树莓派(Raspberry Pi,本书简称为“Raspberry”)就是其中的佼佼者。Raspberry Pi是一款针对电脑业余爱好者、教师、小学生以及小型企业等用户的迷你电脑,预装Linux系统,体积仅信用卡大小,搭载ARM架构处理器,运算性能和智能手机相仿。Raspberry默认的操作系统还是Linux,其他的微型计算机的操作系统大多也是嵌入式的Linux。目前普通大众对Linux了解不多,即使有好的硬件设备也难以发挥它的功能。
网络上讲解Raspberry的帖子不少,要么语言不详,要么因为软硬件的升级而不再适用。本书是以实战为主旨,一步步地从安装系统开始,让读者熟悉Linux、使用Linux、喜欢Linux,并安排了实战项目指导读者对Raspberry进行开发,开发中使用了Python脚本语言,会让读者眼界大开。
本书共8章,前面5章是Raspberry开发基础,第6章包括LED呼吸灯、蜂鸣器、超声波模块3个小实例,第7章为智能开门报警器实例,第8章为移动小车实例。没有任何Linux基础的读者,建议从第1章顺次阅读并演练每一个实例。有一定Linux基础的读者,可以根据实际情况有重点地选择阅读各个模块和项目案例。
本书特色
1.附带全部源代码,提高学习效率
为了便于读者理解本书内容,作者已将所有源代码上传到网络,供读者下载使用。读者通过源代码学习开发思路,优化代码。
2.涵盖Linux的安装配置和python GPIO的开发
本书涵盖Linux和Raspberry简介、Raspberry安装配置、Raspberry开发利器、Raspberry常用服务、Raspberry常用功能、Raspberry GPIO、Raspberry开门报警器实战、Raspberry移动小车实战。
3.对GPIO Python开发作了原理上的分析
本书在实战开发前对开发原理做出了详细的讲解,便于读者理解思路及代码的运行。
4.模块驱动,应用性强
本书提供了3个简单的模块开发以方便读者自学,且这些模块可以组合应用成复杂的实际项目,具有超强的实用性。
5.项目案例典型,实战性强,有较高的应用价值
本书后两章提供了2个项目实战案例,具有很高的应用价值和参考性,而且这些实例都是通过前面的基础讲解组合应用,便于读者融会贯通地理解本书所介绍的技术。这些案例稍加修改,便可用于实际项目开发中。
本书读者
l 树莓派开发初学者
l
单片机开发初学者
l
物联网开发人员
l
智能家居开发人员
l
高校和培训学校相关专业的师生
本书由胡松涛主笔,其他参与编写的有宋士伟、张倩、周敏、魏星、邹瑛、王铁民、殷龙、李春城、张兴瑜、马新原、李柯泉、林龙、赵殿华、牛晓云。
代码下载
本书源代码下载地址如下:
http://pan.baidu.com/s/1nuvxVi5
如果下载有问题,请电子邮件联系[email protected],邮件主题为“树莓派”。
编 者
评论
还没有评论。