分类:MicroPython

MicroPython:安卓手机串口连接MicroPython开发板

一般情况下,我们都是使用电脑连接开发板的,在PC机上各种工具都比较方便,在互联网上我们可以找到许多像PUTTY这样方便好用的工具,对于基于ESP8266的Micropython开发板,我们更可以通过无线的方式,使用WebREPL,在手机或电脑的浏览器上连接开发板,进行命令输入,文件传输的操作。

最近,芝麻DIY推出一套DIY套件,可以使用安卓手机发送和接收串口数据,借助该套件的APP,我们可以串口连接MicroPython开发板,从下图我们可以看出,可以读取到开发板启动时的串口输出信息。

APP默认的波特率为:9600,8,1,None,flow off,所以在使用的时候我们要将波特率设置为115200,None,flow off,app目前仅支持9600,38400,115200三个选项。

Continue reading

MicroPython:擦除开发板的FLASH

在平常使用MicroPython for ESP8266的过程中,经常有同学反应,我的程序写错了或者其他一些原因导致开发板无法正常启动,我们可以通过擦除Flash,然后重新烧写固件的方式尝试让开发板重新启动。
我们使用esptool这一工具,对开发板进行操作,这个工具有很多功能,我们今天只使用它来擦除flash,实际上它经常用来更新固件:
我们首先安装程序:
sudo git clone https://github.com/themadinventor/esptool
查看当前目录,会出现一个名为esptool的文件夹,进入该文件夹,输入以下命令安装:
sudo python setup.py install
如果在安装过程中卡住了,可以CTRL-C重试。
安装好以后就可以试用了,我们将板子连接电脑,就绪后,使用以下命令:
sudo esptool.py --port /dev/ttyUSB0 erase_flash
等出现下图所示的那样,就说明完成了.

Continue reading

MicroPython:将开发板连入物联网云平台

MicroPython和一般的python一样,也有很多第三库,多亏了这些类库,使得我们能使用少量语句,就可以完成其他语言大量代码才能完成的工作,大家可以到 www.github.com/micropython/micropython-lib , 查看,下载这些类库,使用工具传到板子上,一个import 就可以使用了。

本次,我们使用搭载ESP8266模块的MicroPython开发板,导入了umqtt.simple.py模块,该模块是对MQTT协议的封装,我们使用MQTT协议,接入中国移动ONENET物联网平台,我们的目的是在物联网平台上发送命令,控制开发板上自带的LED,我们发送‘on’,使得LED亮起,发送‘off’使得LED熄灭。

Continue reading

MicroPython:开发板的模拟I/O操作

ADC:

模数转换(ADC)是一个常见的单片机外设,它能将模拟的电压值转换为二进制数据,它非常适合用来读取传感器的物理值,一般的传感器经过一些电路的转换就可以将生活中的物理量转化为电信号,从而被单片机这样的控制设备读取.

对于MicroPython,感谢乔治-达明(Damien George)做了大量的工作,使我们只用使用一条Python语句就可以控制ESP8266的各种外设,值得注意的是MicroPython支持很多芯片,ESP8266只是其中之一而每种芯片的特性是不同的,拿ADC来说:

ESP8266的ADC是十位精度的,并且读取的电压值最大不能超过1v,如果电压值过大很有可能会损坏开发板.

官方出的Pyboard,使用的是STM32芯片,它的ADC是12位精度的并且能读取的最大电压值是3.3v.

下面我们将演示如果读取ADC的值:

import machine
adc = machine.ADC(0)
adc.read()

Continue reading

MicroPython:导入第三方模块

Python语言之所以如此受欢迎原因之一就是由于他有许多第三方包和类库,大大简化了编程难度,MicroPython也是如此,对于MicroPython自带的诸如OS,sys,time等我们只需要一个import就可以很轻松的将其导入,但是如果使系统不存在的模块就需要我们自己将其导入进去了。
本文探讨将包导入到开发板的方法,抛砖引玉,如果有意见或建议可以到下方评论区留言或者到论坛发帖。
就像普通的python版本一样,MicroPython也支持直接import脚本,我们可以自己编写一个.py脚本文件,然后传入开发板。
下图演示了,将自己的代码文件传入开发板的过程:

Continue reading

Micropython:开机启动用户自定义程序

从Micropython官网上得到的信息我们可以知道,Micropython的文件系统中有两个重要文件,分别是‘boot.py’和‘main.py’,其中‘boot.py’是开机启动执行一次,而‘main.py’是启动后运行,我们的用户程序可以放在‘main.py’中。

在使用STM32芯片的Micropython开发板的时候,我们如果要开机运行用户自己的程序,只需要将开发板连接至电脑,然后就像复制文件到U盘里一样将main.py导入到开发板中,十分简单方便,但是我们使用的ESP8266模块不支持这种操作,下面就简单介绍几种方法,将用户自定义程序导入到开发板中,抛砖引玉,如果有意见或建议,欢迎到下方评论区发言。

第一种:使用Micropython自带的函数进行操作

Continue reading