0 0 0

从芯片到云端 Python物联网全栈开发实践_刘凯著.pdf

暴疯语
15天前 250
我用夸克网盘分享了「从芯片到云端 Python物联网全栈开发实践_刘凯著.pdf」,点击链接即可保存。打开「夸克APP」在线查看,支持多种文档格式转换。
从芯片到云端:Python物联网全栈开发实践 作者: 刘凯 出版社: 电子工业出版社 出品方: 博文视点 出版年: 2018-1-1 页数: 724页 定价: 119.00元 装帧: 平装 ISBN: 9787121311277

内容简介

物联网开发重新定义了“全栈开发”的范围。Python作为一门快速发展的语言,已经成为系统集成领域的优选语言之一,其可覆盖从电路逻辑设计到大数据分析的物联网端到端开发。各领域开发者可以利用Python交叉涉足物联网设备、边缘计算、云计算、数据分析的工程设计。 《从芯片到云端:Python物联网全栈开发实践》尝试让读者建立物联网设计的整体概念,从基础概念开始,到相关技术选型、开源工程、参考设计与经验分享。无论是物联网领域的创业者,还是系统架构师,都可从本书中获得灵感。本书对于嵌入式开发领域的开发者尤具学习价值,利用Python可加快开发迭代速度、降低开发成本,并可以基于嵌入式Python建立完整的物联网软硬件生态。

作者简介

刘凯,服务于微电子行业二十余载的资深工程师。曾在飞利浦半导体(即NXP恩智浦半导体前身)任资深工程师,从事软、硬件开发与产品设计等工作,有用汇编/C/C++开发嵌入式系统固件、用Perl/Python脚本做开发支持工具、用PHP/Java/Python做设备云和Web应用的丰富经验。现作为独立系统集成开发商,专业从事物联网相关项目设计和咨询服务,主攻嵌入式、RFID、微控制器、物联网、WSN、Linux、Python、开源等领域。

网友热评

整体还可以 但是缺点也很明显

图书目录

第1章物联网简介 1 1.1物联网定义 1 1.2物联网发展趋势 1 1.3物联网应用与技术 2 1.3.1物联网核心价值 2 1.3.2物联网发展阶段 3 1.3.3物联网分层 5 1.3.4物联网数据传输与网络拓扑 5 1.3.5物联网实施所需技术栈 8 1.3.6标准、现状与未来 10 1.4本章小结 16 第2章Python语言基础 17 2.1Python的由来与特征 19 2.1.1概述 19 2.1.2设计定位与哲学 19 2.1.3优点与缺点 20 2.2Python与物联网开发 22 2.3获取Python资源 24 2.3.1Python主程序 24 2.3.2Python文档 24 2.3.3PythonPyPI 24 2.4Python解释器运行环境 26 2.4.1REPL交互模式 26 2.4.2直接运行与模块运行 26 2.4.3脚本文件直接运行 27 2.4.4源程序文字编码与结束符 28 2.5Python类型与语法 29 2.5.1动态类型 29 2.5.2传值与传引用 30 2.5.3数据类型 31 2.5.4内置类型 32 2.5.5内置类型的普适操作 34 2.5.6数值类型 35 2.5.7布尔类型 37 2.5.8迭代器类型 37 2.5.9生成器类型 38 2.5.10yield表达式 39 2.5.11序列类型 39 2.5.12set集合类型 54 2.5.13映射类型 55 2.5.14其他类型 56 2.5.15控制流 59 2.5.16内置函数 61 2.5.17用户自定义函数 62 2.5.18模块 65 2.5.19输入/输出 68 2.5.20面向对象编程 74 2.5.21进程和线程 82 2.5.22错误和异常 90 2.6Python标准库概览 93 2.7本章小结 94 第3章Python语言进阶 95 3.1HOWTO:常见任务和解决方案 95 3.1.1数据类型转换 96 3.1.2数据的调试打印 100 3.1.3数据类型资源优化 102 3.1.4数据结构与算法 102 3.1.5数据缓存 103 3.1.6数据多路复用和解复用 104 3.1.7数据序列化和反序列化 107 3.1.8数据压缩和解压缩 119 3.1.9数据加密 120 3.1.10数据传输 121 3.1.11数据后处理 121 3.1.12数据持久化 121 3.1.13数据交换 122 3.2HOWTO:函数式编程 123 3.2.1高阶函数 123 3.2.2map函数 124 3.2.3reduce函数 124 3.2.4filter函数 124 3.2.5sorted函数 125 3.2.6返回函数 125 3.2.7闭包 126 3.2.8匿名函数 126 3.2.9装饰器 127 3.3HOWTO:并发运行模型 131 3.3.1协程 131 3.3.2I/O模型 134 3.4HOWTO:日期与时间 136 3.4.1类型转换 136 3.4.2时区的处理 138 3.5Python版本迁移 139 3.5.1Python2与Python3的区别 140 3.5.2Python2到Python3的流程 140 3.5.3多个Python版本共存 140 3.5.4virtualenv 141 3.5.5Windows多个版本共存 141 3.5.6Linux多个版本共存 142 3.6其他常见技巧 143 3.6.1常数类型的模拟 143 3.6.2枚举类型的模拟 143 3.6.3开发自定义模块 144 3.7Python与其他语言 145 3.8Python语言扩展 151 3.8.1C语言扩展Python 151 3.8.2ctypes访问WindowsDLL 153 3.8.3Jython访问Java类 154 3.8.4IronPython访问.NET 155 3.9Python加速 157 3.9.1PyPy 158 3.9.2Cython 159 3.9.3PyCUDA 159 3.9.4PyOpenCL 159 3.9.5Theano 159 3.9.6Nuitka 159 3.10本章小结 160 第4章嵌入式系统开发 161 4.1嵌入式系统硬件分类 162 4.1.1MCU 162 4.1.2MPU 163 4.1.3DSP 163 4.1.4SMP 164 4.1.5异构大小核 164 4.1.6FPGA原型 165 4.1.7SoPC 165 4.1.8GPU 167 4.1.9哈佛结构和冯•诺依曼结构 168 4.2电路原型设计 168 4.2.1集成电路设计流程 170 4.2.2模拟电路原型设计 170 4.2.3数字电路原型设计 175 4.3常见嵌入式微控制器(MCU) 179 4.3.1MCU市场状况 179 4.3.2Arduino/Wiring 180 4.3.3ARMmbed 181 4.3.4设计专属架构和专属MCU 182 4.3.5ARMMCU差异化竞争 182 4.4常见嵌入式处理器和主板 184 4.4.1ARM架构 185 4.4.2其余的ARMLinux主板 188 4.4.3MIPS开发板 190 4.4.4x86mini-ITX 191 4.5常见传感器和执行器 192 4.5.1虚拟传感器 193 4.5.2智能传感器 193 4.5.3专用传感器 194 4.5.4执行器 195 4.6物联网通信集成电路 196 4.7嵌入式系统开发语言演进 197 4.7.1从汇编到嵌入式C 197 4.7.2从C到C++ 199 4.7.3压缩C++的系统消耗 199 4.7.4C++适合物联网开发 200 4.8C/C++的编程模式和技巧 204 4.8.1C/C++设计模式 205 4.8.2回调函数 206 4.8.3有限状态机模型 209 4.8.4善用结构体 211 4.8.5C/C++协程 214 4.9开发生态选择 215 4.9.1工业标准与厂家私有指令集架构 215 4.9.2硬件与软件平台选择 215 4.9.3编译器选择 216 4.10常见操作系统 217 4.10.1无操作系统 217 4.10.2RTOS的优势 218 4.10.3uC/OS 219 4.10.4KeilRTX 219 4.10.5mbedRTOS与mbedOS 220 4.10.6FreeRTOS 221 4.10.7Linux是开发复杂联网设备的现实选择 222 4.11物联网中间件 227 4.11.1WSN堆栈 227 4.11.2TCP/IP 227 4.11.3USB 227 4.11.4FAT/FS 228 4.11.5GUI 228 4.11.6Terminal 228 4.11.7MQTT 228 4.11.8CoAP 229 4.12物联网安全性 230 4.12.1安全相关芯片 230 4.12.2安全中间件 231 4.12.3Python安全算法 232 4.13设备固件更新 232 4.13.1固件更新技术发展史 232 4.13.2本地固件更新 234 4.13.3远程固件更新 234 4.13.4固件升级定制 234 4.14各类串口实现联网 235 4.14.1串口协议的选择 235 4.14.2模拟串口设备 236 4.14.3其他类型虚拟设备 238 4.14.4ISP编程器 238 4.14.5串口设备监控器 239 4.15本章小结 239 第5章设备连接和编程接口 240 5.1设备连接概述 240 5.1.1嵌入式系统连接层次 240 5.1.2 选择正确的连接方案 241 5.1.3具体落实连接设计 241 5.1.4本章内容安排 242 5.2连接能力汇总 242 5.2.1连接由芯片开始 243 5.2.2芯片内部系统总线 245 5.2.3芯片间连接技术 246 5.2.4设备间连接 249 5.2.5设备组网 250 5.2.6设备组网与联网的无线技术 253 5.2.7连接性回顾 266 5.3Linux文件系统 266 5.3.1设备即文件 266 5.3.2设备文件系统 267 5.3.3Linux设备文件的演变 268 5.3.4文件I/O操作 271 5.3.5Linux硬件编程 272 5.4并行接口 273 5.4.1老旧的PC并行接口 274 5.4.2高速总线 274 5.4.3GPIO 274 5.4.4Linux访问GPIO 275 5.4.5GPIO的Python包 276 5.5串行接口 277 5.5.1异步通信串行口 277 5.5.2I2C总线 284 5.5.3SPI总线 290 5.5.4与其他硬件平台相关的Python包 294 5.6USB总线 296 5.6.1USBEndpoints 297 5.6.2USBDevice/Host/OTG 297 5.6.3USB3.0 297 5.6.4libUSB 297 5.6.5PyUSB 298 5.6.6标准化USB桥接 299 5.6.7与USB相关的其他设计 301 5.7Linux网络设备驱动 301 5.7.1TCP/IP套接字编程 301 5.7.2IEEE802.3到IEEE802.11 302 5.7.3网络通信实现方案 302 5.7.4私有通信协议栈 305 5.7.5短距离无线连接 307 5.8工业总线 310 5.8.1CAN总线 310 5.8.2LIN总线 312 5.8.3其他ASIC 313 5.8.4定制Python扩展 313 5.8.5WindowsDLL 314 5.9本章小结 314 第6章嵌入式Python虚拟机 315 6.1嵌入式高级语言平台大荟萃 315 6.1.1高级语言与二次开发 315 6.1.2BASIC 319 6.1.3Java 319 6.1.4Lua 322 6.1.5JavaScript 322 6.1.6.NET 323 6.2前一代Python虚拟机 323 6.2.1TelitGPRS模块 323 6.2.2Symbian 325 6.2.3WindowsCE 325 6.2.4OpenMoko 325 6.3深嵌入式Python平台 326 6.3.1LEGOEV3 326 6.3.2TinyPy 326 6.3.3嵌入式Python的局限 327 6.4PyMite 328 6.4.1硬件平台 328 6.4.2维护者 329 6.4.3pymbed分支 329 6.4.4开发现状 331 6.4.5文档 332 6.4.6源码树 333 6.4.7使用流程 335 6.4.8实践 336 6.4.9工程小结 337 6.4.10网络资源 338 6.5VIPER/Zerynth 338 6.5.1硬件平台 339 6.5.2ZerynthStudio 340 6.5.3与标准Python的区别 341 6.5.4快速启动 342 6.5.5坎坷的使用过程 342 6.5.6Zerynth目录结构 343 6.5.7硬件相关库 344 6.5.8其他特性 355 6.6MicroPython 356 6.6.1工程背景知识 356 6.6.2在线评估网页 358 6.6.3官方硬件平台分支 358 6.6.4衍生项目 359 6.6.5UNIX版本 360 6.6.6MicroPython库 363 6.6.7STM32HAL分支 365 6.6.8NUCLEO-F401RE适配 367 6.6.9pyboard评估 372 6.6.10异步处理和中断处理 389 6.6.11中断处理的普遍问题 392 6.6.12使用心得 395 6.6.13商品化与知识产权 396 6.6.14BBCmicrobit 396 6.7Linux与Python 398 6.7.1Linux中Python的运行环境 398 6.7.2交叉编译CPython 401 6.7.3交叉编译MicroPython 402 6.7.4Jython运行环境 404 6.7.5AndroidSL4A 406 6.8本章小结 407 第7章Python应用APP 408 7.1基于字符的人机界面 409 7.1.1命令行参数 409 7.1.2字符终端开发 410 7.1.3ncurses 411 7.2桌面GUI开发 412 7.2.1Tkinter 413 7.2.2wxPython 414 7.2.3BoaConstructor 415 7.2.4wxGlade 416 7.2.5PyGTK 417 7.2.6PyQt 419 7.2.7PySide 420 7.2.8Enthought 421 7.2.9Cocoa+PyObjC 423 7.2.10JavaAWT 424 7.2.11IronPython与WPF 425 7.2.12其他UI 425 7.3本地WebGUI 426 7.3.1与WebKit相关的Python包 427 7.3.2OneRing 427 7.3.3Pyjs 427 7.3.4PythonFlexx 428 7.4本地可执行文件 429 7.4.1Linux可执行文件 429 7.4.2MacOSX应用程序包 430 7.4.3Windows可执行文件 430 7.4.4pyinstaller 430 7.4.5py2exe 430 7.4.6py2app 430 7.4.7cx_Freeze 431 7.4.8Windows系统服务 431 7.4.9Windows定时任务 432 7.4.10Linux系统服务 433 7.4.11Linux定时任务 435 7.5移动APP开发 436 7.5.1响应式网页 437 7.5.2PhoneGAP应用开发 437 7.5.3SL4A 437 7.5.4QPython开发 441 7.5.5Kivy 443 7.5.6其他开发方式 449 7.6本章小结 449 第8章Python开发辅助支持 451 8.1物联网开发需要不断优化 452 8.2专属小工具 452 8.2.1单位转化器 453 8.2.2内码转换器 454 8.2.3其他编码转换 455 8.3原型验证 458 8.4代码生成器 459 8.5软件测试 461 8.5.1unittest单元测试 462 8.5.2socket压力测试 462 8.5.3urllib2远程记录 463 8.5.4PCBA测试 466 8.6文档生成器 468 8.6.1文档格式 469 8.6.2文档生成工具 473 8.7文档操纵 477 8.7.1Doc文档操纵 477 8.7.2Excel表格操纵 478 8.8国际化与本地化 479 8.8.1gettext 479 8.8.2Web多语种切换 482 8.8.3字库文件生成器 482 8.8.4GB2312点阵字库提取 482 8.8.5TTF字库提取 483 8.9配置管理 484 8.9.1软件配置管理 484 8.9.2软件配置管理自动化 485 8.9.3GitBash 485 8.9.4Dulwich/Gittle包 485 8.9.5PythonSubversion包 486 8.9.6watchdog系统监控 486 8.10数据与素材处理 486 8.10.1二维码显示 486 8.10.2多媒体相关软件包 490 8.10.3地理位置 494 8.11通信报文分析 495 8.11.1PyShark 495 8.11.2pypcapfile 497 8.11.3scapy和scapy3k 497 8.11.4pcapWeb分析 497 8.12与Arduino/mbed相关的Python包 497 8.12.1ArduinoPrototyping 498 8.12.2pyFirmata 501 8.12.3Py2B 501 8.12.4CmdMessager 501 8.12.5mbed 504 8.12.6mbedRPC 504 8.12.7mbed-ls 505 8.12.8Python-mbedtls 507 8.12.9Python-xbee 508 8.13虚拟仪器 509 8.13.1实时显示波形 510 8.13.2Instrumentino 510 8.13.3Vipy 511 8.13.4PyVISA 511 8.13.5Pythics 512 8.143D/VR/AR 512 8.14.1PyOpenGL 513 8.14.2PySoy 514 8.14.3VPython 514 8.14.4Printrun3D打印 514 8.15本章小结 515 第9章物联网服务器端设计 516 9.1物联网计算模型 517 9.1.1云计算 517 9.1.2WebPaaS与IoTPaaS 518 9.1.3IoTPaaS供应商 518 9.1.4PaaS/IaaS混合架构 524 9.1.5雾计算 525 9.2物联网与互联网设计异同 526 9.2.1基础架构 526 9.2.2标准化程度 527 9.2.3业务模式 527 9.2.4系统构成 527 9.2.5设备接入协议 528 9.2.6数据特性 529 9.2.7系统架构 530 9.2.8数据持久层 532 9.2.9大数据分析架构 534 9.2.10业务耦合与分离 534 9.2.11业务与数据融合 535 9.2.12认证授权与计费 535 9.3物联网网关与边缘服务器 535 9.3.1Pythonsocket服务器 536 9.3.2pyserialRFC2217 536 9.3.3SubGHz网关panStamp 537 9.3.4Rascalmicro 538 9.3.5JavaIoT网关 539 9.4物联网设备接入协议 540 9.4.1异步通信框架Twisted 541 9.4.2Twisted套接字服务器设计 544 9.4.3物联网专用协议 558 9.4.4CoAP 560 9.4.5MQTT 564 9.4.6mosquitto/paho 567 9.4.7RESTAPI 572 9.4.8服务器数据推送技术 572 9.5高可用性与高并发性 575 9.5.1并行与并发计算 575 9.5.2网络I/O模型分类 575 9.5.3架构优化的路径 576 9.5.4关系数据库系统 576 9.5.5SQL/NoSQL/NewSQL 578 9.5.6Redis 579 9.5.7MongoDB 580 9.5.8时序数据库 581 9.5.9消息队列 583 9.6业务与数据融合 585 9.6.1网站权限管理 585 9.6.2认证授权与计费 586 9.6.3OpenID 587 9.6.4OAUTH 587 9.6.5OpenID与OAUTH的异同 588 9.6.6社交化硬件 588 9.7Web开发框架 589 9.7.1MVC模型 589 9.7.2Web开发流程 589 9.7.3PythonWeb百花齐放 590 9.7.4Zope 591 9.7.5Django 591 9.7.6Flask 592 9.7.7gevent提升性能 593 9.7.8异步Web框架Tornado 593 9.7.9异步网络框架Twisted 593 9.7.10异步Web框架Cyclone 594 9.7.11静态网页 594 9.7.12TLS安全网页 594 9.8物联网安全 597 9.8.1物联网安全现状堪忧 598 9.8.2操作系统安全 598 9.8.3数据缓存与数据持久层安全 599 9.8.4Web框架与容器安全 599 9.8.5远程加载风险 600 9.8.6Web前端安全 600 9.8.7传输层安全 601 9.9服务器交付 603 9.9.1虚拟机交付 603 9.9.2Docker容器交付 603 9.9.3VirtualEnv交付 605 9.10服务器运维 605 9.10.1Linux定时任务 606 9.10.2常见的定时任务 610 9.10.3系统监控 611 9.10.4集成化运维软件 613 9.11物联网系统设计实践 614 9.11.1服务器端需求分析 614 9.11.2确定设备接入方式 616 9.11.3物联网的实时要求 617 9.11.4EPICIoT设备服务器 617 9.11.5EPIC架构优化 619 9.12本章小结 625 第10章融合应用与数据分析 626 10.1物联网是可编程的 626 10.1.1WebAPI的“满汉全席” 627 10.1.2WebAPI技术演进 628 10.1.3IoTWebAPI的必要性 628 10.1.4DeviceasaService 629 10.2数据统计、分析和挖掘 630 10.2.1名词解释 630 10.2.2术语小结 631 10.2.3大数据分析 632 10.3采集整理自有数据 633 10.3.1原始设备数据 633 10.3.2数据埋点 633 10.3.3服务器端数据 634 10.3.4需求确定分析方法 637 10.4采集第三方数据 637 10.4.1结构化数据 638 10.4.2半结构化数据 638 10.4.3非结构化数据 639 10.4.4数据录入 644 10.4.5数据融合 644 10.4.6数据规整 646 10.4.7数据交易 646 10.5数据分析 647 10.5.1常见编程语言 647 10.5.2数据分析分类 647 10.5.3科学计算数据分析工具 651 10.5.4统计学数据分析工具 658 10.5.5金融数据分析工具 659 10.5.6大数据平台与生态 661 10.6数据可视化 663 10.6.1数据可视化的发展趋势 664 10.6.2matplotlib 665 10.6.3seaborn 665 10.6.4mpld3 666 10.6.5Chaco 667 10.6.6Pygal 668 10.6.7Plotly 670 10.6.8TVTK 671 10.6.9VPython 672 10.6.10Folium 673 10.6.11NetworkX 674 10.6.12Bokeh 676 10.6.13Mayavi 678 10.6.14Vispy 680 10.6.15MoviePy 681 10.6.16其他新技术 682 10.7本章小结 682 推荐书目与结束语 683

从芯片到云端

版权说明

1、本站不保存、不存储任何实质资源,以上二维码指向为网盘资源链接,其内容归对应版权方所有
2、如有侵犯版权的情况,请点击下面举报/反馈按钮反馈或发送邮件[email protected]投诉说明情况
3、我们核实后将第一时间删除相关页面内容,谢谢理解和配合

这些人下载过 (12)
  • 寻北姑娘
  • 爷拒绝恋爱
  • 学校你又营业了
  • 大号萝莉
  • 轮回千世衹為換你一個回眸
  • 时光漫步
  • 谁说女人吸烟么魅力
  • 此书无寄出
  • 向南
  • 猪木狼马峰
  • 直心人
  • 与人相处时
最新回复 (0)

    暂无评论

请先登录后发表评论!

返回
请先登录后发表评论!