当前位置: 智能网 » 智能硬件 » MicroPython 玩转硬件:串口小实验

MicroPython 玩转硬件:串口小实验

放大字体  缩小字体 发布日期:2020-12-02 12:02:38   浏览次数:113
核心提示:2020年12月02日关于MicroPython 玩转硬件:串口小实验的最新消息:1.引言本篇介绍ESP32上通过MicroPython实现串口数据的收发。 2.环境介绍ESP32 小板:Micro USB线:USB转TT


1.引言

本篇介绍ESP32上通过MicroPython实现串口数据的收发。                     

2.环境介绍

ESP32 小板:

Micro USB线:

USB转TTL:

在进行第3节和第4节实验前,还需要:

将板子G12引脚和USB转TTL的RXD引脚短接将板子G13引脚和USB转TTL的TXD引脚短接

将板子GND引脚和USB转TTL的GND引脚短接

3.串口发送代码如下:

from machine import UART,Pin

uart = UART(2, baudrate=115200, rx=13,tx=12,timeout=10)

uart.write("ESP32 uart send example!")

运行结果如下,

完成的功能即:ESP32通过串口发送数据给USB转TTL设备4.串口接收代码如下:

from machine import UART,Pin

uart = UART(2, baudrate=115200, rx=13,tx=12,timeout=10)

while True:

   if uart.any():

       rev_data = uart.read()

       print(rev_data)

结果如下:在左侧窗口里发送什么,右侧窗口就会接收到什么。

完成的功能即:USB转TLL设备通过串口发送数据给ESP32。如果改为:

from machine import UART,Pin

uart = UART(2, baudrate=115200, rx=13,tx=12,timeout=10)

while True:

   if uart.any():

       rev_data = uart.read()

       print(rev_data.decode())

则结果如下:

两者的输出结果有差异,这里涉及到Python中bytes和str两种数据类型的问题,readline函数的返回值是bytes类型。

strings可以被编码(encode)成字bytes,bytes也可以解码(decode)成strings。更多关于UART使用可以参考:https://docs.micropython.org/en/latest/library/machine.UART.html5.自发自收实验http://www.cirmall.com/bbs/thread-102657-1-1.html 这里有个自发自收的例子,使用前将G12引脚和G13引脚短接在一起。直接将代码复制到串口窗口中,运行结果如下:

使用上一篇介绍的通过 ampy --port COM3 run --no-output uart.py 方法,在串口中可以看到输出结果如下:

细心的读者,有没有发现两者输出结果有什么不同吗?如果没看出来的话,提示一下,大家看看Send Byte: 后面有什么不同。这个原因我想了一段时间,大家知道什么原因吗,欢迎评论区留言。

 
关键词: 串口 引脚 板子


[ 智能网搜索 ]  [ 打印本文 ]  [ 违规举报

猜你喜欢

 
推荐图文
单点液位开关在冷却系统中的相关应用 2019年会议平板市场数据预测分析
基于Raspberry Pi(树莓派)的MCC数据采集卡应用 中国芯片产业已取得了哪些成就
大家都在看
热门标签词

 
 
新能源网 | 锂电网 | 智能网 | 环保设备网 | 联系方式