openmv串口自发自收是正确的,openmv给stm32串口发送数据接收都是0,是什么原因
-
import time
from machine import UARTfrom pyb import LED
#from pyb import UART
OpenMV4 H7 Plus, OpenMV4 H7, OpenMV3 M7, OpenMV2 M4 的UART(3)是P4-TX P5-RX
uart = UART(3,115200) #OpenMV RT 注释掉这一行,用下一行UART(1)
#uart = UART(1, 19200) #OpenMV RT 用UART(1)这行,注释掉上一行UART(3)OpenMV RT 只有串口UART(1),对应P4-TX P5-RX; OpenMV4 H7 Plus, OpenMV4 H7, OpenMV3 M7 的UART(1)是P0-RX P1-TX
red_led = LED(1)
green_led = LED(2)
res = 0while(True):
uart.write('3')
time.sleep_ms(1000)
if uart.any():
res = uart.read()
k= int(res)
if k >= 1:
red_led.on()
time.sleep_ms(1000)
red_led.off()
else:
green_led.on()
time.sleep_ms(1000)
green_led.off()
# green_led.on()
# time.sleep_ms(5000)
# green_led.off()
-
如果接线没有错误的话,OpenMV的数据发送到STM32上的话,STM32是无法直接解析出来的,OpenMV发过去的是一个字符串,而STM32接收到的只是一个16进制(或者ASC码表所对应的值)