MicPython

MicroPython是澳大利亚程序员和物理学家Damien George在2013年一次成功的众筹活动后最初创建的。MicroPython 和 CPython 在 Python 3 语法上保持高度的一致性,常用的标准语法命令都已经支持

Python语言有多种实现。如CPython、Jython、PyPy等。可以说MicroPython正是这Python大家族中的一员。但与其他Python成员不同的是,MicroPython更适用于嵌入式系统,如ESP8266、ESP32、Pico树莓派等物联网开发板。CPython是目前最为流行的Python实现,可以说CPython就是标准Python了。

既然有了CPython那为何还要多一个MicroPython呢?

Python与MicroPython所适用的系统在硬件资源和软件环境上差别很大。物联网开发板可供用户使用的的内存只有几Mb。而电脑或手机内存最少也有1Gb,天壤之别。

通常嵌入式开发里最流行的语言是C,学习Python或MicroPython是不是多此一举呢? 咱就玩玩,怎么方便,怎么快乐怎么来!人生苦短,快用python。用这个有啥优势呢

动态开发

使用C语言开发时,需要将写好的程序编译成二进制文件然后上传开发板。如果修改程序内容,则需要再次编译,再次上传。贼麻烦(你要是用过Arduino IDE你就知道,那个编译速度 啧)。而MicroPython是一种动态语言。无需编译就可以直接让开发板运行程序内容。同时,我们在程序执行过程中也可以动态的调整程序参数,十分便于我们调试程序。

OTA开发

所谓OTA就是无需用电脑与开发板联线就可以实现设备固件更新。MicroPython配有webrepl开发环境,便于我们使用WiFi对开发板进行固件更新或修改。wifi一连,啪就上去了,很快啊

更便捷的文件管理

MicroPython固件一刷,ESP8266就像个一个小型操作系统,文件系统都有了,还要啥自行车。

丰富的开源库让开发更加便捷

和Arduino一样MicroPython也有非常丰富的开源库供我们使用。无论是控制电机、取传感器信息还是使用HTTP协议或MQTT协议、实现物联网操作。这可比用C开发快多了,MicoPython代码跑的可能不如用C写的编译好的二进制快,who care

搭建环境

linux+esp8266+micpython 咱们当然是在linux下整!

第一步:确定端口

确定你的esp8266的端口号

注意这时候还没有将你的esp8266插入电脑

esp8266连入电脑

多了个/dev/ttyUSB0没错,你的esp8266对应的端口号就它了。

linux一切皆文件,来瞅瞅这个文件的属性,看看我们一会儿有没有权限通过这个文件刷入固件MicoPython固件。

果然没有权限。 自己加!

权限777 加满 能要的俺全要。

不用太担心安全性,等你usb一拔,再插上权限又都没了。ttyUSB0是个临时文件

第二步:下载固件

MicroPython官网 www.micropython.org下载固件

第三步:擦、刷

# 安装工具
pip install esptool
#先擦
~/.local/bin/esptool.py --port /dev/ttyUSB0 erase_flash
#后刷
~/.local/bin/esptool.py --port /dev/ttyUSB0 --baud 115200 write_flash --flash_size=detect 0 ./esp8266-20210420-unstable-v1.15.bin



行了,你的esp8266现在就像个小操作系统啦,能解释MicoPython程序了

第四步:开发环境

我们来看看

安装thonny

# Arch 系列
sudo pacman -S thonny
#ubuntu
sudo apt install thonny

打开thonny 工具 > 设置 > 解释器

成了!!!

Linux+MicroPython+esp8233 YES!的更多相关文章

  1. Linux 27 岁了!盘点 Linux 的 27 件趣事

    Linux 27 岁了!盘点 Linux 的 27 件趣事 许多人认为10月5日是 Linux 系统的周年纪念日,因为这是 Linux 在1991年首次对外公布的时间.不过,你可能不知道的是,早在19 ...

  2. 高度可配置的 Linux 内存守护程序 Nohang!

    导读 Nohang 是一个 Linux 守护程序,也是一个高度可配置的 OOM(内存溢出)阻止工具,适用于 Linux 系统,能够有效地防止内存不足的情况. 部分功能特性 具有良好注释的配置文件,配置 ...

  3. 好消息,Manjaro Linux 18 已正式发布!

    导读 Manjaro Linux 18 已正式发布!Xfce 版本仍然是旗舰,Manjaro 为其提供了优雅且领先的集成体验.这一版本搭载 Xfce 4.13. 这一版本主要专注于在桌面和窗口管理器上 ...

  4. Linux下Setuid命令! 转载

    Linux下Setuid命令! 转载  在Linux系统中每个普通用户都可以更改自己的密码,这是合理的设置. 问题是:用户的信息保存在文件/etc/passwd中,用户的密码保存在文件/etc/sha ...

  5. 【转】linux之pmap命令!

    原贴:http://tonykorn97.itpub.net/post/6414/249221 linux之pmap命令! ====================================== ...

  6. 祝贺 Linux 25 岁:25 个关于 Linux 的惊人真相!【转载】

    作者:Javen Fang链接:https://zhuanlan.zhihu.com/p/22222383来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 25 年前的这 ...

  7. Linux简介(好!)

    Linux操作系统介绍 来源:233网校论文中心[ 2009-12-02 14:23:00 ]阅读:1作者:王长青编辑:studa20 [摘 要]文章从Unix.Minix系统的产生引出了Linux操 ...

  8. 新手之VM下安装centos版本Linux系统完整版!

    一.安装必备软件 1:下载好VM workstations虚拟机 2:下载好你要安装的centos版本. 如果没有,请自己先百度下载好~或者找我要. 二.开始安装 VM workstation部分 1 ...

  9. 从 0 → 1,学习Linux该这么开始!

    首先我们还是来普及以下概念,讲点虚的.现在是图形系统的天下,windows我们用了20多年.成功归功与它图形界面,你会点鼠标吗你会敲键盘吗?所以你会上网会聊天会玩游戏了.那么,0基础接触的Linux, ...

随机推荐

  1. 自己写的一个抢票加速的Python小程序源码分享-----纯属娱乐

    最近这段时间频频看到微信群里发什么 抢票加速,智行.携程.飞猪.美团,对于我这能坐客车就不坐火车的人来说,无所谓靠谱不靠谱 突发奇想的整理了下整个抢票加速的逻辑,写了这个小程序,代码很low,拒绝批评 ...

  2. Yarn框架的一般过程

    基本过程图: Clinet向ResouceManager发送Job请求 ResouceManager接受到请求后在自身开启一个Container 来运行的ApplicationManager组件,Ap ...

  3. 5. vue常用高阶函数及综合案例

    一. 常用的数组的高阶函数 假设, 现在有一个数组, 我们要对数组做如下一些列操作 1. 找出小于100的数字: 2. 将小于100的数字, 全部乘以2: 3. 在2的基础上, 对所有数求和: 通常我 ...

  4. 五分钟学会generator函数

    什么是generator函数? 常规函数只会返回一个单一值(或者不返回任何值). 而 Generator 可以按需一个接一个地返回("yield")多个值.它们可与 iterabl ...

  5. http接口的学习(暂时只是记录,测试之后重新更新)

    链接1:https://blog.csdn.net/java173842219/article/details/54020168 链接2:https://blog.csdn.net/u01132074 ...

  6. Spirng 循环依赖报错:Requested bean is currently in creation: Is there an unresolvable circular reference?

    1:前言 最近在项目中遇到了一次循环依赖报错的问题,虽然解决的很快,但是有些不明白的地方,特此记录. 在此我把 bean 的结构和 注入方式单独拎出来进行演示 1.1:报错提示 1.2:错误日志 Ex ...

  7. Jmeter的脚本参数化

    一.变量 Jmeter中的变量用法:${变量名称} 变量定义:两种 1.用户定义变量 User Defined Variables 2.用户参数  User Parameters 1.1用户定义变量 ...

  8. Linux速通07 硬盘分区、格式化及文件系统管理

    硬件设备与文件名的对应关系 # 在Linux系统中,每个设备都被当作一个文件来对待 # 各种设备在Linux中的文件名 设备 设备在Linux内的文件名 IDE硬盘 /dev/hd[a-d] SCSI ...

  9. 浅谈.Net Core后端单元测试

    目录 1. 前言 2. 为什么需要单元测试 2.1 防止回归 2.2 减少代码耦合 3. 基本原则和规范 3.1 3A原则 3.2 尽量避免直接测试私有方法 3.3 重构原则 3.4 避免多个断言 3 ...

  10. springcloud知识点总结

    一.SpringCloud面试题口述1.SpringCloud和DubboSpringCloud和Dubbo都是现在主流的微服务架构SpringCloud是Apache旗下的Spring体系下的微服务 ...