找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 16973|回复: 27
打印 上一主题 下一主题
收起左侧

[求助]各位大虾,我的跑马灯已经做了两种不同的形式了,恳求第三种?

[复制链接]
跳转到指定楼层
楼主
ID:2690 发表于 2008-6-13 23:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

各位大虾:
      小妹,我好不容易弄来了两种跑马灯,还差一种从两面到中间或者中间到两面的,请各位大虾帮我接着写下去吧~~~最好附带注释的,想学一下  ^ ^ 谢谢.
  
 

  ORG 0000h
      ljmp 0030h
      org 0030h
START: MOV A,#0FEH
LOOP:  MOV R0,#7
LOOPL: MOV P1,A
       RL A
       CALL DELAY
       DJNZ  R0,LOOPL
       MOV R0,#7
LOOPR: mov r1,#7
       MOV P1,A
       RR  A
       CALL DELAY
       DJNZ r1,LOOPR
       LJMP LOOP
DELAY: MOV R7,#200
D1:    MOV R6,#250
       DJNZ R6,$
       DJNZ R7,D1
       RET
       END

     此致
   敬      礼

 


                                                                                 菜鸟小妹(上)
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:2690 发表于 2008-6-14 18:23 | 只看该作者

哪位大虾行行好啊~~~~~复一下贴啊````

回复

使用道具 举报

板凳
ID:7 发表于 2008-6-14 23:29 | 只看该作者

c语言的要不?

回复

使用道具 举报

地板
ID:2006 发表于 2008-6-15 10:09 | 只看该作者
从两边到中间亮灯程序如下,从中间到两边只要把顺序依次反过来就行了。
ORG     0000H
AJMP    START                  
ORG     0030H    
START: MOV     P1,#7EH    ;点亮LED0和LED7
            ACALL    DELAY     ;延时亮一定时间
            MOV    P1,#0BDH
            ACALL    DELAY
            MOV    P1,#0DBH
            ACALL    DELAY
            MOV    P1,#0E7H   ;点亮LED3和LED4
            ACALL    DELAY
            AJMP     START
DELAY: MOV R7,#100
DEL1: MOV     R6,#200
         DJNZ     R6,$
         DJNZ     R7,DEL1
         RET
         END

方法不止一种,仅供参考。
回复

使用道具 举报

5#
ID:2006 发表于 2008-6-15 10:17 | 只看该作者

如果要实现从两边到中间接着又从中间到两边的话,就可以建立一个TABLE,用查表的方法来实现,LZ认真想想不难的,或你直接在亮完中间两灯后继续反过来向外依次亮灯也能实现。

回复

使用道具 举报

6#
ID:2690 发表于 2008-6-15 12:28 | 只看该作者
 TO  xb_crazyman   
C语言的不行啊,还没学到  .呵~~~
回复

使用道具 举报

7#
ID:2690 发表于 2008-6-15 12:29 | 只看该作者
TO yysmcu
     太感谢拉,等我试一下先```
回复

使用道具 举报

8#
ID:1 发表于 2008-6-15 12:35 | 只看该作者
http://www.51hei.com/mcu/537.html  这里还有一个
回复

使用道具 举报

9#
ID:2690 发表于 2008-6-15 14:22 | 只看该作者
 TO  admin
    谢谢,向左向右的我有了
回复

使用道具 举报

10#
ID:2690 发表于 2008-6-15 14:32 | 只看该作者
 TO 各位:
    我在运行时,显示有错误,但是读不懂它的错误指令,请帮忙我看一下
error A9 :syntax error
error A9 :syntax error
error a3: illegal character
error a3: illegal character
error a3: illegal character

                   是这条程序出什么问题了吗??
                START:      MOV     P1,#7EH 
[此贴子已经被作者于2008-6-15 14:36:11编辑过]
回复

使用道具 举报

11#
ID:1 发表于 2008-6-15 14:49 | 只看该作者
city先生,,我在如下帖子中解答了你的问题。
http://www.51hei.com/bbs/dpj-171-1.html
[此贴子已经被作者于2008-6-15 14:50:08编辑过]
回复

使用道具 举报

12#
ID:2690 发表于 2008-6-16 13:33 | 只看该作者
我已经把两个程序合并好了,然后为了演示方便,需要开关,想请教一下各位,应该怎么加开关?

程序如下:
  ORG 0000h
      ljmp 0030h
      org 0030h
START: MOV A,#0FEH
LOOP:  MOV R0,#7
LOOPL: MOV P1,A
       RL A
       CALL DELAY
       DJNZ  R0,LOOPL
       MOV R0,#7
LOOPR: mov r1,#7
       MOV P1,A
       RR  A
       CALL DELAY
       DJNZ r1,LOOPR
       LJMP LOOP
       ORG     0000H
       AJMP    main                                
main: mov p1,#7eh
       acall delay
       mov p1,#0bdh
       acall delay
       mov p1,#0dbh
       acall delay
       mov p1,#0e7h
       acall delay
       ajmp start
delay: mov r7,#100
 del1:mov r6,#200
       djnz  r6,$
       djnz r7,del1
       ret
       end
回复

使用道具 举报

13#
ID:2690 发表于 2008-6-16 13:34 | 只看该作者

再麻烦各位指点一下了 

回复

使用道具 举报

14#
ID:1 发表于 2008-6-16 16:15 | 只看该作者

开关加在电源上撒

回复

使用道具 举报

15#
ID:2690 发表于 2008-6-16 18:58 | 只看该作者
TO admin
   
 
在程序上不用反映出来吗?
回复

使用道具 举报

16#
ID:2006 发表于 2008-6-16 23:29 | 只看该作者

ORG     0000h
AJMP    START
ORG     0030h
START:JNB    P3.2,LOOP  ;该按钮按下执行左右移流水灯

           JNB    P3.3,main   ;该按钮按下执行两边到中间的流水灯

           SJMP    START
LOOP:MOV     A,#0FEH
         MOV      R0,#7
         JNB    P3.3,main
LOOPL:MOV     P1,A
          RL     A
          ACALL     DELAY
          DJNZ     R0,LOOPL
          MOV     R1,#7
LOOPR:MOV     P1,A
           RR       A
           CALL    DELAY
           DJNZ    R1,LOOPR
           LJMP LOOP
main:JNB    P3.2,LOOP
        mov p1,#7eh
        acall delay
        mov p1,#0bdh
        acall delay
        mov p1,#0dbh
        acall delay
        mov p1,#0e7h
        acall delay
        ajmp main
delay: mov r7,#100
del1:mov r6,#200
       djnz  r6,$
       djnz r7,del1
       ret
       end

[此贴子已经被作者于2008-6-16 23:32:27编辑过]
回复

使用道具 举报

17#
ID:2006 发表于 2008-6-16 23:35 | 只看该作者
注意实验时上面程序最好全部用大写字母编程,以免编译出错
回复

使用道具 举报

18#
ID:2690 发表于 2008-6-17 12:43 | 只看该作者

 TO yysmcu
      
       是的,,明白了,等我烧进去试一下.

回复

使用道具 举报

19#
ID:2690 发表于 2008-6-18 13:11 | 只看该作者
TO 各位大虾
   以上程序都已经烧进芯片了,但是实际运行有问题,它只有左边连续的三盏灯会亮,而且好像还不会动?是不是晶振有问题?听说晶振都很脆弱的。麻烦各位帮我看一下,可能出什么问题了。
回复

使用道具 举报

20#
ID:2006 发表于 2008-6-18 14:33 | 只看该作者

你先测测是不是LED烧了?
还有可以在Keil C 中模拟单步运行,看看IO口状态变化情况啊

回复

使用道具 举报

21#
ID:2690 发表于 2008-6-18 19:06 | 只看该作者

TO yysmcu
   知道拉,原来是有连接芯片底座的焊点没有焊好,现在可以亮了,也可以走了,但是它的走法不是我程序所编的那样,好像由左到右,它是亮一盏,然后左移一格连续两盏同时亮,再一盏一盏亮下去.
  我发现P2.6(A789S52芯片的输出口)和P2.5;P2.1和P2.0总时同时亮同时灭,看上去又不像是短路喔.
    这又是什么问题拉,请教,请教?

回复

使用道具 举报

22#
ID:2690 发表于 2008-6-20 19:48 | 只看该作者
to 各位
   我的跑马灯已经制作出来了,可能是有点虚焊,电路有点不稳定.不过程序总算能用.谢谢各位的帮助,尤其是回过我帖子的各位大虾.
         谢谢

            本贴完!
回复

使用道具 举报

23#
ID:3400 发表于 2008-7-21 15:03 | 只看该作者
!!!!!
回复

使用道具 举报

24#
ID:4325 发表于 2008-8-16 16:23 | 只看该作者
跑马等挺好玩的~~~
回复

使用道具 举报

25#
ID:5415 发表于 2008-9-24 20:08 | 只看该作者

我燒了,運行OK,就延時不夠。LED閃的太快!

回复

使用道具 举报

26#
ID:1 发表于 2009-6-3 02:59 | 只看该作者

大家继续做新的出来啊

回复

使用道具 举报

27#
ID:27334 发表于 2010-12-14 08:59 | 只看该作者
路过拿走
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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