概述
本文介绍搭建一个简单的物联网系统,系统包括服务器、stm32单片机、手机三部分。
实现功能
手机通过服务器向单片机发送数据,单片机将接受到的数据通过串口打印出来,如果单片机接收到的是点灯指令则点亮小灯。
华为云
本系统使用的服务器是华为云【Flexus L实例】
一年36,爽的很。配置的服务器系统是Ubuntu。
本系统的服务器代码用Python编写,实现功能为:监听网络端口等待客户端的连接,如果某个客户端向服务器发送一段数据,服务器会把这段数据转发给除了发送数据的客户端以外其他所有客户端。
Python代码如下:
import socket
import threading
class Server:
def __init__(self, host='0.0.0.0', port=1234):
self.host = host
self.port = port
self.server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
self.server.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
self.server.bind((self.host, self.port))
self.clients = {
}
self.lock = threading.Lock()
def start(self):
self.server