[MCU] 用IO口模拟watch窗口

[复制链接]
1382|10
 楼主| chongdongchen 发表于 2018-5-17 20:45 | 显示全部楼层 |阅读模式
本帖最后由 chongdongchen 于 2018-5-17 20:44 编辑

总有些时候,一个简单的项目往往没有显示界面,只有一个LED显示状态,剩余IO口都有相应功能,而且不能仿真。
这时候想知道运行情况(一些参数),如果是数字量还好,可以直接用LED显示,那模拟量呢,LED想要表达就比较麻烦了。

在这里分享一下我的方法,希望多多指点,并分享你更好的方法。

对,用示波器,比如一个字节,从高位到低位用这个LED的电平顺序输出。

我这里用了三种不同的模式,输出高电平代表1,输出高阻状态(输入状态也可以)代表0,输出低电平代表背景(这样有个好处看得清楚)。
像我这个图片例子里,就可以得出结果是:00000011,也就是0x03。


把这个功能写成一个函数,比如 void LedDispByte (unsigned char dat) ,只要在需要的地方调用一下就可以用示波器观察了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
linqing171 发表于 2018-5-17 22:52 | 显示全部楼层
不错。
在没有做高级调试上位机之前,很多老鸟都有过各种方法。你这个三电平的确实第一次见。以前模仿proteus焊了个洞洞板,上拉绿灯和电阻,下拉红灯和电阻,悬空的时候两个灯都不怎么亮。要测哪几个IO就把哪几个飞到LED板上。1的时候红灯亮,0的时候绿灯亮。

评论

对对,用低端单片机,有没有多余IO口,只能是大开脑洞了  发表于 2018-5-18 09:48
mailshichao 发表于 2018-5-18 08:05 | 显示全部楼层
我一般都是有串口的话,直接用串口输出数据吧,模拟串口输出数据也行

评论

当然了,有串口的话肯定用串口咯  发表于 2018-5-18 09:44
ayb_ice 发表于 2018-5-18 08:32 | 显示全部楼层
直接用IO模拟串口输出,打印字符串,波特率可以搞高点,用串口助手显示,一目了然

评论

这样也是可以,不过要求会高点,在单片机资源受限的情况下(比如1K ROM的单片机),就不适合了  发表于 2018-5-18 09:45
ayb_ice 发表于 2018-5-18 11:07 | 显示全部楼层
ayb_ice 发表于 2018-5-18 08:32
直接用IO模拟串口输出,打印字符串,波特率可以搞高点,用串口助手显示,一目了然 ...

模拟介串口发送花不了一点资源,再说这些都是可禁止的,配置下就可以了
 楼主| chongdongchen 发表于 2018-5-18 11:33 | 显示全部楼层
ayb_ice 发表于 2018-5-18 11:07
模拟介串口发送花不了一点资源,再说这些都是可禁止的,配置下就可以了 ...

仔细一想,的确不会花费太多,不过要把握好时序,毕竟要按照标准走。
模拟串口发送好处是明显的,通过串口助手直接看数据。
好方法,先收下。
linqing171 发表于 2018-5-18 21:39 | 显示全部楼层
有了串口后就开始做电脑程序,然后就一发而不可收拾,早晚要用keil的AGDI接口做仿真器了。

评论

哈哈,你这套思维方式真是说到心里去了。不过还是打住吧,无止境啊。  发表于 2018-5-18 22:34
您需要登录后才可以回帖 登录 | 注册

本版积分规则

55

主题

1238

帖子

10

粉丝
快速回复 在线客服 返回列表 返回顶部