ESP8266电子积木折腾记(二)
接上记
这个模块对外开放的控制接口太少了,
于是我就开始对模块UART下手,模块TxD、RxD、GND飞线接上USB转串口板:
{% asset_img txrx.jpg %}
然后连接电脑,用PuTTY接收串口数据
接上记
这个模块对外开放的控制接口太少了,
于是我就开始对模块UART下手,模块TxD、RxD、GND飞线接上USB转串口板:
{% asset_img txrx.jpg %}
然后连接电脑,用PuTTY接收串口数据
最近学校IOT创新课程给我们发了套电子积木,
里面包括一些最基础的电子模块,
包括LED,火焰传感器,DHT11,DS18B20,OLED显示屏,继电器,声敏光敏……
并且有一个主控模块:
{% asset_img ESP8266.jpg ESP8266 %}
此模块刷了固件,芯片上电作为AP发出wifi信号,并且利用OLED显示SSID和密码:
{% asset_img metas.jpg METAS %}
手机或电脑接上WIFI,然后向芯片发出Get请求即可间接控制芯片GPIO口:
{% asset_img api.jpg API %}
但是芯片只对外开放了几个API,局限性太大,I2C,UART,SPI端口都没法用
这让我的一堆传感器就没用了啊……(还能不能让我愉快的装逼了
最令我感兴趣的是该电子积木主控是ESP8266,一个被号称为物联网工业里程碑的模块
该模块集成了WIFI收发电路,并且还集成了一个32位的MCU,
正是主控这个MCU,让此模块可玩性大了很多(●´∀`●)
有时候要clone GitHub的项目,如果直接连接,git clone的速度一般只有15K/s,但是如果经过国外代理,亲测速度可以达到300~500k/s,设置代理可以节省大量时间。
要在linux终端中设置代理,首先要安装Proxychains:
sudo apt-get install proxychains
然后配置代理:
vim /etc/proxchains.conf
在最后一行,把
socks4 127.0.0.1 9050
改成
[socks5/socks4/http] [代理服务器的地址] [端口] [用户名] [密码]
保存就配置完成了。
使用的时候,在命令之前加上proxychains即可,如:
proxychains firfox
平时在Linux终端中清一色黑底白字, 如果要显示提醒信息,当然是用醒目的颜色更好了 设置shell字体颜色的格式是:033[显示方式;前景色;背景色m 以下是对应表:
收集一些Python的笔记
print 输出不换行:
print("hello world",end="")
删除字符串最后一个字符:
>>> str = "hello world"
>>> str = str[:-1]
>>> print(str)
hello worl
字符串拼接:
"%s,%s" % ("hello","world")
调用系统命令:
import os
os.system("ping 127.0.0.1") #返回命令的退出状态码
os.popen("ping 127.0.0.1") #返回命令的输出
模拟键盘输入:调用win32api实现,第一个参数为键位码
(键位码表:104键键盘按键码对照)
import win32api,win32con
win32api.keybd_event(121, 0, 0, 0) #模拟按F10
win32api.keybd_event(121, 0, win32con.KEYEVENTF_KEYUP, 0)
列出模块可用变量名:
import sys
print(dir(sys))
使Python脚本可直接执行:
#!/usr/bin/env python3
终端中Python代码补全:
sudo pip3 install ipython
$ipython 发现新世界!
工厂函数:
一种可以记住自身状态的创建函数方式
def f(m):
def g(x)
return x**m
return g
>>> square = f(2)
>>> square(2)
4
>>> cube = f(3)
>>> cube(2)
8