找回密码
 立即注册

QQ登录

只需一步,快速开始

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

单片机程序要怎么写才能让蜂鸣器响,LED亮0.5s

[复制链接]
跳转到指定楼层
楼主
程序要怎么写才能让蜂鸣器响,LED亮0.5s,刚刚学这个不太懂麻烦大家了

)UER728VSFMN4`X%7X31192.png (35.72 KB, 下载次数: 85)

)UER728VSFMN4`X%7X31192.png
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

11#
ID:706151 发表于 2020-3-21 11:20 | 只看该作者
若是无源蜂鸣器的话,需要用定时器产生一个pwm波来驱动,pwm波的频率决定发生频率
回复

使用道具 举报

10#
ID:712335 发表于 2020-3-20 22:16 | 只看该作者
写一个延迟函数就行了
回复

使用道具 举报

9#
ID:711282 发表于 2020-3-20 20:48 | 只看该作者
xxpp2011 发表于 2020-3-20 17:29
#include
sbit BUFFER =P2^5;
sbit LED = P2^0;

学到了谢谢。
回复

使用道具 举报

8#
ID:711282 发表于 2020-3-20 20:48 | 只看该作者
飘窗 发表于 2020-3-20 11:54
sbit Beep =P2^5;
sbit Led = P2^0;
while(1)

谢谢,大佬学到了
回复

使用道具 举报

7#
ID:277948 发表于 2020-3-20 18:46 来自手机 | 只看该作者
建议用定时器去做,利用定时中断来控制LED
回复

使用道具 举报

6#
ID:452950 发表于 2020-3-20 17:29 | 只看该作者
#include <reg52.h>
sbit BUFFER =P2^5;
sbit LED = P2^0;
void DELAYMS(unsigned int z)
{
        unsigned int x,y;
        for(x=z;x>0;x--)
                for(y=110;y>0;y--);
}
main()
{
while(1)
{
  LED=0;
BUFFER=0;
  DELAYMS(500);   //你可以写一个延时函数,或者找一个
  LED=1;
  BUFFER=1;
  DELAYMS(500);
}//这里要延时两次,才能让蜂鸣器间断和灯闪烁
}
回复

使用道具 举报

5#
ID:452950 发表于 2020-3-20 17:00 | 只看该作者

板凳是对的,找个延时函数,然后把循环体放进主程序入口就能用了。
回复

使用道具 举报

地板
ID:711282 发表于 2020-3-20 13:54 | 只看该作者

有完整的吗
回复

使用道具 举报

板凳
ID:706084 发表于 2020-3-20 11:54 | 只看该作者
sbit Beep =P2^5;
sbit Led = P2^0;
while(1)
{
  LED=0;
BUFFER=0;
  DELAYMS(500);   //你可以写一个延时函数,或者找一个
  LED=1;
  BUFFER=1;
  DELAYMS(500);
}
这里要延时两次,才能让蜂鸣器间断和灯闪烁
回复

使用道具 举报

沙发
ID:452950 发表于 2020-3-19 16:58 | 只看该作者
while(1)
{
LED=0;
BUFFER=0;
DELAYMS(500);
LED=1;
BUFFER=1;
}
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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