利用定时器 1和定时器0控制led1和led2分别 2hz和0.5hz闪烁
- //利用定时器 1和定时器0控制led1和led2分别 2hz和0.5hz闪烁
- #include<reg52.h>
- #define uchar unsigned char
- #define uint unsigned int
- sbit led1=P1^;
- sbit led2=P1^;
- uchar count0,count1;
- void delay(uint x)
- {
- uchar i;
- while(x--)
- {
- for(i=;i<;i++);
- }
- }
- void init()
- {
- TMOD = 0x10; //定时器1 0
- EA=;
- ET0=;
- TR0=;
- TH0=0x4b;
- TL0=0xfd; //50ms
- ET1=;
- TR1=;
- TH1=0x4b;
- TL1=0xfd;
- }
- void main()
- {
- init();
- while()
- {
- led1=led2=;
- }
- }
- void Timer0() interrupt //定时器0
- {
- TH0=0x4b;
- TL0=0xfd;
- count0++;
- if(count0==)//如果是500ms(2hz)
- {
- count0=;
- led1=;
- delay();
- }
- }
- void Timer1() interrupt //定时器1
- {
- TH1=0x4b;
- TL1=0xfd;
- count1++;
- if(count1==)//如果是2000ms
- {
- count1=;
- led2=;
- delay();
- }
- }
- //利用定时器 1和定时器0控制led1和led2分别 2hz和0.5hz闪烁
- //利用定时器0 1s,led1取反,利用计数器1,(65535-10)%256,取反
- #include<reg52.h>
- #define uchar unsigned char
- #define uint unsigned int
- sbit led1=P1^;
- sbit led2=P1^;
- uchar count0,count1;
- void delay(uint x)
- {
- uchar i;
- while(x--)
- {
- for(i=;i<;i++);
- }
- }
- void init()
- {
- TMOD = 0x10; //定时器1 0
- EA=;
- ET0=;
- TR0=;
- TH0=0x4b;
- TL0=0xfd; //50ms
- ET1=;
- TR1=;
- TH1=0x4b;
- TL1=0xfd;
- }
- void main()
- {
- init();
- while()
- {
- led1=led2=;
- }
- }
- void Timer0() interrupt //定时器0
- {
- TH0=0x4b;
- TL0=0xfd;
- count0++;
- if(count0==)//如果是500ms(2hz)
- {
- count0=;
- led1=;
- delay();
- }
- }
- void Timer1() interrupt //定时器1
- {
- TH1=0x4b;
- TL1=0xfd;
- count1++;
- if(count1==)//如果是2000ms
- {
- count1=;
- led2=;
- delay();
- }
- }
利用定时器 1和定时器0控制led1和led2分别 2hz和0.5hz闪烁的更多相关文章
- [ZigBee] 13、ZigBee基础阶段性回顾与加深理解——用定时器1产生PWM来控制LED亮度(七色灯)
引言:PWM对于很多软件工程师可能又熟悉又陌生,以PWM调节LED亮度为例,其本质是在每个周期都偷工减料一些,整体表现出LED欠压亮度不同的效果.像大家看到的七色彩灯其原理也类似,只是用3路PWM分别 ...
- [ZigBee] 6、ZigBee基础实验——定时器3和定时器4(8 位定时器)
上一节讲了16位定时器1,本节讲8位定时器3和定时器4! 1.综述 Timer 3 and Timer 4 are two 8-bit timers(8位定时器). Each timer has tw ...
- tcp 保活定时器分析 & Fin_WAIT_2 定时器
tcp keepalive定时器 http server 和client端需要防止"僵死"链接过多!也就是建立了tcp链接,但是没有报文交互, 或者client 由于主机突然掉电! ...
- 关于普通定时器与高级定时器的 PWM输出的初始化的区别
不管是普通定时器还是高级定时器,你用哪个通道,就在程序里用OC多少.比如CH3对应OC3 TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1; TIM_ ...
- java定时器,Spring定时器和Quartz定时器
一.java定时器的应用 其实java很早就有解决定时器任务的方法了,java提供了了类java.util.TimerTask类基于线程的方式来实现定时任务的操作,然后再提供java.util.Tim ...
- 14.TCP的坚持定时器和保活定时器
一.坚持定时器 1.坚持定时器的由来 TCP通过让接收方指明希望从发送方接受的窗口大小来进行流量控制.设置窗口大小为0可以组织发送方传送数据,直至窗口变为非0为止. ...
- Object-C定时器,封装GCD定时器的必要性!!! (二)
上一篇:Object-C定时器,封装GCD定时器的必要性!!! (一) 上一篇认识了Object-C中的几种定时器,这一篇将Dispatch定时器(GCD定时器)封装起来. p.p1 { margin ...
- Object-C定时器,封装GCD定时器的必要性!!! (一)
实际项目开发中经常会遇到延迟某件任务的执行,或者让某件任务周期性的执行.然后也会在某些时候需要取消掉之前延迟执行的任务. iOS中延迟操作有三种解决方案: 1.NSObject的方法:(对象方法) p ...
- TCP的定时器系列 — 保活定时器
主要内容:保活定时器的实现,TCP_USER_TIMEOUT选项的实现. 内核版本:3.15.2 我的博客:http://blog.csdn.net/zhangskd 原理 HTTP有Keepaliv ...
随机推荐
- IFFT 的实现
IFFT 的实现 前些天给出了FFT的实现,如今给出IFFT(inverse FFT)的实现 基于IFFT 算法.对FFT的核心程序稍作改动就可以 : ) %%******************** ...
- Getting console.log output with Selenium Python API bindings
持久化存储 Getting console.log output from Chrome with Selenium Python API bindings - Stack Overflow http ...
- tflearn alexnet iter 10
他会自己下载数据: # -*- coding: utf-8 -*- """ AlexNet. Applying 'Alexnet' to Oxford's 17 Cate ...
- bzoj3940
AC自动机 复习一下... 可惜又写错了 我们发现就是把单词建成ac自动机,然后把串在ac自动机上跑一遍,每到一个单词结束点就删除,删除是利用栈,每次弹出单词长度个字符就可以了 发现两个小问题,str ...
- codeforces round #414 div1+div2
A:判断一下就可以了 #include<bits/stdc++.h> using namespace std; typedef long long ll; int a, b, c, n; ...
- Spark 机器学习 ---TF-IDF
package Spark_MLlib import org.apache.spark.ml.feature.{HashingTF, IDF, Tokenizer} import org.apache ...
- E20170620-hm
dump n. 垃圾场; 仓库; 无秩序地累积; vt. 倾倒; 倾销; 丢下,卸下; 摆脱,扔弃; terminate vt. 结束; 使终结; 解雇; 到达终点站; adj. 结束的; d ...
- PropertyInfo 类
[AttributeUsage(AttributeTargets.Property)] //Models 特性 public class CanWriteAttribute : Attr ...
- 363 Max Sum of Rectangle No Larger Than K 最大矩阵和不超过K
Given a non-empty 2D matrix matrix and an integer k, find the max sum of a rectangle in the matrix s ...
- shell script练习:利用日期进行文件的创建
随日期变化:利用 date 进行文件的创建 想像一个状况,假设我的服务器内有数据库,数据库每天的数据都不太一样,因此当我备份时, 希望将每天的数据都备份成不同的档名,这样才能够让旧的数据也能够保存下来 ...