ZHLH 发布的文章

最近学校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,让此模块可玩性大了很多(●´∀`●)

ESP8266电子积木折腾记(二)

有时候要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

收集一些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