五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

個人適用的單片機長距離通訊方法(PC-20230910-Wingman)

2023-09-11 00:59 作者:季風(fēng)蒲靈  | 我要投稿

方法由四大部份構(gòu)成: 上位單片機

Air780E

frp

Godot服務(wù)器

Air780E可以事先刷入AT固件,只作為聯(lián)網(wǎng)和通訊之用。其默認(rèn)開啟聯(lián)網(wǎng)功能,常用的聯(lián)網(wǎng)指令如下: AT+CIPSTART=TCP,domain.name,port

AT+CIPSEND

> XX XX XX XX XX XX XX XX XX 1A

上述3條指令由單片機通過串口向Air780E發(fā)送,分別意為: 建立TCP連接

準(zhǔn)備傳送一段數(shù)據(jù)

在串口返回 “>” 符號后,以 十六進(jìn)制 開始像串口輸入數(shù)據(jù),最后以十六進(jìn)制 1A 結(jié)尾表示數(shù)據(jù)傳輸完畢

frp用于獲取在公網(wǎng)上的域名并將本地服務(wù)器端口映射到該公網(wǎng)域名上 Godot可以用于搭建一個簡易的服務(wù)器和圖形界面,其啟用TCP服務(wù)的腳本可參照如下:

extends Node

const HOST := "127.0.0.1"

const PORT := 114

var server := TCPServer.new()

var clientSet:Dictionary

func _ready():

if server.listen(PORT, HOST) == OK:

print("地面站網(wǎng)絡(luò)服務(wù)啟動")

else:

print_debug("地面站網(wǎng)絡(luò)服務(wù)",HOST,PORT,"啟動失敗")

func _process(delta):

for client in clientSet.keys():

client.poll()

# 處理數(shù)據(jù)

var dataLength:int = client.get_available_bytes()

if dataLength:

match client.get_data(dataLength):

[var err, var data]:

if err == OK and dataLength:

handle_data(client, data)

# 清理無效連接

if client.get_status() == StreamPeerTCP.STATUS_NONE:

clientSet.erase(client)

print("TCP連接數(shù):", clientSet.size())

continue

# 處理新增連接

if server.is_connection_available():

var client := server.take_connection()

clientSet[client] = client

print("TCP連接數(shù):", clientSet.size())

func handle_data(client:StreamPeerTCP, data:PackedByteArray):

print("<",data)

func put_data(client:StreamPeerTCP, data:PackedByteArray):

client.put_data(data)

print(">",data)

效果如下圖所示:

個人適用的單片機長距離通訊方法(PC-20230910-Wingman)的評論 (共 條)

分享到微博請遵守國家法律
南京市| 桃江县| 大关县| 永丰县| 阳江市| 威海市| 凉城县| 金塔县| 樟树市| 南漳县| 镇安县| 焉耆| 余江县| 博爱县| 时尚| 大洼县| 天峨县| 邓州市| 德安县| 正安县| 莆田市| 南丹县| 虹口区| 门源| 汪清县| 乳山市| 利川市| 高尔夫| 灵璧县| 常熟市| 松溪县| 安丘市| 资中县| 云霄县| 怀来县| 南安市| 松滋市| 洪湖市| 红桥区| 简阳市| 白沙|