51单片机程序——定时器控制蜂鸣器

发布者:书香门第最新更新时间:2016-01-22 来源: eefocus关键字:51单片机  定时器控制  蜂鸣器 手机看文章 扫描二维码
随时随地手机看文章
#include
#define uint unsigned int 
 
sbit bb=P3^5;                  //位定义蜂鸣器接口
sbit led1=P0^0;       //位定义LED接口
unsigned int i=0;
 
void delay(uint z);       //延迟函数声明
 
void main()
{
TMOD=0x01;                 //TMOD赋值,以确定T0和T1的工作方式       
TH0=(65536-50000)/256;   //计算初值,并将其写入TH0、TL0或TH1、TL1
TL0=(65536-50000)%6;
EA=1;   //打开总中断
ET0=1;   //打开定时器0中断
TR0=1;   //启动定时器0
while(1)
{
if(i==20)   //定时器计数时间20*50MS=1S
{
i=0;               //清除标志位
led1=0;
bb=0;
delay(500);
led1=1;
bb=1;
delay(500);
}
}
}
 
void exter0() interrupt 1       //定时器0中断函数
{
TH0=(65536-50000)/256; //中断函数中也需要赋定时器初值
TL0=(65536-50000)%6;
i++;                        //定时器每50MS就使i加一
}
 
void delay(uint z) //延迟函数
{
uint x,y;
for(x=z;x>0;x--)
for(y=20;y>0;y--);
}

关键字:51单片机  定时器控制  蜂鸣器 引用地址:51单片机程序——定时器控制蜂鸣器

上一篇:51单片机程序——数码管显示0~99
下一篇:51单片机程序——定时器控制LED闪烁

推荐阅读最新更新时间:2024-03-16 14:45

51单片机定时器的应用
interrupt中断的关键字,n是中断号提供中断程序的入口地址。 0-INT0 1-T0 2-INT1 3-T1 4-串行中断 5-T2 直接访问寄存器和端口 定义 sfr P0 0x80 sfr P1 0x81 sfr ADCON; 0xDE sbit EA 0x9F 操作 ADCON = 0x08 ; P1 = 0xFF ; io_status = P0 ; EA = 1 ; 在使用了interrupt 1 关键字之后,会自动生成中断向量 在 IS
[单片机]
MCS-51单片机特殊功能寄存器详解
1、 定时器/计数器的方式寄存器TMOD TMOD是一个8位的特殊功能寄存器,对应的地址是89H,不可位寻址。 A 主要完成三个功能: *确定选择定时器还是计数器; *选择何种工作方式; *是否借用外中断控制定时器和计数器的启停; B TMOD的低4位是控制T0的字段(T0--P3.4 定时器/计数器0外部事件脉冲输入端) TMOD的高4位是控制T1的字段(T1--P3.5定时器/计数器1外部事件脉冲输入端) C 控制字的格式和含义 a、 GATE(TMOD.7) 分为两种情况:GATE=0,定时器的启停和INT1无关,只取决于TR0;
[单片机]
51单片机入门 - 串口通信实验(模拟串口通信/多机通信实例)
RS232串口应用实例 设计要求: 通过串口发送接收数据(串口工作方式1) 实现思路: 定时器设置 串口设置 工作方式 波特率 开启定时/计数器 串口执行 接收数据 发送数据 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 实现代码: 1 #include reg51.h 2 main() 3 { 4 TMOD = 0x20; 5 SM0
[单片机]
<font color='red'>51单片机</font>入门 - 串口通信实验(模拟串口通信/多机通信实例)
基于51单片机的多点测温系统设计
1.温度传感器DS18B20介绍 DALLAS公司单线数字温度传感器DS18B20是一种新的“一线器件”,它具有体积小、适用电压宽等特点。一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。DS18B20支持“一线总线”接口,测量温度范围为-55℃~+125℃,在-10℃~+85℃范围内,精度为±0.5℃;通过编程可实现9~12位的数字值读数方式;可以分别在93.75ms和750ms内将温度值转化为9位和12位的数字量。每个DS18B20具有唯一的64位长序列号,存放于DS18B20内部ROM只读存储器中。 DS18B20温度传感器的内部存储器包括1个高速暂存RAM和1个非易失性的电可擦
[单片机]
基于<font color='red'>51单片机</font>的多点测温系统设计
C51单片机串口工作的四种方式总结
方式0:同步移位寄存器输入输出方式 1. 利用移位寄存器实现串行/并行的转换(功能) 2. 波特率:fosc/12 3. RXD(P3.0)----用于串行数据的输入和输出 TXD(P3.1)----充当输出的移位时钟 4. 数据大小:8位 5. 方式0发送: ○ 串口接口移位寄存器(74HC164),主要用于扩展并行输出口 ○ 用单片机本身的3根线换取了8根线的作用 ○ 串行接口将8位数据从SBUF中取出 ○ TXD引脚上输出同步移位脉冲 ○ 以fosc/12的波特率从RXD端串行输出到移位寄存器 ○ 发完后TI置1,向CPU请求中断 6. 7. 8. 方式0接收: ○ 串口接口移位寄存器(74HC1
[单片机]
C<font color='red'>51单片机</font>串口工作的四种方式总结
51单片机实现操作AT24C02时,改善数码管的闪烁现象
一、使用proteus绘制简单的电路图,用于后续仿真 关于IIC的读写: 二、编写程序 /******************************************************************************************************************** ---- @Project: AT24C02 ---- @File: main.c ---- @Edit: ZHQ ---- @Version: V1.0 ---- @CreationTime: 20200722 ---- @ModifiedTime:
[单片机]
<font color='red'>51单片机</font>实现操作AT24C02时,改善数码管的闪烁现象
51单片机入门经验分享3-通过流水灯讲解for循环语句
接上一篇帖子,继续来看,既然我们会点亮一个小灯,并可以让其闪烁了,那么我们就尝试着点亮流水灯好了,让8个小灯,从左到右,从右往左来回流动,还是在上一个程序的基础上来修改,很简单依次赋值即可实现。 while(1) { P2 = 0XFE;//1111_1110; Delay500ms();//500ms延时 11.0592MHZ P2 = 0XFD;//1111_1101; Delay500ms();//500ms延时 11.0592MHZ P2 = 0XFB;//1111_1011; Delay500ms();//
[单片机]
一文详解80C51单片机的指令系统
指令是指示计算机执行某种操作的命令,计算机能识别执行的只能是二进制代码,以二进制代码来描述指令功能的语言,称为机器语言。 由于机器语言不便于人们识别,记忆,理解和使用,因此便对每条机器语言指令用助记符号来形象表示,这就便形成了汇编语言。 一条指令是机器语言的一个语句,包括操作码字段和操作数字段。一台计算机所具有的全部指令的集合,称为这台计算机的指令系统。 不同的微处理器,其指令系统一般是不同的。 80C51单片机指令系统共有111条指令,具体特点如下: 1)执行时间短,单机器周期指令(64条),双机器周期指令(45条),而四机器周期指令只有2条; 2)指令编码字节少,单字节指令(49条),双字节指令(45条)和最长的三字节
[单片机]
一文详解80C<font color='red'>51单片机</font>的指令系统
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved