找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2|回复: 0
收起左侧

单片机调试操作系统 用Trea来解剖和修改示波代码,生成串口指令集,让调试更...

[复制链接]
ID:636442 发表于 2026-7-30 17:50 | 显示全部楼层 |阅读模式
一、示波器的代码难懂
一直以来,想搞清示波的代码原理,但没有深厚的代码能力,难!
51hei图片_20260730165625_952_116.jpg



二、学习Trea编程
1、用Trea来直接分析和修改这些难懂的代码
轻松
51hei图片_20260730165825_954_116.png





51hei图片_20260730165756_953_116.png

2、而且,让Trea设计了一些串口调试指令集,
自己试用,感觉很轻松,
旦凡有一点点,要调和修改数值时,又要改代码,编译,下载或是仿真,,,,
51hei图片_20260730164650_951_116.png





3、这类串口调试指令集,相当于,以前386电脑的DOS操作系统
所以,有没有一种可能,


调试指令指令多了,就形成一套“DOS单片机操作系统”?




[16:45:43.761]发送→h?
                    
[16:45:43.873]接收←
                    === Stop Send ===
                    Version: 3421qyzV126
                    Addr: 0x05 06
                    Commands:
                    sc=xx        Set sample count(1-20)
                    h?           Stop send & show help
                    g?           Start send data
                    sendM1       Send mode 1 data
                    sendM2uv     Send 1 voltage value
                    sendM3AD     Send 1 AD value
                    sendM4AD=5   Send 5 AD hex data
                    sendM05AD=xx Send xx AD hex data
                    sendM06OneAD Read 1 AD value once
                    sendM99      Send seconds value
                    osc00        Show osc01 params
                    osc01,yy,zz,ps,xj Start osc mode
                      yy: Y amp(1-32),32=full,21=2/3
                      zz: cycles/screen, default 10
                      ps: refresh/sec(1-20), default 3
                      xj: X step/refresh(1-128),def 10
                    osc02        Real ADC scope(P1.1)
                    osc02,AD,V=  Read P1.1 AD & V
                      Format: osc,AD=xxxx,V=yyyy(mV)
                    osc02,DV=xx  Set V range (00-05)
                      00:100mV 01:200mV 02:500mV
                      03:1000mV 04:2500mV 05:5000mV
                    osc02,TV=xx  Set time base (00-09)
                      00:100uS 01:200uS 02:500uS
                      03:1mS   04:2mS   05:5mS
                      06:10mS  07:20mS  08:50mS  09:100mS
                    osc02,uart=stop  Stop UART send
                    osc02,uart=start Start UART send
                    osc02,AD(12w),Vs=  1s 100pt 12bit avg AD&Vs
                                  ref=2.5V, ret:osc,AD(12w)=xxxx,Vs=yyyy
                    osc02,zX,max  Ret X axis max: zXmax=0127,
                    osc02,zY,max  Ret Y axis max: zYmax=0063,
                    osc02,zXY,test01=xxxx Draw X/Y 0->max, ms/step
                                  xxxx: interval ms (def:1000)
                                  each step: zX=nnn;zY=kkk;
                    osc02_test02_curvecoordinate_empty Draw empty X-Y axis
                                  show X/Y axis, origin(0,0), max values
                    osc02_P13_8wAD? Set P1.3 8-bit ADC high-speed
                                  display P13ADxxxx on line 2 right
                    clean_screen_oled  Clear OLED screen
                    osc02_IO=P11 Set osc02 ADC pin to P1.1
                    osc02_IO=P13 Set osc02 ADC pin to P1.3
                    osc02_IO?     Query current ADC pin
                    CMD0x01=xx   Hex protocol read AD
                    Hex Protocol:
                    F5 07 05 06 01 xx 00 00 55  Read xx AD
                    F5 07 05 06 02 xx 00 00 55  Read xx AD once


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表