MicroPython入门指南

MicroPython入门指南 pdf epub mobi txt 电子书 下载 2025

邵子扬 著
图书标签:
  • MicroPython
  • 嵌入式开发
  • Python
  • ESP32
  • ESP8266
  • 物联网
  • 硬件编程
  • 初学者
  • 指南
  • 单片机
想要找书就要到 静思书屋
立刻按 ctrl+D收藏本页
你会得到大惊喜!!
出版社: 电子工业出版社
ISBN:9787121328466
版次:1
商品编码:12281258
包装:平装
丛书名: 智能硬件设计丛书
开本:16开
出版时间:2018-01-01
用纸:胶版纸
页数:288
字数:294000
正文语种:中文

具体描述

编辑推荐

适读人群 :嵌入式领域的教育者、学生,希望在设备上快速实现编程的开发人员,以及非计算机专业的爱好者。

本书介绍国内外开源硬件领域热门的编程技术,用MicroPython做出很酷的东西,就是用Python语言在嵌入式中编程。MicroPython已经可以真正用于开发产品,这是其迅速吸引智能硬件开发者的原因。本书涉及MicroPython基础知识、硬件平台、开发技巧,案例丰富;让小白快速学编程、玩硬件,让工程师真正进行产品开发;适用于创客、发烧友和技术开发者。

内容简介

MicroPython是近年国外开源硬件(也是智能硬件)中*热门的主题之一,它使用Python语言在嵌入式中编程,不需要了解底层寄存器、数据手册、厂家的库函数,大部分外设和常用功能都有自己的库,使开发和移植变得容易和快速。MicroPython已经可以真正用于开发产品,这是其迅速吸引智能硬件开发者的原因。本书带领初学者逐步了解MicroPython的基础知识、硬件平台、开发技巧,采用大量浅显易懂的实例,使读者在实践中快速入门。

作者简介

邵子扬,资深嵌入式和无线应用工程师,开源硬件爱好者,MicroPython/micro:bit中文社区创始人。

目录

第1章 MicroPython简介 001

1.1 MicroPython是什么 001
1.2 MicroPython的历史 001
1.3 MicroPython的特点 004
1.4 授权 005

第2章 基础知识 006

2.1 Python3和MicroPython 006
2.2 MicroPython的系统结构 007
2.3 安装驱动 008
2.4 常用终端软件 010
2.5 MicroPython的REPL 014
2.5.1 REPL的快捷键 014
2.5.2 使用help()函数 015
2.5.3 查看模块包含的变量和函数 019
2.6 MicroPython官方固件 020

第3章 硬件平台介绍 023

3.1 pyboard 023
3.2 ESP8266 028
3.3 其他可以运行MicroPython的硬件 032

第4章 pyboard的使用 041

4.1 快速指南 041
4.2 从闪灯开始 047
4.3 按键的使用 049
4.4 GPIO的使用 050
4.4.1 GPIO的其他函数 052
4.4.2 GPIO的别名 055
4.4.3 直接用端口名称 057
4.5 ADC模数转换 057
4.6 DAC数模转换 058
4.7 定时器(Timer) 063
4.8 UART 068
4.9 I2C 071
4.10 SPI 074
4.11 外中断 076
4.12 USB_VCP 078
4.13 CAN 080
4.14 文件操作 084
4.15 小结 085

第5章 pyboard的Python标准库和微库 086

5.1 内置函数 087
5.2 数组(array) 088
5.3 复数运算(cmath) 089
5.4 垃圾回收(gc) 091
5.5 数学计算(math) 092
5.6 数据流事件(select) 095
5.7 系统功能(sys) 096
5.8 binary/ASCII转换(ubinascii) 098
5.9 集合和容器类型(ucollections) 099
5.10 哈希算法库(uhashlib) 100
5.11 堆队列算法(uheapq) 101
5.12 输入/输出流(uio) 102
5.13 JSON编码解码(ujson) 103
5.14 “操作系统”基本服务(uos) 103
5.15 正则表达式(ure) 108
5.16 socket模块(usocket) 110
5.17 压缩和不压缩原始数据类型(ustruct) 114
5.18 时间函数(utime) 115
5.19 zlib解压缩(uzlib) 120

第6章 MicroPython特别库 121

6.1 简化的BTree数据库(btree) 121
6.1.1 函数 121
6.1.2 方法 122
6.1.3 常量 123
6.1.4 例程 123
6.2 帧缓冲区操作(frambuf) 124
6.2.1 类 124
6.2.2 构造函数 125
6.2.3 绘制基本形状 126
6.2.4 绘制文字 126
6.2.5 其他方法 126
6.2.6 常量 127
6.3 硬件相关函数(machine) 127
6.3.1 复位函数 127
6.3.2 中断相关函数 128
6.3.3 功率管理 128
6.3.4 常量 129
6.3.5 Class 129
6.4 访问和控制MicroPython内部(micropython) 138
6.5 使用网络(network) 140
6.5.1 class CC3K 141
6.5.2 class WIZNET5K 143
6.6 结构化访问二进制数据(uctypes) 144
6.6.1 定义数据结构层 145
6.6.2 模块内容 146
6.6.3 结构说明和实例化结构对象 147
6.6.4 结构对象 147
6.6.5 限制 148
6.7 线程 148
6.7.1 基本函数 149
6.7.2 使用方法 149

第7章 pyboard专用模块(pyb) 151

7.1 时间相关功能 151
7.2 复位功能 152
7.3 中断相关函数 153
7.4 功耗管理 153
7.5 其他函数 154
7.6 类 158
7.6.1 加速度传感器(Accel) 158
7.6.2 方法 158
7.6.3 例程 159
7.7 ADC 159
7.7.1 构造函数 159
7.7.2 方法 160
7.7.3 ADCAll 161
7.8 数模转换(DAC) 163
7.8.1 构造函数 163
7.8.2 方法 163
7.9 三线舵机驱动(servo) 164
7.9.1 构造函数 165
7.9.2 方法 165
7.10 pyb和machine的区别 166

第8章 ESP8266 167

8.1 快速指南 168
8.2 ESP8266专用模块esp 176
8.3 MicroPython标准模块和machine模块 179
8.4 网络配置(network) 179
8.4.1 函数 180
8.4.2 class WLAN 180
8.4.3 构造函数 180
8.4.4 方法 181
8.4.5 连接网络 184
8.4.6 作为http服务器 186
8.5 文件管理软件 189
8.5.1 WebREPL 189
8.5.2 uPyLoader 193
8.5.3 MicroPython File Uploader 200
8.5.4 uPyCraft 201


第9章 使用技巧和常见问题 206

9.1 不能正确识别出PYBFlash磁盘 206
9.2 安装虚拟串口失败 206
9.3 PYBFLASH磁盘中文件损坏或乱码 207
9.4 恢复出厂设置 207
9.5 怎样升级pyboard的固件 208
9.5.1 Linux下升级固件 210
9.5.2 Nucleo开发板升级固件 211
9.6 升级ESP8266的固件 212
9.6.1 需要的软件 212
9.6.2 固件文件 212
9.6.3 进入升级模式 213
9.6.4 esptool.py 213
9.6.5 Flash Download Tools 215
9.6.6 uPyLoader 216
9.7 访问寄存器 217
9.7.1 方法 217
9.7.2 使用STM32的寄存器控制LED 218

第10章 MicroPython应用 219

10.1 计算圆周率 219
10.2 驱动OLED模块 222
10.3 温度传感器DS1820 225
10.4 温湿度传感器DHT11 228
10.5 气压传感器 BMP180 229
10.6 用热敏电阻测温度 237
10.7 在SensorTile上使用MicroPython 242
10.7.1 移植MicroPython固件 244
10.7.2 传感器驱动 246
10.7.3 使用SensorTile制作开源智能怀表项目 261
10.8 其他MicroPython项目链接 270

附录 272

前言/序言

MicroPython是近年开源社区中最热门的项目之一,它功能强大,使用简单,是创客、DIY爱好者、工程师最好的工具,也可以用在专业开发中。

相比另一个创客神器Arduino,MicroPython使用更加简单、方便,入门更快,性能也更好,更加适合初学者。它无须复杂的设置,不需要安装特别的软件和额外的硬件,也不用编译和下载,只要一个USB线,使用任何文本编辑器就可以进行编程。大部分硬件的功能,使用一个命令就能驱动,不用了解硬件底层就能快速开发,对于产品原型设计、软件移植非常有好处,让开发过程变得轻松,充满乐趣。和传统开发方法相比,MicroPython开发产品原型的速度更快,程序也更容易实现模块化,更方便进行维护。和其他类似软件相比,MicroPython是可以真正用在产品开发中的软件。

MicroPython以其开放的架构和MIT授权方式,在很短时间内就风靡世界,全世界有很多爱好者用它做出各种产品和有趣的应用。现在MicroPython已经被移植到了多种硬件平台上,如STM32、ESP8266、ESP32、dsPIC33、RTL8195、CC3200等,让我们有很多选择。

本书可以作为学习MicroPython的入门读物,也可以作为工具书,查看各种API的用法。本书先介绍MicroPython的起源,然后介绍MicroPython的基础知识和硬件平台,再重点介绍STM32和ESP8266上MicroPython的应用方法以及API,最后介绍了几个有趣的应用。通过本书读者可以快速了解并掌握MicroPython。

本书作者作为MicroPython中文社区站长,长期致力于MicroPython的研究和推广。本书的内容是由中文社区活动资料、社区的中文教程、官网英文社区、作者翻译的官网文档等整理而来,希望通过这本书,让广大爱好者和工程师可以了解到国外最新的技术,也希望和更多的爱好者一起交流,共同进步。书中难免存在不足和错误,请广大读者指正。

编著者

2017年10月



《MicroPython入门指南》 开启你的嵌入式开发之旅 在当今科技飞速发展的时代,嵌入式系统正以前所未有的速度渗透到我们生活的方方面面。从智能家居到可穿戴设备,从工业自动化到物联网应用,嵌入式设备无处不在,它们默默地驱动着现代生活的运转。如果你对操控硬件、创造智能设备充满兴趣,渴望将你的创意变成触手可及的现实,那么,这本《MicroPython入门指南》将是你踏入嵌入式开发世界最可靠的领路人。 本书旨在为初学者提供一个全面、系统且易于上手的MicroPython开发环境。我们深知,对于许多人来说,嵌入式开发可能显得深奥且充满挑战,而传统的C/C++语言在初次接触时也可能令人望而却步。正是基于这样的考量,我们选择了MicroPython——一个强大、简洁且功能丰富的Python 3实现,专为微控制器而设计。它继承了Python语言的易读性和易写性,让你能够用更少的代码实现更强大的功能,极大地降低了嵌入式开发的门槛。 本书的价值与特色 1. 零基础入门,循序渐进: 本书假定读者对编程语言有初步的了解,但并不要求读者具备深厚的嵌入式开发经验。我们将从最基础的概念讲起,逐步深入,让你在掌握理论知识的同时,能够通过大量的实践操作巩固理解。每一个章节都围绕着核心知识点展开,并提供清晰的代码示例和详细的操作步骤,确保你能够轻松跟随。 2. 深入浅出,化繁为简: MicroPython虽然强大,但其背后的硬件原理依然是理解其工作方式的关键。本书不会仅仅停留在代码层面,而是会适时地讲解相关的硬件知识,例如微控制器的架构、GPIO接口的工作原理、通信协议的基础等。然而,我们始终坚持“深入浅出”的原则,将复杂的概念以最直观、最易懂的方式呈现,避免过多的理论堆砌,让你在理解的同时,也能感受到学习的乐趣。 3. 海量实践,学以致用: 理论知识的学习离不开实践的检验。本书包含了大量精心设计的实验项目,从简单的LED闪烁到复杂的传感器数据采集与处理,再到物联网设备的连接与通信。这些项目不仅能够帮助你理解MicroPython的各项功能,更能让你在实际操作中锻炼解决问题的能力,从而真正掌握嵌入式开发的技巧。每个项目都提供了完整的代码、硬件连接图以及详细的步骤说明,让你能够一步步搭建并运行你的第一个智能设备。 4. 覆盖核心,面向未来: MicroPython的生态系统日益壮大,其应用范围也越来越广。本书聚焦于MicroPython的核心功能,包括但不限于: MicroPython语言基础: 变量、数据类型、控制流、函数、类、模块等Python核心概念在MicroPython中的应用。 硬件交互: GPIO(通用输入输出)端口的配置与控制,实现对LED、按钮等基本元器件的操作。 传感器与执行器: 如何读取各种常见传感器(如温湿度传感器、光敏传感器、加速度传感器等)的数据,以及如何控制执行器(如电机、舵机、蜂鸣器等)。 通信协议: I2C、SPI、UART等常用硬件通信协议的应用,让你能够连接更多种类的外部设备。 网络通信: Wi-Fi连接、TCP/IP通信、HTTP请求等,为构建物联网设备奠定基础。 嵌入式系统开发流程: 从代码编写、烧录到调试,让你熟悉完整的开发流程。 常用模块介绍: 深入讲解MicroPython提供的标准库模块,如`machine`(用于硬件交互)、`network`(用于网络通信)、`time`(用于时间管理)等。 5. 社区支持与资源拓展: MicroPython拥有一个活跃的全球社区,大量的开发者分享经验、贡献代码。本书在讲解过程中,也会引导读者关注并利用社区资源,鼓励大家积极参与到开源社区中来,不断提升自己的技能。 目标读者 对编程有兴趣的初学者: 无论你是否有编程基础,只要你对通过代码控制硬件、创造智能设备充满热情,本书都是你的理想起点。 希望快速入门嵌入式开发的爱好者: 如果你曾经被传统嵌入式开发语言的复杂性所困扰,MicroPython将为你打开一扇新的大门。 学生与教师: 本书内容系统且实践性强,非常适合作为嵌入式系统、物联网技术等课程的辅助教材。 想要探索物联网(IoT)领域的开发者: MicroPython在物联网开发中扮演着越来越重要的角色,本书将帮助你快速掌握其核心技术。 创客与DIY爱好者: 如果你喜欢动手制作,希望将你的创意项目实现为一个运行的智能设备,那么MicroPython将是你的得力助手。 本书的学习路径 本书的章节安排经过精心设计,旨在形成一个逻辑清晰的学习路径。你将从最基础的MicroPython语法和硬件控制开始,逐步学习更高级的传感器应用、通信协议,最终能够独立设计和实现具有一定复杂度的嵌入式系统。我们建议你按照章节顺序进行学习,遇到不理解的地方,可以回顾前面的内容,或者参考书末提供的参考资料。 《MicroPython入门指南》不仅仅是一本书,它更是你通往嵌入式开发世界的钥匙。 翻开它,你将踏上一段激动人心的探索之旅,用代码赋予你的创意生命,用智能改变你的生活。在这里,你将学会如何与微小的芯片对话,如何让它们感知世界、响应指令、连接网络,最终构建出属于你自己的、独一无二的智能作品。 我们相信,通过本书的学习,你将能够: 自信地编写MicroPython程序,并将其烧录到目标微控制器上。 熟练地运用GPIO接口控制各类电子元器件。 高效地读取和处理各种传感器采集的数据。 掌握常用的硬件通信协议,扩展硬件系统的功能。 构建简单的物联网应用,实现设备之间的互联互通。 培养独立解决嵌入式开发问题的能力。 准备好迎接挑战了吗?让我们一起,用MicroPython点亮你的嵌入式开发之路!

用户评价

评分

拿到《MicroPython入门指南》这本书,我真的是爱不释手!作为一名对编程和硬件都抱有浓厚兴趣的学生,我一直在寻找一本能够帮助我系统学习MicroPython的书籍。这本书的语言风格非常平易近人,即使是对于完全没有接触过嵌入式编程的同学来说,也能轻松理解。它不仅仅是知识的传授,更是一种学习方法的引导。书中对一些核心概念的解释非常到位,并且会用生动形象的比喻来帮助读者理解,这让我感觉学习过程不再枯燥,而是充满了趣味性。我最喜欢的是书中关于“项目实战”的部分,它提供了一些非常具有启发性的项目案例,让我在学习过程中就能够动手实践,并且看到学习成果。这些项目不仅能够巩固我学到的知识,更能激发我的创造力,让我开始思考如何将MicroPython应用到更多有趣的场景中。这本书的排版设计也很棒,代码块清晰明了,插图也很有帮助,这都大大提升了我的阅读体验。我感觉这本书不仅是一本入门教程,更是一本激发我学习热情和探索欲的“魔法书”。

评分

老实说,我买《MicroPython入门指南》这本书,更多的是抱着一种“姑且试试”的心态。平时工作比较忙,接触电子DIY的时间不多,但又想在业余时间学点新东西。一开始,我担心书会过于理论化,枯燥乏味,但这本书完全颠覆了我的想法。它在理论讲解上做得非常到位,但又不会让人觉得晦涩难懂。作者的语言风格很亲切,就像是一位经验丰富的老师在和你面对面交流。让我印象深刻的是,书里关于“如何调试代码”的部分,讲得非常细致,还提供了一些实用的调试技巧,这对于新手来说简直是福音。我之前尝试过一些其他平台的学习资料,经常会遇到各种各样奇怪的bug,但又不知道从何入手解决。这本书在这方面给我的帮助太大了!而且,书中的案例选择也很有代表性,涵盖了数据采集、简单控制等多个方面,让我能够快速地将学到的知识应用到实际项目中,感受到学习的成就感。我已经迫不及待地想跟着书中的指导,去尝试制作一些小玩意儿了,感觉自己离搭建一个属于自己的智能小系统又近了一步!

评分

《MicroPython入门指南》这本书,简直是给我打开了新世界的大门!我一直对物联网和智能家居领域很感兴趣,但又不知道如何下手。这本书的出现,让我看到了将想法变成现实的可能性。它的讲解风格非常现代化,紧跟技术发展的步伐,让我感觉学到的知识是 актуальный 的。书里涉及的很多案例都非常具有前瞻性,比如关于网络通信、传感器数据上传的内容,这让我对接下来的学习和项目开发充满了期待。我尤其欣赏书中关于“如何优化代码性能”以及“如何处理异常”的讲解,这让我在学习基础知识的同时,也能了解到一些更深层次的开发技巧,避免了以后走弯路。这本书不是那种只讲理论的书,它更侧重于实践,通过大量的实例,让读者能够快速上手,并且了解到MicroPython在实际应用中的潜力。我已经迫不及待地想用它来搭建一些更复杂的项目了,比如一个简单的智能温湿度监测系统,或者一个远程控制的小设备。这本书为我指明了方向,让我不再是无头苍蝇,而是有了清晰的学习路径和实践目标。

评分

哇,我刚刚入手了《MicroPython入门指南》这本书,简直是我的MicroPython之旅开启的绝佳伙伴!一直以来,我都对嵌入式开发和物联网充满好奇,但总觉得门槛有点高,尤其是在接触到各种传感器、通信协议的时候,脑子里一团浆糊。这本书的设计真的太贴心了,从最基础的MicroPython环境搭建讲起,一步一步引导你熟悉语法、变量、数据类型,然后是控制流、函数,就像一个循序渐进的教学过程,让你在不知不觉中就掌握了核心知识。而且,它不仅仅是理论的堆砌,书中大量的代码示例都非常实用,每一个例子都清晰地展示了如何将学到的概念应用到实际场景中,比如控制LED闪烁、读取按键输入,这些看似简单的操作,却为后续更复杂的项目打下了坚实的基础。我最喜欢的是,作者在讲解过程中,总会穿插一些“为什么”的解释,而不是简单地告诉你“怎么做”,这让我对MicroPython的工作原理有了更深的理解,而不是死记硬背。对于像我这样完全没有接触过MicroPython的初学者来说,这本书无疑是一盏指路明灯,让我不再感到迷茫和畏惧,而是充满了学习的动力和探索的乐趣。我迫不及待地想继续往后阅读,去解锁更多有趣的MicroPython应用!

评分

我是一个电子爱好者,平常喜欢捣鼓一些小项目,但一直苦于找不到一个合适的入门MicroPython的资料。之前也看过一些网上零散的教程,总是感觉不成体系,碎片化严重,学起来很费劲。《MicroPython入门指南》这本书简直就是为我量身定做的!它系统地梳理了MicroPython的知识体系,从基础的语法到更高级的应用,都讲解得非常清晰。书中的内容组织逻辑性很强,每个章节之间都有很自然的过渡,让我能够循序渐进地学习。我特别喜欢书中关于“硬件交互”的章节,详细介绍了如何使用MicroPython来控制各种常见的传感器和执行器,这对于我这种喜欢动手实践的人来说,太有价值了!我之前对GPIO、I2C、SPI这些概念有些模糊,但通过这本书的讲解和示例,我感觉自己终于豁然开朗了。而且,书中提供的代码示例都是可以直接运行的,这大大节省了我自己编写和调试的时间,让我能更专注于理解代码背后的逻辑。总而言之,这本书的专业性和实用性都非常高,绝对是我近期最满意的一次购书体验!

评分

这个商品有特色超喜欢。

评分

书不错,干净完整新书,内容也不错

评分

业余时间学习学习

评分

此用户未填写评价内容

评分

这个商品有特色超喜欢。

评分

此用户未填写评价内容

评分

包装只有一个塑料袋,书的边角轻微破损。

评分

正在学习中,图书质量很好。

评分

书不错,干净完整新书,内容也不错

相关图书

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 book.idnshop.cc All Rights Reserved. 静思书屋 版权所有