当前位置: 首页 > news >正文

快速构建串口调试工具

传统的窗口调试工具说 bye bye

#AUTHOR HongDayu
import serial
import readlineclass TddMode:def __init__(self,ser:serial.Serial):self.ser = serdef TddModWriteCommand(self,cmd:str):self.ser.write(f"{cmd}\r\n".encode("utf-8"))return self.ser.readall().decode("utf-8")def NWINFO(self):return self.TddModWriteCommand("AT+NWINFO")CommandLine = TddMode(serial.Serial("COM3", 9600,timeout=1))
wcmd = CommandLine.TddModWriteCommanddef DebugCommandline(argv:list[str]):print(argv)def write_cmd(argv:list[str]):cmd = " ".join(map(lambda x:x,argv))print(wcmd(cmd))COMMANDS = {'debug':DebugCommandline, 'exit':lambda x:exit(0),"write":write_cmd}def completer(text, state):options = [cmd for cmd in COMMANDS if cmd.startswith(text)]if state < len(options):return options[state]else:return Nonereadline.parse_and_bind("tab: complete")
readline.set_completer(completer)while True:user_input = input("TddMod > ")user_argv = user_input.split(" ")if user_argv[0] in COMMANDS.keys():COMMANDS[user_argv[0]](user_argv)elif len(user_input) == 0:continueelse:print("Not Find Command")

windows 下还能补全命令

古老的调试工具可以say bye bye 了

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • PyTorch使用------自动微分模块
  • kotlin—— withTimeoutOrNull的介绍和使用场景
  • js中正则表达式中【exec】用法深度解读
  • Linux相关概念和重要知识点(7)(git、冯诺依曼体系结构)
  • python爬虫:从12306网站获取火车站信息
  • YOLOv9改进策略【注意力机制篇】| CVPR2024 CAA上下文锚点注意力机制
  • neo4j(spring) 使用示例
  • 如何快速上手一个Github的开源项目
  • 【深度】为GPT-5而生的「草莓」模型!从快思考—慢思考到Self-play RL的强化学习框架
  • vue组件的生命周期
  • 常用集合(Set等)
  • CTF夺旗赛经验总结及落地实践,零基础入门到精通,收藏这一篇就够了
  • 跟着问题学12——GRU详解
  • 应用targetSdkVersion升级指导
  • 探索C语言与Linux编程:获取当前用户ID与进程ID
  • 【108天】Java——《Head First Java》笔记(第1-4章)
  • Docker入门(二) - Dockerfile
  • Facebook AccountKit 接入的坑点
  • js学习笔记
  • Vue2.0 实现互斥
  • 百度小程序遇到的问题
  • 前端工程化(Gulp、Webpack)-webpack
  • 吴恩达Deep Learning课程练习题参考答案——R语言版
  • Python 之网络式编程
  • ‌[AI问答] Auto-sklearn‌ 与 scikit-learn 区别
  • # Redis 入门到精通(一)数据类型(4)
  • #162 (Div. 2)
  • #define,static,const,三种常量的区别
  • (2)STL算法之元素计数
  • (3)Dubbo启动时qos-server can not bind localhost22222错误解决
  • (42)STM32——LCD显示屏实验笔记
  • (day 2)JavaScript学习笔记(基础之变量、常量和注释)
  • (NO.00004)iOS实现打砖块游戏(十二):伸缩自如,我是如意金箍棒(上)!
  • (附源码)spring boot火车票售卖系统 毕业设计 211004
  • (附源码)springboot社区居家养老互助服务管理平台 毕业设计 062027
  • (附源码)ssm户外用品商城 毕业设计 112346
  • (七)Activiti-modeler中文支持
  • (四)库存超卖案例实战——优化redis分布式锁
  • (未解决)macOS matplotlib 中文是方框
  • (原創) 系統分析和系統設計有什麼差別? (OO)
  • (转)EOS中账户、钱包和密钥的关系
  • (转)清华学霸演讲稿:永远不要说你已经尽力了
  • (转)原始图像数据和PDF中的图像数据
  • .NET C# 使用 SetWindowsHookEx 监听鼠标或键盘消息以及此方法的坑
  • .NET Core 将实体类转换为 SQL(ORM 映射)
  • .net6Api后台+uniapp导出Excel
  • .Net--CLS,CTS,CLI,BCL,FCL
  • @AliasFor注解
  • @RequestMapping用法详解
  • @RequestParam @RequestBody @PathVariable 等参数绑定注解详解
  • [ vulhub漏洞复现篇 ] Hadoop-yarn-RPC 未授权访问漏洞复现
  • [2013AAA]On a fractional nonlinear hyperbolic equation arising from relative theory
  • [20161101]rman备份与数据文件变化7.txt
  • [23] 4K4D: Real-Time 4D View Synthesis at 4K Resolution
  • [ASP.NET MVC]Ajax与CustomErrors的尴尬