at89c51芯片加上cd4511bcn做一个计数器出错,请教下挫在那里?

adsl50681   2008-7-13 16:49 楼主
at89c51芯片的p0管脚作为2个四位bcd码的输出到cd4511bcn中去,然后通过cd4511bcn输出到2个8段显示器中,但是总是没有任何反应,请各位帮忙看看:以下是代码:
-+

  1.         COUNT        EQU         30H
  2.         S1        BIT         P1.0
  3.         S2        BIT        P1.1
  4.         ORG        0000H
  5.         MOV        P0,#00H
  6. WAIT1:        JB        S1,WAIT1
  7. START:        MOV         COUNT,#00H        ;30H清零
  8. NEXT:        MOV         A,COUNT                ;送A
  9.         MOV         B,#10                ;10送B
  10.         DIV         AB                ;A除以B,A放商,B放余数
  11.         MOV         DPTR,#TABLE        ;取表
  12.         MOVC         A,@A+DPTR        ;取商数据送A
  13.         SWAP        A
  14.         MOV R0,A
  15.         MOV A,B
  16.         MOVC A,@A+DPTR
  17.         ADD A,R0
  18.         MOV         P0,A                ;低位段码数据中P0口显示
  19.         CPL        A
  20.         INC         COUNT
  21. WAIT:        JNB        S2,WAIT
  22.         LCALL         K1
  23.         MOV         A,COUNT                ;30H内容送A
  24.         CJNE         A,#100,NEXT        ;A是否到100(显示99后)
  25.         LJMP         START                ;到了返回重新开始
  26. K1:        MOV        R5,#5
  27. D1:        MOV         R6,#0FFH
  28. D2:        MOV         R7,#80
  29. D3:        NOP
  30.         DJNZ         R7,D3
  31.         DJNZ         R6,D2
  32.         DJNZ         R5,D1
  33.         RET
  34. TABLE:        DB        0,1,2,3,4,5,6,7,8,9
  35.         END


回复评论 (4)

怎么没有人回我呀?
点赞  2008-7-14 08:38
不用汇编已好多年……看起来有点吃力了。

怎么不用C51啊?现在很成熟的。

P0口有没有测到输出?
点赞  2008-7-14 10:21
先看看。不用汇编已好多年
点赞  2008-7-14 11:33
老兄,用C就几行....
点赞  2008-7-16 22:07
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复