导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→一个小问题,[心灯]

 *第10665篇: 一个小问题,

  
楼 主:心灯 2003年4月19日22:04
 一个小问题,
这个程序有点问题,可以帮一下忙看看吗,谢谢不要笑我呀, 我是菜鸟呀,刚学51单片机,碰到了困难,身边现在没有朋友, 所以就来找大家了,     

 ORG 00H            ;起始地址
START:  MOV DPTR,#TABLE    ;把TABLE表的地址存入数据指针 //将16位的常数存入数据指针
LOOP:   CLR A              ;清除ACC使A中的值为0
        MOVC A,@A+DPTR     ;到数据指针所指的地址取码  累加器的值再加数据指针寄存器的值为其所指定的地址
                           ;将该地址的
        CJNE A,#01, LOOP1  ;取出的码是否为01H?不是则跳到LOOP1
        JMP START
LOOP1:  MOV P1, A           ;将A输出至P1
        MOV R3,#20         ;延时0.2秒
        CALL DELAY
        INC DPTR           ;数据指针加1,取下一个码
        JMP LOOP
DELAY:  MOV R4,#20         ;10毫秒 延时子程序
D1:     MOV R5,#248
        DJNZ R5,$          ;DJNZ Rn REL将寄存器的内减1,不等天刚跳至后面的REL所指的相地址
        DJNZ R4,D1
        DJNZ R3,DELAY
        RET
TABLE:  DB   0FEH,0FDH,0FBH,0F7H  ;左移
        DB   0EFH,0DFH,0BFH,7FH
        DB   0FEH,0FDH,0FBH,0F7H  ;左移
        DB   0EFH,0DFH,0BFH,7FH
        DB   7FH,0BFH,0DFH,0EFH   ;右移
        DB   0F7H,0FBH,0FDH,0FEH
        DB   7FH,0BFH,0DFH,0EFH   ;右移
        DB   0F7H,0FBH,0FDH,0FEH
        DB   00H,0FFH,00H,0FFH    ;闪烁两次
        DB   01H                  ;结束码
        END

  
2楼:红心J 2003年4月21日09:29
 什么问题?
  
3楼:hzuser 2003年4月21日14:17
 堆栈没有设置,在start: 后增加 mov sp,#40
  
4楼:tci3721 2003年4月21日14:21
 建议找一个完整的程序看看初始化设置或看看书但不要以书上例题为准

>>>>>>对该主题发表你的看法

本主题贴数4,分页: [第1页]


[上一篇主题]:再请教大家一个关于仿真器驱动液晶的问题

[下一篇主题]:你到底要什么样的帮助