定时器中断方式控制LED--第六天

1.思路:

1.1给定时器TMOD 初值

给初值定一个10ms

TR0 =1 开始计时 ;TF0 = 0 计算爆表

ET0 = 1 打开定时器0中断 ; EA = 1 打开总中断EA

1.2.main()函数里面的软件定时消掉,用定时器定时 ;定义一个中断函数,写入爆表100次,led翻转

复制代码
#include "reg52.h"
#include <intrins.h>

sbit led  = P3^6;
sbit led1 = P3^7;
int cnt = 0;

void Time0Init()
{
		
	TMOD = 0x01;

	
	TL0 = 0x00;
	TH0 = 0xDC;
			
	TR0 = 1; 
	TF0 = 0; 
	
	
	ET0 = 1;
	
	EA = 1;
}

void Delay500ms()		//@11.0592MHz
{
	unsigned char i, j, k;

	_nop_();
	i = 4;
	j = 129;
	k = 119;
	do
	{
		do
		{
			while (--k);
		} while (--j);
	} while (--i);
}


void main()
{
	led = 1;
	
	Time0Init();
	while(1)
	{
			led1 = 0;
			Delay500ms();
			led1 = 1;
			Delay500ms();
	}
}


void Time0Handler() interrupt 1
{
	
					cnt++;  
					TL0 = 0x00;
					TH0 = 0xDC;
				if(cnt == 100){ 
							cnt = 0; 
							led = !led; 
					}
}
相关推荐
大阳12322 分钟前
51单片机4(温度传感器DS18B20)
开发语言·单片机·嵌入式硬件·算法·51单片机
朱自清的诗.38 分钟前
使用python脚本储存mosquito服务器数据到sqlite
python·单片机·sqlite·esp32
应用市场3 小时前
深入理解STM32运行原理:从上电到主程序执行的完整过程
stm32·单片机·嵌入式硬件
空管电小二3 小时前
【开关电源篇】整流及其滤波电路的工作原理和设计指南-超简单解读
经验分享·单片机·嵌入式硬件·社交电子·学习方法
逼子格3 小时前
Altium Designer(AD)原理图更新PCB后所有器件变绿解决方案
单片机·嵌入式硬件·硬件工程·问题解决·ad·pcb·altium designer
wei-dong-183797540085 小时前
嵌入式硬件工程师的每日提问
嵌入式硬件
文火冰糖的硅基工坊6 小时前
[硬件电路-180]:集成运放,在同向放大和反向放大电路中,失调电压与信号一起被等比例放大;但在跨阻运放中,失调电压不会与电流信号等比例放大。
嵌入式硬件·系统架构·电路·跨学科融合
三佛科技-134163842126 小时前
迷你取暖器MCU方案,迷你暖风机方案分析
单片机·嵌入式硬件·智能家居·pcb工艺
国科安芯6 小时前
前沿探索:RISC-V 架构 MCU 在航天级辐射环境下的可靠性测试
网络·单片机·嵌入式硬件·fpga开发·硬件架构·risc-v
小莞尔6 小时前
【51单片机】【protues仿真】基于51单片机多功能电子秤系统
单片机·嵌入式硬件