我们从2011年坚守至今,只想做存粹的技术论坛。  由于网站在外面,点击附件后要很长世间才弹出下载,请耐心等待,勿重复点击不要用Edge和IE浏览器下载,否则提示不安全下载不了

 找回密码
 立即注册
搜索
查看: 575|回复: 5

蜂鸣器报警

[复制链接]

该用户从未签到

1

主题

6

回帖

0

积分

一级逆天

积分
0

终身成就奖特殊贡献奖

发表于 2019-12-24 15:34:13 | 显示全部楼层 |阅读模式
/********************************************************
                                   蜂鸣器报警
操作方法:将POWERSUPPLY SWITCH 中的BUZZSW开关打开,
                JUMP LINE HAT中的跳线帽取三个使KEY中的S5P32
                短接,S4P33短接,使P05BUZZ短接
********************************************************/
#include<reg51.h>
#include <intrins.h>
sbit bell=P0^5;                                   //蜂鸣器控制端口
sbit s1=P3^2;                              //响声加按键
sbit s2=P3^3;                              //响声减按键

void delayms(unsigned int ms)      
// 延时子程序
{                                       
       unsignedchar i;
       while(ms--)
       {
              for(i= 0; i < 120; i++);
       }
}


void main()
{
       unsignedint num;
       while(1)
       {
               if(s1==0)                              //按键扫描
               {
                    delayms(5);
                     if(s1==0)
                     {
                            while(!s1);
                            if(num==10)           //变量超过10就为10
                                   num=10;
                            else
                                   num+=2;         //否则加2
                     }
               }
               if(s2==0)
               {
                    delayms(5);
                     if(s2==0)
                     {
                            while(!s2);

                            if(num==0)            //变量小于0就为0
num=0;
                            else                 //否则减2
                                   num-=2;
                     }
               }
               
               if(num>=10)                 //响声最大
               {
                    bell=0;
               }
               if(num==0)                          //没有响声
               {
                    bell=1;
               }
               if(num<=9&&num>=1)              //响声可变
               {
                     bell=0;
                      delayms(num);
                      bell=1;
                      delayms(5);
               }
       }

}
回复

使用道具 举报

该用户从未签到

72

主题

1594

回帖

0

积分

1元学习Allegro(2期)

积分
0

终身成就奖优秀斑竹奖

发表于 2019-12-24 16:36:49 | 显示全部楼层
回复

使用道具 举报

该用户从未签到

0

主题

233

回帖

0

积分

二级逆天

积分
0

终身成就奖

QQ
发表于 2019-12-24 22:36:25 | 显示全部楼层
回复

使用道具 举报

  • TA的每日心情
    开心
    2024-9-20 17:59
  • 签到天数: 53 天

    [LV.5]常住居民I

    44

    主题

    884

    回帖

    1129

    积分

    PADS-180606高级班

    积分
    1129

    终身成就奖

    发表于 2019-12-25 08:34:12 | 显示全部楼层
    回复

    使用道具 举报

    该用户从未签到

    1

    主题

    6740

    回帖

    3

    积分

    二级逆天

    积分
    3

    终身成就奖特殊贡献奖原创先锋奖优秀斑竹奖

    发表于 2019-12-25 08:41:02 | 显示全部楼层
    回复

    使用道具 举报

    该用户从未签到

    16

    主题

    256

    回帖

    1

    积分

    二级逆天

    积分
    1

    终身成就奖

    发表于 2019-12-27 08:23:27 | 显示全部楼层
    回复

    使用道具 举报

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

    本版积分规则

    论坛开启做任务可以
    额外奖励金币快速赚
    积分升级了


    Copyright ©2011-2024 NTpcb.com All Right Reserved.  Powered by Discuz! (NTpcb)

    本站信息均由会员发表,不代表NTpcb立场,如侵犯了您的权利请发帖投诉

    平平安安
    TOP
    快速回复 返回顶部 返回列表