51单片机蜂鸣器发出1KHz的信号的c语言程序

利用T1的中断来使P1.7控制蜂鸣器发出1kHz的音频信号,... 利用T1的中断来使P1.7控制蜂鸣器发出1kHz的音频信号, 展开
 我来答
NJGQZF
推荐于2017-12-15 · TA获得超过1.1万个赞
知道大有可为答主
回答量:3165
采纳率:0%
帮助的人:1232万
展开全部
//假设晶振12MHZ,P1.7控制蜂鸣器
#include "reg51.h"
sbit FMQ=P1^7;
void main(void)
{
TMOD |= 0X10; //定时器1工作于方式1,16位定时器
TH1 = 0XFE; //定时器1定时时间=500uS
TL1 = 0X0C;
ET1 = 1; //使能定时器1中断
EA =1; //开总中断

while(1)
{
}
}

void TIMER1(void) interrupt 3 //定时器1中断函数使用默认寄存器组
{
TH1 = 0XFE; //定时器1定时时间=500us
TL1 = 0X0C;
FMQ=!FMQ;
}
追问
能给个仿真图么
追答
没有,我做实际工程的,从来不用仿真。
有网友提示,我漏了一句。
//假设晶振12MHZ,P1.7控制蜂鸣器
#include "reg51.h"
sbit FMQ=P1^7;
void main(void)
{
TMOD |= 0X10; //定时器1工作于方式1,16位定时器
TH1 = 0XFE; //定时器1定时时间=500uS
TL1 = 0X0C;
ET1 = 1; //使能定时器1中断
EA =1; //开总中断
TR1 = 1;//启动定时器1
while(1)
{
}
}

void TIMER1(void) interrupt 3 //定时器1中断函数使用默认寄存器组
{
TH1 = 0XFE; //定时器1定时时间=500us
TL1 = 0X0C;
FMQ=!FMQ;
}
宿兴电子
2024-11-28 广告
联系我们蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。蜂鸣器在电路中用字母“H... 点击进入详情页
本回答由宿兴电子提供
lphaff
推荐于2016-02-27 · TA获得超过2.4万个赞
知道大有可为答主
回答量:1565
采纳率:72%
帮助的人:619万
展开全部
通过中断的方式,使用定时器0来提供1KHz的方波,蜂鸣器引脚定义为P1.0。代码如下:
#include <reg51.h>
#define u8 unsigned char
sbit BEEP=P1^0;
void main
{
EA=1;//开总中断

IT0=1;//打开定时器0源中断允许开关

TMOD=0x01;//选择定时器0工作在方式0
TR0=1;//启动定时器0

TH1=(65536-1000)/256;//赋值,定时1ms

TL1=(65536-1000)%256;

while(1)

{;}

}
void TIM() interrupt 1
{
TH1=(65536-1000)/256;

TL1=(65536-1000)%256;
BEEP=~BEEP;//蜂鸣器引脚输出1KHz方波

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
查晓筠0i5
2015-06-06 · TA获得超过2752个赞
知道大有可为答主
回答量:2.1万
采纳率:1%
帮助的人:4949万
展开全部
是要给你写程序吗
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式