11. ESP32 Micropython编程(Thonny)UART串口通讯

Posted DDGGG1

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了11. ESP32 Micropython编程(Thonny)UART串口通讯相关的知识,希望对你有一定的参考价值。

uart串口通讯

一、串口硬件

ESP32-WROOM-32 有(0,1,2)三个串口端

  • UART0: GPIO3(RXD)和GPIO1(TXD) 用于下载调试串口,引脚不可改变
  • UART1: GPIO9(RXD)和GPIO10(TXD) 外接flash,使用时候请设置其他引脚连接
  • UART2: GPIO16(RXD)和GPIO17(TXD) 可以直接使用

使用时候将 UART2 通过USB转TTL芯片 接到计算机

二、基本程序

在shell终端输入依次输入以下代码

>>> import machine
>>> uart = machine.UART(2,115200)
>>> uart
UART(2, baudrate=115201, bits=8, parity=None, stop=1, tx=17, rx=16, rts=-1, cts=-1, txbuf=256, rxbuf=256, timeout=0, timeout_char=1)

UART(串口号,波特率,8位数据,无奇偶校验,1位停止位,TXD引脚号,RXD引脚号,不使用rts和cts,发送和接收缓存区大小, , ,)

三、计算机控制板载led灯

在主编辑器中输入以下代码,并运行此脚本

import machine
led = machine.Pin(2, machine.Pin.OUT)
uart = machine.UART(2, 115200)

strmsg = ''

while True:
    if uart.any() > 0:
        strmsg = uart.read()
        print(strmsg)
        
        if 'on' in strmsg:
            led.on()
            uart.write('Turning ON led')
            print('Turning ON led')
        elif 'off' in strmsg:
            led.off()
            uart.write('Turning OFF led')
            print('Turning OFF led')
        else:
            uart.write('Invalid command.')
            print('Invalid command.')

在计算机上位机(串口调试助手之类的)软件中

  • 输入led_on 则板载led点亮 (字符中带on就会点亮)
  • 输入led_off则板载led熄灭 (字符中带off就会熄灭)

以上是关于11. ESP32 Micropython编程(Thonny)UART串口通讯的主要内容,如果未能解决你的问题,请参考以下文章

基于ESP32学习MicroPython: 安装MicroPython固件

野路子学习esp32(十七)ESP32-MicroPython OLED AND DHT11 @a.宏万

MicroPython ESP32 读取DHT11温湿度传感器数据

ESP8266 /ESP32软件IIC方式驱动OLED显示字符,基于micropython

MicroPython ESP32 入网和udp数据收发通讯示例

ESP32 MicroPython开发之旅 设备篇⑦ —— dht11 OLED ssd1306,简单上手