搜索
bottom↓
回复: 8

帮菜鸟提高:流水灯

[复制链接]

出0入0汤圆

发表于 2006-9-6 17:06:34 | 显示全部楼层 |阅读模式
想做个流水灯看看,非常笨重的一个程序,大家帮我看看。

这个程序运行一段时间后就就只有D3亮了,而且整个过程中D8没反应,这是怎么回事呢?

大家有空帮我把这个程序改一改,简洁些,或者可以给个完整的流水灯程序,并不一定是我这个,发到我的油箱,icsee@163.com,谢谢。

现在刚接触汇编,很多都不懂,刚在学中断和定时器这些,好象比较难理解。哎。



点击此处下载armok01128199.rar

出0入0汤圆

发表于 2006-9-6 23:52:08 | 显示全部楼层
发到对应的mcu论坛上去,这里的人关心 proteus ,象我熟悉 PIC 的C语言编程.

出0入0汤圆

发表于 2006-9-7 23:18:42 | 显示全部楼层
楼主的程序改了,其中LS.asm是该楼主的程序,myls.asm是改后的。都能正常运行。

点击此处下载armok01128319.rar

出0入0汤圆

发表于 2006-9-7 23:24:13 | 显示全部楼层
打错字了:楼主的程序改了,其中LS.asm是改楼主的程序,myls.asm是另一种方式做的。都能正常运行。

出0入0汤圆

 楼主| 发表于 2006-9-8 09:22:30 | 显示全部楼层
谢谢,一直在为这个事苦恼,呵呵

希望有空多交流。

出0入0汤圆

 楼主| 发表于 2006-9-8 12:15:29 | 显示全部楼层
问题好象还没有完全解决呢,就你改我的那个程序在运行一时间后灯就不亮了,你不妨看看。我想可能是压栈那边问题,但是改了下没改好。

出0入0汤圆

发表于 2006-9-8 15:52:33 | 显示全部楼层
呵呵,是有问题,把后面的

T8:

  MOV A,38H

  CJNE A,#36,T_RET

  MOV P1,#0FFH

  MOV 38H,#0

  ajmp TIME0

改成

T8:

  MOV A,38H

  CJNE A,#36,T_RET

  MOV P1,#0FFH

  MOV 38H,#0

  MOV 37H,#0

  MOV 36H,#0

  MOV 35H,#0

  MOV 34H,#0

  MOV 33H,#0

  MOV 32H,#0

  MOV 31H,#0

  MOV 30H,#0

就行,我运行了几分钟都没问题

楼主原先的程序D8不亮的原因是

T7:

  MOV A,37H

  CJNE A,#32,T_RET

  CLR P1.7      亮D8

  MOV 37H,#0

  MOV P1,#0FFH  全不亮

  AJMP  TIME0

在亮D8后就立即关闭所有的灯,所以并不是D8不亮而是亮的时间很短,看不见。

而至于运行一段时间后不亮是楼住和我原先都没注意到的。其实原因很简单:例如:第一个循环,当37H=32时,P1.7亮,这时34H=12(32-20),明显当灯全暗后,第二循环34H从12开始计数,即再产生8次中断后P1.4连的灯就亮,可见和第一次的情况不同。多次之后必然产生混乱。所以最好在最后面,把所有单元的值改为0。不过这是挺笨的方法。或是把判断的值改为二的整数倍关系也行,如:

CJNE A,#2,T1

.

.

CJNE A,#4,T2

.

.

CJNE A,#8,T3

.

.

CJNE A,#16,T4

.

.

不过我觉得这应该不是楼主想要的。

呵呵

出0入0汤圆

发表于 2006-9-8 15:57:49 | 显示全部楼层
改为整数倍也不行,不过前一种改法是行的

出0入0汤圆

 楼主| 发表于 2006-9-10 09:28:59 | 显示全部楼层
还有一个问题就是为什么不用AJMP TIME0了呢?

而且在原程序中不加

LOOP:

  AJMP LOOP

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

本版积分规则

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

GMT+8, 2024-5-2 13:38

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

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