20
2016
06

arduino调试ESP8266的代码

最近又完善了arduino调试esp8266的代码

4.gif

#include <ESP8266.h>
#ifdef ESP8266_USE_SOFTWA

02
2016
06

树莓派唤醒局域网中的电脑(WOL)

想远程控制家里的电脑,但是出门忘了开机,下面的代码可以通过树莓派唤醒局域网中的其它电脑

# -*- coding=utf8 -*-
import socket
import struct
def WOL(macaddress):
    if len(macaddress) == 12:
        pass
    elif len(macaddress) == 12 + 5:
        sep = macaddress[2]
        macaddress = macaddress.replace(sep, '')
    else:
        raise ValueError('Incorrect MAC address format')
    data = ''.join(['FFFFFFFFFFFF', macaddress * 16])
    send_data = b''
    for i in range(0, len(data), 2):
        byte_dat = struct.pack('B', int(data[i: i + 2], 16))
        send_data = send_data + byte_dat
    sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
    sock.sendto(send_data, ('255.255.255.255', 7))
    sock.close()
    
if __name__ == '__main__':
    WOL('6C626D4EF0B2')