打印

请大侠分析下这个蜂鸣器不响的问题,内附源程序。

[复制链接]
1941|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
91mcu|  楼主 | 2007-1-25 10:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
;各位大侠请指导一下,这是一个流水灯程序,但没有办法控制P3.7不知道是什么原因?
;我用的是恒坚电器的一款开发板原理图,自己搭建的一个目标板,源程序则是恒坚提供的。
;软件是Keil  uVision 3 Demo, 仿真头是用SST的芯片做的。
;灯是接的P1口,当P1口为低电平时灯点亮,
;蜂鸣器是P3.7控制的,P3.7为高电平时控制一个三极管的基极,该三极管发射极接地,集电极接蜂鸣器的“—”,蜂鸣器的“+”接+5V。
;现在的问题是怎么弄蜂鸣器都不响,P3.7总是为0。




beep    bit p3.7; 

led1     bit    p1.0;    
led2    bit    p1.1;
led3    bit    p1.2;
led4    bit    p1.3;
led5    bit    p1.4;
led6    bit    p1.5;
led7    bit    p1.6;    
led8    bit    p1.7;


org  00h;

jmp    main;
org    30h;

main:    
    
    mov sp,  #30h;
    
    lcall    reset;
    lcall    pro_led;
    jmp      main;

reset:     mov    a,#00h;
    mov    b,#00h;
    mov    p0,#0;
    mov    p1,#255;
    mov    p2,#255;
    clr beep; 就算这里改成setb beep    ,p3.7依然是0。
    
    ret;

pro_led:
       
       setb  led1;
       clr   led8;
       setb  beep;    在keil里面单步运行这项后,p3.7还是低电平,在P3口的监视窗口中这一位也是显示为0,而P3.6~P3.0为1。
       lcall  delay;
       
       clr   beep;
       setb   led2;
       clr    led1;
       lcall  delay;
    
       setb   led3;
       clr    led2;
       lcall  delay;    


       setb   led4;
       clr    led3;
       lcall  delay;

           setb   led5;
       clr    led4;
       lcall  delay;
    
       setb   led6;
       clr    led5;
       lcall  delay;    


       setb   led7;
       clr    led6;
       lcall  delay;
  
           setb   led8;
       clr    led7;
       lcall  delay;

again:
       setb   led7;
       clr    led8;
       lcall  delay;
      
       setb   led6;
       clr    led7;
       lcall  delay;
    
       setb   led5;
       clr    led6;
       lcall  delay;    


       setb   led4;
       clr    led5;
       lcall  delay;

       setb   led3;
       clr    led4;
       lcall  delay;
    
       setb   led2;
       clr    led3;
       lcall  delay;    


       setb   led1;
       clr    led2;
       lcall  delay;
  
            ret;




delay:    
    
           push  psw
        clr   psw.3
        setb  psw.4

        mov   r0,#2
        mov   r1,#250
        mov   r2,#2

dl1:    djnz  r0,dl1
        mov   r0,#250
dl2:    djnz  r1,dl1
        mov   r0,#240
        mov   r1,#248
dl3:    djnz  r2,dl1
        nop
        pop   psw
        
        ret

        end

相关帖子

沙发
yezhenyu| | 2007-1-25 11:11 | 只看该作者

你的P3.7到三级管的基极有没有电阻?

使用特权

评论回复
板凳
91mcu|  楼主 | 2007-1-25 11:38 | 只看该作者

有接4k7的电阻的,

关键是在keil的调试环境中,P3口的监视窗口显示p3.7为0,而其他的为1,

使用特权

评论回复
地板
91mcu|  楼主 | 2007-1-25 12:27 | 只看该作者

看来还是的帖一份到单片机论坛去。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

12

帖子

1

粉丝