aidLux下的OTG串口收发

项目场景:

android手机+arduino-OTG通信


问题描述

官网aidLux下载安装,安装例程实现串口收发,有许多问题,不适合小白,修改了例程代码,实现串口收发

#encode='utf-8'
from cvs import *
import android
import time
import json
droid=android.Android()

print("waiting....")
result = droid.startSearchSerialUsb()
print("OK....", end = " ")
print(result)
#获取连接并判断
devices = json.loads(result[1])
print(devices)
if devices : # == 'true':
    print('连接成功.....')
else:
    print('No connection')
    while True:
        print("Please plugin Arduino!")
        time.sleep(1)



#连接串口
def connect_device(devices):
    for device in devices:
        #if device['deviceId'] == 2005:
        #if device['deviceId'] == select_device_id:
            #connection = droid.connectSerialUsb(device['port'], device['deviceId'], select_baud)
        connection = droid.connectSerialUsb(0, device['deviceId'], 115200)
        print(connection)
        connect_result = connection[1]
        if connect_result == 'true':
            print('连接成功')

#接收,接收的默认16进制print,需要decode一下
def accept_message():
    message = droid.getReceiveData()[1]
    if message!='':
        mystr=bytes.fromhex(message).decode()
        print(mystr)
    #print(type(message))
    #if message != "":
    #    print(message)
        #print(chr(message))
#写数据
#默认发送16进制,需要将字符串转换
def OTG_write(msg):
    droid.writeSerialData((msg+'\r\n').encode().hex())
    print('OUT:'+msg+'\r\n')
    #droid.writeSerialData("0x2233445566")
#断开连接
def reset_connection():
    droid.disconnectSerialUsb()
    print('.........断开连接.....')
connect_device(devices)
while True:
    needSend=input("发送数据:")
    OTG_write(needSend)
    #droid.writeSerialData(('HELLO'+'\r\n').encode().hex())
    #time.sleep(1)
    accept_message()
    time.sleep(1)
reset_connection()    

原因分析:

提示:这里填写问题的分析:

收发16进制,需要decode和incode一下


后续:

使用多任务的思想,把收发分离

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值