fengmingqi.c

来自「8051系列单片机的,蜂鸣器发声代码!8051系列单片机的,蜂鸣器发声代码!」· C语言 代码 · 共 50 行

C
50
字号
/*
下载此程序后会听到蜂鸣器间断的响,主要学习用定时器产生方波

*/
#include<reg51.h>
sbit sound=P3^7;

sbit led_k=P1^4;
sbit a1=P1^0;
sbit a2=P1^1;
sbit a3=P1^2;
sbit a4=P1^3;
void delayms(unsigned int i);/*延时函数*/
unsigned char i=0;

void t0()interrupt 1 using 1//产生蜂鸣器频率
{
sound=!sound;
 
 
}

main()
{
  TMOD=0X02;/* t0工作在方式2.*/
  TH0=0;//初值决定蜂鸣器的声音频率
  EA=1;/* 开全局中断.*/  
  TR0=1;/* 开始计数.*/
  ET0=1;/*允许t0中断.*/
  a1=a2=a3=a4=0;/*关闭数码管,否则数码管会拉低P0口电平,导致流水灯不亮*/
  P0=0xff;
  led_k=1;/*打开6个led的总开关*/
  
  while(1)
    {
     EA=0;         //蜂鸣器不响 
     delayms(1000);
     EA=1;        //蜂鸣器响
     delayms(1000);    
  
     }

} 
void delayms(unsigned int i)
{
  unsigned int j;
  for(;i>0;i--)
    for(j=100;j>0;j--);
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?