Python读MCU串口

将Jupyter Notebook(.ipynb)文件转换为Python(.py)文件的3种方法_python_脚本之家

python 复制代码
#!/usr/bin/env python
# coding: utf-8

# In[ ]:

import sys
import serial
import threading
from datetime import datetime

input_flag = 0

class UART(object):
    def __init__(self,port,baud):
#         print("初始化")
        self.err = 0
        try:
            self.serial = serial.Serial(port,baud)
            print("串口连接成功")
        except:
            print("串口连接失败")
            self.err =  -1;
    def uart_rev_wait(self):
        print("开始接收")
#         串口接收
        while(True):
            try:
                rev_data = self.serial.readline()
#                 text = "当前时间"
                now = datetime.now()
                formatted_str = now.strftime('%Y-%m-%d %H:%M:%S')
                data = formatted_str +"------"+ "串口数据:"+ rev_data.decode();
#         print("DEV_NUM:"+port)
                print(data)
            except:
                print("接收数据失败")
        
    def uart_rev_start(self):
        print("创建接收线程")
        thread = threading.Thread(target=self.uart_rev_wait,daemon = True)
        thread.start()


if __name__ == '__main__':
#     print("主线程")
    uart0 = UART("COM27",115200)
    if(0==uart0.err):
        print("init UART success")
        uart0.uart_rev_start()
    
    while(True):
#         print("主线程runing")
        if(input_flag == 1):
            break;
        
    print("exit")

# In[ ]:
相关推荐
念念01072 小时前
数学建模竞赛中评价类相关模型
python·数学建模·因子分析·topsis
四维碎片2 小时前
【Qt】线程池与全局信号实现异步协作
开发语言·qt·ui·visual studio
IT码农-爱吃辣条2 小时前
Three.js 初级教程大全
开发语言·javascript·three.js
云天徽上2 小时前
【数据可视化-94】2025 亚洲杯总决赛数据可视化分析:澳大利亚队 vs 中国队
python·信息可视化·数据挖掘·数据分析·数据可视化·pyecharts
☺����2 小时前
实现自己的AI视频监控系统-第一章-视频拉流与解码2
开发语言·人工智能·python·音视频
染翰3 小时前
lua入门以及在Redis中的应用
开发语言·redis·lua
王者鳜錸3 小时前
PYTHON让繁琐的工作自动化-函数
开发语言·python·自动化
兔老大RabbitMQ3 小时前
git pull origin master失败
java·开发语言·git
tt5555555555553 小时前
C/C++嵌入式笔试核心考点精解
c语言·开发语言·c++
xiao助阵3 小时前
python实现梅尔频率倒谱系数(MFCC) 除了傅里叶变换和离散余弦变换
开发语言·python