传感器|使用Ubuntu将ESP8266写入MicroPython固件并连接WIFI进行GET请求
安装驱动 我的是CH320G版本,安装CH320驱动
uname -r
查看自己的内核版本
文章图片
https://elixir.bootlin.com/linux/v5.11/source/drivers/usb/serial/ch341.c#
找到对应的源代码,复制出来并保存为ch34x.c
- 与
ch34x.c
同级目录下编写Makefile
ifeq ($(KERNELRELEASE), )
KERNELDIR := /lib/modules/$(shell uname -r)/build
PWD :=$(shell pwd)
default:
$(MAKE) -C $(KERNELDIR)M=$(PWD)
clean:
rm -rf .tmp_versions Module.symvers *.mod.c *.o *.ko .*.cmd Module.markers modules.order
load:
modprobe usbserial
insmod ch34x.ko
unload:
rmmod ch34x
else
obj-m := ch34x.o
endif
- 目录示例
文章图片
-
make
编译
-
sudo make load
安装
-
sudo make unload
卸载
- 下载
MicroPython
固件www.micropython.org
- 下载写入工具
pip3 install esptool
ls /dev/tty*
查看已有端口ESP8266
USB上电接入电脑ls /dev/tty*
查看多出来的端口就是ESP8266的对应端口(一般是/dev/ttyUSB0
)~/.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-20210902-v1.17.bin
写入的第一步下载的固件
- 下载安装thonny:
bash <(wget -O - https://thonny.org/installer-for-linux)
- 设置IDE: thonny 工具 > 设置 > 解释器
文章图片
-
文章图片
-
help()
查看连接示例
文章图片
- 连接WIFI,并开启热点
import network
import time
import urequestsAP_name='你的无线网名称'
password='你的无线网密码'
sta_if = network.WLAN(network.STA_IF);
sta_if.active(True)
sta_if.scan()# Scan for available access points
sta_if.connect(AP_name, password) # Connect to an AP
while not sta_if.isconnected():
print('connect...')
time.sleep(2)# Change name/password of ESP8266's AP:
ap_if = network.WLAN(network.AP_IF)
ap_if.config(essid="要创建的无线网名称", authmode=network.AUTH_WPA_WPA2_PSK, password="要创建的无线网密码")response = urequests.get('http://www.baidu.com')
print(response.text)
文章图片
-
文章图片
-
文章图片
推荐阅读
- 由浅入深理解AOP
- 【译】20个更有效地使用谷歌搜索的技巧
- mybatisplus如何在xml的连表查询中使用queryWrapper
- MybatisPlus|MybatisPlus LambdaQueryWrapper使用int默认值的坑及解决
- MybatisPlus使用queryWrapper如何实现复杂查询
- iOS中的Block
- Linux下面如何查看tomcat已经使用多少线程
- 使用composer自动加载类文件
- android|android studio中ndk的使用
- 使用协程爬取网页,计算网页数据大小