Micropython——Pico串口发送数据与回传

上一篇文章讲解了UART(串口)的基本应用,这篇文章用来对串口进行深度解析,我们知道,我们不可能实时监控所发送的数据,这样就需要我们将发送的数据进行存储下来,以便于我们后期的查看,这样才能确保我们后期对于数据的处理。下面就来说一说我们如何实现发送的数据进行保存下来,以便于我们进行数据的处理。

# @Time    : 2022.3.28
# @Author  : Xa_L
# @FileName: UART_ADC.py

from machine import Pin,UART,ADC
import utime

temp = ADC(4)
uart = UART(0,baudrate = 115200,bits = 8,parity = None,stop = 1,tx = Pin(0),rx = Pin(1))
count = 1

while True:
    print('\n\n===============CNT {}==============='.format(count))
    read_temp_voltage = temp.read_u16()*3.3/65535
    temperature = 27 - (read_temp_voltage-0.706)/0.001721
    doc = open('temperature.txt',mode = 'a')
    # 发送一条消息
    print('Send: {}'.format('Temperature {}\n'.format(temperature)))
    doc.write('Temperature {}\n'.format(temperature))
    doc.close()
    uart.write('Temperature {}\n'.format(temperature))
    utime.sleep(3)
    
    if uart.any():
        bin_data = uart.readline()
        print('Echo String:{}'.format(bin_data.decode()))
    count +=1
    print('---------------------------------------')

这里我们实现的是将片内温度发送到电脑上,然后我们每隔3秒收到一次来自片内温度的更新提示(这里我们先PC不往单片机发送数据)。我们可以看一下结果。

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAWGFfTA==,size_20,color_FFFFFF,t_70,g_se,x_16

 然后我们也可以看到我们的文本将每次处理的内容都保存了下来,便于后期处理。

 

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAWGFfTA==,size_20,color_FFFFFF,t_70,g_se,x_16

 上面所看到的只是我们单纯地收到来自单片机往PC机上所发送的数据。

我们也可以将PC机发送给单片机上的数据从我们的串口模拟软件上发送出去,我们能够从软件上看到我们所发送的结果。

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAWGFfTA==,size_20,color_FFFFFF,t_70,g_se,x_16

 

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAWGFfTA==,size_20,color_FFFFFF,t_70,g_se,x_16

 

 

 

posted @ 2022-07-06 08:40  Xa_L  阅读(492)  评论(0编辑  收藏  举报