找回密码
 注册
关于网站域名变更的通知
查看: 348|回复: 2
打印 上一主题 下一主题

程序输入51单片机,通电之后蜂鸣器一直响

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2023-2-1 09:43 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 Ele_insect 于 2023-2-1 09:44 编辑
0 a2 }8 K- J# q6 |* J7 R( I" k2 j; t% A! |, k9 _
通电之后蜂鸣器一直响,当我按下按键,蜂鸣器才停止响,而且当按下s2或s4蜂鸣器也响。
5 @, J- C! ]& ^) X7 ^- W大神们帮忙看看。
: Y0 Q, t6 C: l$ {5 A% ~8 `3 B
- @; X$ @' B) }: `, [0 E! I/ N程序目的:
s1按键按下P2^0亮。
s2按键按下流水灯。
s3按键按下蜂鸣器响
s4按键按下数码管显示666

7 w- e; u+ V+ m/ Q9 H% v7 `  c) A) r) D8 T9 G8 z9 ]: h; R& z, {
程序:
#include"intrins.h"
typedef unsigned char u8;
***it LSB=P2^3;
***it led=P2^0;
u8 code smgduan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,
u16 num;     //¶¨ÒåÒ»¸öÈ«¾Ö±äÁ¿
void delay_ms(u16 i)
  int n;
  {
  {
  }
}
void zhshaomiao()
        u16 a;
        if(P1!=0X0F)delay_ms(6);//Ïû¶¶
                switch(P1)         //È·¶¨ÁÐ
                        case(0X07):num=1;break;
                  case(0X0d):num=3;break;
                }
                if(P1!=0XF0)
                                         Ò»ÐÐÔònum²»±ä£¬ÈôÊǵڶþÐÐÔònum¼Ó4£¬ÒÀ´ÎÀàÍÆ*/
                        case(0X70):num=num;break;
                        case(0Xd0):num=num+8;break;
                }
    while((a<100)&&(P1!=0xf0))  //¼ì²âËÉÊÖ
          delay_ms(1);
        }
}
void liushuiled()
        int i;
        delay_ms(20);
        {
                delay_ms(20);
        for(i=0;i<7;i++)
                P2=_cror_(P2,1);
        }
//ÊýÂë¹ÜÏÔʾ666º¯Êý
{
        int a=2;
        {
        {
                {
                        case(1)SA=1;LSB=0;LSC=0;break;
          }
                delay_ms(1);
}
//·äÃùÆ÷Ï캯Êý
{
                beep=~beep;
}
void main()
        while(1)
                zhshaomiao();
                 {P0=0x002=0xff;;led=0;}
                 {P0=0x002=0xff;;liushuiled();}
                         {P0=0x002=0xff;fengming();}
                         {P0=0x00;P2=0xff;;suma666();}
                            delay_ms(1);
}
% [' Z& u/ U- Z2 R" \
: Q. q3 q9 \$ I( c7 S( C# b4 k
1 _$ M% L- f* z7 w

# R9 F* K1 c& F

( S  w  z6 |% a) K( X( N

该用户从未签到

2#
发表于 2023-2-1 11:12 | 只看该作者
因为你扫描按键那里一直对P15口进行取反操作,所以你上电后蜂鸣器就一直鸣叫。按键扫描一直存在蜂鸣器就会一直响。

该用户从未签到

3#
发表于 2023-2-1 11:21 | 只看该作者
需要掌握一些调试技巧。是不是按键抖动的问题
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-6 01:54 , Processed in 0.125000 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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