内容介绍
树莓派(Raspberry Pi)是这款应用场景Linux系统软件的、只能一張透支卡尺寸的卡片式电子计算机。产品研发树莓派的最初目地是根据廉价硬件配置和自由软件来促进大学的基本电子计算机课程文化教育,但迅速树莓派就获得电子计算机和硬件配置发烧友的亲睐;她们用它学编程,并造就出各式各样奇特的、红极一时的硬件软件运用。
这书由多产作家Simon Monk撰写,是将內容开展全方位升級以后的第2版,包揽了丰富多彩的实践实例,详尽解读了树莓派的配备与管理方法、数据连接、电脑操作系统及手机软件。另一个,这书还详细介绍了应用PHP开展树莓派开发设计的各类方法,书中详细介绍了相关PHP程序编写的基本知识、目录与词典、PHP高級特点。一起,这书还详细介绍了相关机器视觉、硬件基础、操纵硬件配置、电动机、大数字键入、控制器、显示系统、物联网技术及Arduino等有关专业知识。
这书合适程序猿和电子计算机软、硬件配置发烧友,及其对树莓派很感兴趣的小读者阅读文章,也合适做为树莓派有关实践课程内容的具体指导用书。
目录
- D11章配置与管理1
- 1.0引言1
- 1.1xuan择树莓派型号1
- 1.2封装树莓派3
- 1.3xuan择电源4
- 1.4xuan择操作系统发行包6
- 1.5通过NOOBS刷写microSD卡7
- 1.6装配系统9
- 1.7连接DVI或VGA显示器10
- 1.8使用复合视频显示器/TV10
- 1.9调整显示器中的图像尺寸12
- 1.10优化性能13
- 1.11修改密码15
- 1.12让树莓派开机后直接进入窗口系统16
- 1.13关闭树莓派17
- 1.14安装树莓派摄像头模块18
- 1.15使用蓝牙设备21
- D12章网络连接23
- 2.0引言23
- 2.1连接有线网络23
- 2.2查看自己的IP地址25
- 2.3配置静态IP地址26
- 2.4为树莓派配置网络名称28
- 2.5配置无线网络连接29
- 2.6使用控制台线联网31
- 2.7利用SSH远程控制树莓派33
- 2.8利用VNC远程控制树莓派35
- 2.9利用RDP远程控制树莓派36
- 2.10在Mac网络中实现文件共享38
- 2.11在Mac上共享树莓派的屏幕39
- 2.12将树莓派用作网络存储服务器41
- 2.13网络打印44
- D13章操作系统47
- 3.0引言47
- 3.1通过图形界面移动文件47
- 3.2启动一个终端会话49
- 3.3利用终端浏览文件系统50
- 3.4复制文件或文件夹52
- 3.5重命名文件和文件夹53
- 3.6编辑文件54
- 3.7查看文件内容56
- 3.8不借助编辑器的情况下创建文件57
- 3.9创建目录57
- 3.10删除文件或目录58
- 3.11以超级用户限执行任务59
- 3.12理解文件限60
- 3.13修改文件的限61
- 3.14修改文件的属主62
- 3.15屏幕截图63
- 3.16利用apt-get安装软件64
- 3.17删除利用apt-get安装的软件65
- 3.18利用Pip安装Python软件包65
- 3.19通过命令行获取文件66
- 3.20利用Git获取源代码67
- 3.21在系统启动时自动运行程序或脚本67
- 3.22让程序或脚本作为服务自动运行68
- 3.23定期自动运行程序或脚本70
- 3.24搜索功能71
- 3.25使用命令行历史记录功能72
- 3.26监视处理器活动73
- 3.27文件压缩75
- 3.28列出已连接的USB设备76
- 3.29将输出从命令行重定向到文件76
- 3.30连接文件77
- 3.31使用管道78
- 3.32将输出隐藏到终端78
- 3.33在后台运行程序79
- 3.34创建命令别名80
- 3.35设置日期和时间80
- 3.36查看SD卡剩余存储空间81
- D14章软件83
- 4.0引言83
- 4.1搭建媒体中心83
- 4.2安装Oice软件84
- 4.3安装其他浏览器86
- 4.4使用树莓派商店87
- 4.5打造网络摄像头服务器88
- 4.6运行老式游戏控制台模拟器90
- 4.7运行树莓派版Minecraft92
- 4.8运行Minecraft服务器93
- 4.9运行OpenArena95
- 4.10树莓派无线电发射器96
- 4.11运行GIMP98
- 4.12互联网广播99
- D15章Python入门101
- 5.0引言101
- 5.1在Python2和Python3之间做出xuan择101
- 5.2使用IDLE编辑Python程序102
- 5.3使用Python控制台104
- 5.4利用终端运行Python程序105
- 5.5变量106
- 5.6显示输出结果107
- 5.7读取用户输入107
- 5.8算术运算108
- 5.9创建字符串109
- 5.10连接-合并字符串110
- 5.11将数字转换为字符串111
- 5.12将字符串转换为数字111
- 5.13确定字符串的长度112
- 5.14确定某字符串在另一个字符串中的位置113
- 5.15截取部分字符串113
- 5.16使用字符串替换另一个字符串中的内容114
- 5.17字符串的大小写转换115
- 5.18根据条件运行命令116
- 5.19值的比较117
- 5.20逻辑运算符118
- 5.21将指令重复执行特定次数119
- 5.22重复执行指令直到特定条件改变为止120
- 5.23跳出循环语句120
- 5.24定义Python函数121
- D16章Python语言中的列表与字典123
- 6.0引言123
- 6.1创建列表123
- 6.2访问列表元素124
- 6.3确定列表长度125
- 6.4为列表添加元素125
- 6.5删除列表元素126
- 6.6通过解析字符串创建列表127
- 6.7遍历列表127
- 6.8枚举列表128
- 6.9列表排序129
- 6.10分割列表130
- 6.11将函数应用于列表131
- 6.12创建字典131
- 6.13访问字典133
- 6.14删除字典元素134
- 6.15遍历字典134
- D17章Pythongao级特性137
- 7.0引言137
- 7.1格式化数字137
- 7.2格式化时间和日期138
- 7.3返回多个值139
- 7.4定义类140
- 7.5定义方法141
- 7.6继承142
- 7.7向文件中写入内容143
- 7.8读文件144
- 7.9序列化-Pickling145
- 7.10异常处理146
- 7.11使用模块147
- 7.12随机数148
- 7.13利用Python发送Web请求149
- 7.14Python的命令行参数150
- 7.15从Python运行Linux命令151
- 7.16从Python发送电子邮件152
- 7.17利用Python编写简单Web服务器153
- 7.18同时进行多件事情154
- 7.19让Python无所事事156
- 7.20将Python应用于树莓派版Minecraft156
- D18章机器视觉159
- 8.0引言159
- 8.1安装SimpleCV159
- 8.2为机器视觉配置USB摄像头160
- 8.3将树莓派的摄像头模块用于机器视觉162
- 8.4数硬币163
- 8.5人脸检测166
- 8.6运动检测168
- 8.7光学字符识别170
- D19章硬件基础173
- 9.0引言173
- 9.1GPIO连接器使用说明173
- 9.2使用GPIO接口时树莓派的安全保护176
- 9.3配置I2C176
- 9.4使用I2C工具178
- 9.5配置SPI179
- 9.6安装PySerial以便从Python访问串口180
- 9.7安装Minicom以检测串口181
- 9.8使用带有跳线的面包板182
- 9.9使用树莓派的排线连接面包板183
- 9.10使用树莓派Squid184
- 9.11使用RaspberrySquid按钮186
- 9.12利用两个电阻将5V信号转换为3.3V187
- 9.13利用电平转换模块将5V信号转换为3.3V189
- 9.14利用电池为树莓派供电190
- 9.15利用锂电池为树莓派供电192
- 9.16SenseHAT入门指南193
- 9.17ExplorerHATPro入门指南194
- 9.18RaspiRobotBoard入门指南196
- 9.19使用PiPlate原型板198
- 9.20制作树莓派扩展板-HardwareAtTop HAT201
- 9.21树莓派的计算模块204
- 9.22PiZero205
- D110章控制硬件207
- 10.0引言207
- 10.1连接LED207
- 10.2让GPIO引脚进入安全状态209
- 10.3控制LED的亮度210
- 10.4制造蜂鸣声213
- 10.5利用晶体管开关大功率直流设备214
- 10.6使用继电器控制大功率设备的开关216
- 10.7控制高压交流设备219
- 10.8编写用于控制开关的用户界面220
- 10.9编写控制LED和电机的PWM功率的用户界面221
- 10.10改变RGBLED的颜色223
- 10.11使用大量LED-Charlieplexing方式225
- 10.12将模拟仪表用作显示器228
- 10.13中断编程230
- D111章电机233
- 11.0引言233
- 11.1控制伺服电机233
- 11.2精Q控制伺服电机237
- 11.3控制多台伺服电机239
- 11.4控制直流电动机的速度242
- 11.5控制直流电机的方向244
- 11.6使用单极步进电机248
- 11.7使用双极步进电机252
- 11.8利用步进电机HAT驱动双极步进电机253
- 11.9使用RaspiRobot板驱动双极步进电机256
- 11.10打造一款简单的机器人小车257
- D112章数字输入261
- 12.0引言261
- 12.1连接按钮开关261
- 12.2通过按钮开关切换开关状态264
- 12.3使用双位拨动开关或滑动开关265
- 12.4使用三位拨动开关或滑动开关266
- 12.5按钮去抖269
- 12.6使用外部上拉电阻271
- 12.7使用旋转-正交编码器272
- 12.8使用数字键盘275
- 12.9检测移动278
- 12.10为树莓派添加GPS280
- 12.11拦截按键283
- 12.12拦截鼠标移动285
- 12.13使用实时时钟模块286
- D113章传感器291
- 13.0引言291
- 13.1使用电阻式传感器291
- 13.2测量亮度296
- 13.3利用热敏电阻测量温度298
- 13.4检测甲烷301
- 13.5测量电压304
- 13.6为测量而降低电压306
- 13.7使用电阻式传感器与ADC309
- 13.8使用ADC测量温度310
- 13.9测量树莓派的CPU温度312
- 13.10利用SenseHAT测量温度、湿度和气压313
- 13.11利用数字传感器测量温度315
- 13.12利用MCP3008模块测量加速度318
- 13.13使用SenseHAT的惯性管理单元-IMU321
- 13.14利用SenseHAT寻找磁北323
- 13.15利用簧片开关检测磁铁323
- 13.16利用SenseHAT感应磁场325
- 13.17测量距离325
- 13.18电容式触摸传感技术328
- 13.19显示传感器的值331
- 13.20利用USB闪存驱动器记录日志332
- D114章显示设备335
- 14.0引言335
- 14.1使用四位LED显示设备335
- 14.2在I2CLED矩阵上面显示消息337
- 14.3使用SenseHATLED矩形显示器339
- 14.4在AlphanumericLCDHAT上显示消息341
- 14.5在AlphanumericLCD模块上显示消息343
- 14.6使用OLED图形显示器347
- 14.7使用可寻址的RGBLED灯条349
- D115章物联网355
- 15.0引言355
- 15.1使用Web接口控制GPIO输出355
- 15.2在网页上面显示传感器读数360
- 15.3使用IFTTT发送电子邮件及其他通知363
- 15.4利用ThingSpeak发送Tweets367
- 15.5CheerLights369
- 15.6向ThingSpeak发送传感器数据370
- 15.7使用Dweet和IFTTT响应Tweet373
- D116章Arduino与树莓派377
- 16.0引言377
- 16.1通过树莓派对Arduino进行编程378
- 16.2利用SerialMonitor与Arduino进行通信380
- 16.3配置PyFirmata以便通过树莓派来控制Arduino382
- 16.4通过树莓派对Arduino的数字输出进行写操作384
- 16.5使用PyFirmata与TTL串口386
- 16.6使用PyFirmata读取Arduino的数字输入388
- 16.7利用PyFirmata读取Arduino的模拟输入390
- 16.8模拟输出-PWM与PyFirmata391
- 16.9利用PyFirmata控制伺服电机393
- 16.10定制基于TTLSerial的Arduino通信395
- 16.11通过I2C自定义与Arduino之间的通信399
- 16.12在树莓派上使用小型Arduino402
- 16.13aLaMode板与树莓派入门403
- 16.14在树莓派和aLaMode板上使用ArduinoShield406
- 附录A配件与供应商409
- 附录B树莓派引脚415