esp32个人例程(micropython)

发布于:2023-01-16 ⋅ 阅读:(314) ⋅ 点赞:(0)

按键控制

from machine import Pin
sw1 = Pin(34, Pin.IN)
sw2 = Pin(35, Pin.IN)
sw3 = Pin(32, Pin.IN)
while True:
    if sw1.value() == 0:
                print("按键:sw1 被按下")
    if sw2.value() == 0:
                print("按键:sw2 被按下")
    if sw3.value() == 0:
                print("按键:sw3 被按下")    

原理图在这里插入图片描述


# 1. 链接wifi
# 2. 启动网络功能(UDP)
# 3. 接收网络数据
# 4. 处理接收的数据


import socket
import time
import network
import machine
from socket import *
from machine import Pin
sw1 = Pin(34, Pin.IN)
sw2 = Pin(35, Pin.IN)
sw3 = Pin(32, Pin.IN)





def do_connect():
    wlan = network.WLAN(network.STA_IF) # create station interface
    wlan.active(True)       # activate the interface
      # scan for access points
    wlan.isconnected()      # check if the station is connected to an AP
    wlan.ifconfig(('192.168.1.17', '255.255.255.0', '192.168.1.1', '192.168.1.1'))
    wlan.config('mac')      # get the interface's MAC address
    wlan.ifconfig()

 


    if not wlan.isconnected():
        print('connecting to network...')
        wlan.connect('ChinaNet-tdS6', 'pjklx9cw')
        i = 1
        while not wlan.isconnected():
            print("正在链接...{}".format(i))
            i += 1
            time.sleep(2)
    print('network config:', wlan.ifconfig()) 


def send(str1):
    
    # 1. 创建udp套接字
    udp_socket = socket(AF_INET, SOCK_DGRAM)
    # 2. 准备接收方的地址
    dest_addr = ('192.168.1.19', 8080)
    # 3. 从键盘获取数据
    send_data = str1
    # 4. 发送数据到指定的电脑上
    udp_socket.sendto(send_data.encode('utf-8'), dest_addr)
    # 5. 关闭套接字
    udp_socket.close()
    print("send ok")





def main():
     do_connect()
     while True:
        if sw1.value() == 0:
                    time.sleep(0.1)
                    if sw1.value() == 0:
                        send("light on")
                        print("按键:sw1 被按下")
        if sw2.value() == 0:
                    time.sleep(0.1)
                    if sw2.value() == 0:
                        send("按键:sw2 被按下")
                        print("按键:sw2 被按下")
        if sw3.value() == 0:
                    time.sleep(0.1)
                    if sw3.value() == 0:
                        send("light off")
                        print("按键:sw3 被按下")  



if __name__ == "__main__":
    main()


本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到