找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1753|回复: 5
打印 上一主题 下一主题
收起左侧

求大神指教 按键后若红外感应有人则亮灯警报

[复制链接]
回帖奖励 60 黑币 回复本帖可获得 10 黑币奖励! 每人限 1 次(中奖概率 40%)
跳转到指定楼层
楼主
ID:330582 发表于 2018-5-30 12:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 1sdaw123 于 2018-5-30 20:28 编辑

#include<reg51.h>
sbit Key=P1^3;
sbit hongwai=P1^4;
sbit LED=P0^0;
sbit SPK=P0^2;

void DelayUs2x(unsigned char t);
void DelayMs(unsigned char t);
void KEY();
main()
{
while(1)
{
        KEY();
}
}
/*------------------------------------------------
                                独立按键与红外
------------------------------------------------*/
void KEY()
{        Key=1;
        if(!Key)
{       
        DelayMs(10);
        if(!Key)
        {
                if(hongwai==1)
        {
                LED=0;
                SPK=!SPK;
                LED=1;
        }else LED=1;
                while(Key);
}
}
}
/*------------------------------------------------
延时函数
------------------------------------------------*/
void DelayUs2x(unsigned char t)
{   
while(--t);
}
/*------------------------------------------------
mS延时函数,含有输入参数 unsigned char t,无返回值
unsigned char 是定义无符号字符变量,其值的范围是
0~255 这里使用晶振12M,精确延时请使用汇编
------------------------------------------------*/
void DelayMs(unsigned char t)
{

while(t--)
{
     //大致延时1mS
     DelayUs2x(245);
         DelayUs2x(245);
}
}

为什么我试验的时候 蜂鸣器不是正常发声 声音很奇怪 LED灯也很微弱



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:330582 发表于 2018-5-30 12:09 | 只看该作者
51单片机 德飞莱的板子
回复

使用道具 举报

板凳
ID:328014 发表于 2018-5-31 00:42 | 只看该作者
蜂鸣器换成无源的会好一点
回复

使用道具 举报

地板
ID:326783 发表于 2018-5-31 07:12 | 只看该作者
Key()函数有问题
回复

使用道具 举报

5#
ID:342079 发表于 2018-5-31 12:44 | 只看该作者
论文谁会写
回复

使用道具 举报

6#
ID:330582 发表于 2018-5-31 13:18 | 只看该作者

哪里有出问题 可以具体的解释一下么 才学 不太扎实..谢谢了
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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