查询方式蜂鸣器(1秒精确间隔)
时间:11-18
来源:互联网
点击:
#include
#include"intrins.h"
#define uint unsigned int
#define uchar unsigned char
sbit beep=P3^4;
uchar count=0;
/*void delay_ms(int j)
{
uchar i;
while(j--)
for(i=1;i<=250;i++)
{
_nop_();
_nop_();
_nop_();
_nop_();
}
} */
void init(void)
{
TMOD=0x01;
TH0=(65536-50000)/256; //预先 设定定时器 初值,50毫秒
TL0=(65536-50000)%256;
EA=1; //开启 总中断
ET0=1; //开启定时器 0 中断
TR0=1; //定时器 0 启动计数
}
void main()
{
init();
beep=0;
while(1)
{
;
}
}
void time0(void) interrupt 1
{
count++; //50ms太短,闪烁频率太快
if(count==20) //用变量 count 延长到100ms,根据自己的需要,调整参数或者定时器初始值来改成时间量
{
count=0; //计数器清零
beep=~beep; //LED灯亮灭交替
}
}
#include"intrins.h"
#define uint unsigned int
#define uchar unsigned char
sbit beep=P3^4;
uchar count=0;
/*void delay_ms(int j)
{
uchar i;
while(j--)
for(i=1;i<=250;i++)
{
_nop_();
_nop_();
_nop_();
_nop_();
}
} */
void init(void)
{
TMOD=0x01;
TH0=(65536-50000)/256; //预先 设定定时器 初值,50毫秒
TL0=(65536-50000)%256;
EA=1; //开启 总中断
ET0=1; //开启定时器 0 中断
TR0=1; //定时器 0 启动计数
}
void main()
{
init();
beep=0;
while(1)
{
;
}
}
void time0(void) interrupt 1
{
count++; //50ms太短,闪烁频率太快
if(count==20) //用变量 count 延长到100ms,根据自己的需要,调整参数或者定时器初始值来改成时间量
{
count=0; //计数器清零
beep=~beep; //LED灯亮灭交替
}
}
查询方式蜂鸣器精确间 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)