搜索
bottom↓
回复: 13

单片机编程中如何利用LED直观展示程序运行的一些关键点?

[复制链接]

出0入0汤圆

发表于 2015-6-14 10:29:59 | 显示全部楼层 |阅读模式
自己在写32串口程序时,周期性的向从机要数据,调通后主机上有个LED灯,就想让LED的亮灭反应下程序的运行状态,例如周期性收到数据则亮灯,周期性收不到数据就灭灯(由于接受数据到处理的时间短如果在接受到就点灯处理完就关灯闪的太快了)。尝试下编程并不好写,希望有类似经验的前辈指导下。谢谢。

出0入0汤圆

发表于 2015-6-14 10:34:14 | 显示全部楼层
设一个标志位 flag   ,数据接收的代码里面进行判断,设置标志位为1或0
另外用定时器进行led处理,flag为1则置相反状态,为0则关

出0入0汤圆

 楼主| 发表于 2015-6-14 10:52:43 | 显示全部楼层
ksniper 发表于 2015-6-14 10:34
设一个标志位 flag   ,数据接收的代码里面进行判断,设置标志位为1或0
另外用定时器进行led处理,flag为1 ...

恩恩,您的意思我了解,如果能周期性收到数据,定时器会控制灯闪,收不到灯灭,有个疑问,在收到数据做的处理是flag置1,收不到置0,但是由于数据接收的时间很短 ,这就不能保证在定时器中判断的标志位是1吧,可能一直是0 (正好都在数据接收完成置标志位0)。这样灯同样不会闪,前辈指导下。

出5入4汤圆

发表于 2015-6-14 10:56:55 | 显示全部楼层
满足条件触发亮起,用一个单独的进程(比如开启定时器)超时(如100ms)则灭掉。

出0入0汤圆

发表于 2015-6-14 11:00:19 | 显示全部楼层
backyla 发表于 2015-6-14 10:52
恩恩,您的意思我了解,如果能周期性收到数据,定时器会控制灯闪,收不到灯灭,有个疑问,在收到数据做的 ...

每次的时间太短你可以取100次接收成功翻转一次嘛,开定时器看在你定的时间内是不是有100次数据接收成功,如果是就是周期性的,如果不是,那肯定就是有丢包或者没有收到数据的时候咯。

出0入0汤圆

 楼主| 发表于 2015-6-14 11:08:30 | 显示全部楼层
grj0719 发表于 2015-6-14 10:56
满足条件触发亮起,用一个单独的进程(比如开启定时器)超时(如100ms)则灭掉。 ...

谢谢您,我实验过了确实是可以的,并且代码很简洁。

出0入0汤圆

 楼主| 发表于 2015-6-14 11:11:01 | 显示全部楼层
-阿发- 发表于 2015-6-14 11:00
每次的时间太短你可以取100次接收成功翻转一次嘛,开定时器看在你定的时间内是不是有100次数据接收成功, ...

恩恩,这样也是可以的,自己写程序其实用了类似的方法 多次判断,但是感觉代码不很简洁,所以请教下前辈,楼上的方法,用超时来判断,确实好点,不过 很感谢。

出0入0汤圆

发表于 2015-6-14 11:39:50 | 显示全部楼层
我用LED 加示波器。

时间长的 眼睛能看到闪
短的 看两次电平变化时间。

还能测一段代码的运行时间。
当然也用类似5楼的方法。

出0入0汤圆

发表于 2015-6-14 12:42:28 | 显示全部楼层
为什么不直接设断点

出0入0汤圆

发表于 2015-6-14 12:47:59 | 显示全部楼层
augak 发表于 2015-6-14 12:42
为什么不直接设断点

不是所有的MCU都那么高大上的可以支持仿真。。。。

出0入0汤圆

发表于 2015-6-14 12:48:55 | 显示全部楼层
street 发表于 2015-6-14 11:39
我用LED 加示波器。

时间长的 眼睛能看到闪

其实有示波器就什么问题都没有了,哪里不会点哪里。哈哈

出0入0汤圆

发表于 2015-6-14 13:30:15 | 显示全部楼层
哈哈,还是示波器好。

出0入0汤圆

发表于 2015-6-14 14:07:59 | 显示全部楼层
-阿发- 发表于 2015-6-14 12:48
其实有示波器就什么问题都没有了,哪里不会点哪里。哈哈

专业搞的话
还是买个示波器吧, 便宜的就行。

逻辑分析仪也不错。

千把块钱,一个项目提前几天就省出来了。

出0入0汤圆

 楼主| 发表于 2015-6-14 16:32:49 | 显示全部楼层
street 发表于 2015-6-14 14:07
专业搞的话
还是买个示波器吧, 便宜的就行。

程序的调试是没有问题的,做产品嘛,毕竟需要一些直观的东西。多谢大家了。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-19 18:48

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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