H7两个串口初始化问题
-
模块A sbus = UART(1, 100000, timeout = 1) #串口初始化 模块B uart = UART(3,115200,timeout = 1)
分别在两个模块中初始化两个串口,然后在main模块import模块A,再import模块B。只有模块B的串口3有用,串口1无法读到数据。将import模块B屏蔽掉,串口1可以正常接收。请问有什么办法解决的吗?
-
有了解这个问题的吗的吗?
-
提供全部代码,否则没法测试。
-
import time import struct,math from pyb import UART,Timer print("Module:LORA") uart = UART(3,115200,timeout = 1) def Read_UART(): #print('read_uart') Rx = uart.read() print('Rx:',Rx) if (Rx != None): #print('ok') print(Rx,type(Rx)) print('Module:遥控') sbus = UART(1, 100000, timeout = 1) #串口初始化 def recv(): data = sbus.read() print('data:',data) #while True: def Remote_Ctr(): #遥控器控制 recv() while(True): Read_UART() #无线模块接收 Remote_Ctr() #遥控模块接收
-
@kidswong999 我上传了主要接收代码,校验部分没放上去。但就如图所示一直只有串口1(data)的数据,没有串口3(RX)的数据
-
你要用上传代码测试。上传的代码要和实际的代码一样。否则我没法测试。
-
This post is deleted!
-
@kidswong999 我用这个代码测试过了,就会有同样的问题。
-
@kidswong999 问题已解决是我板子的硬件问题
-
老哥在不,我最近也在用openmv做一个sbus协议的通信,但是在发送数据这一块出了点问题,我是用C语言写了一个dll然后python端import ctypes来进行sbus数据的解码和组合,可以交流一下不