历史上的今天
今天是:2025年05月20日(星期二)
2020年05月20日 | 51单片机定时/计数器的功能实现
2020-05-20 来源:eefocus
8051单片机内部有两个16位的定时/计数器:T0和T1
定时器用途:延时和脉宽测量
读取方式:软件读取和中断
公式:
T(初值)=2^N-定时时间/机器周期时间
机器周期时间=12/fosc
N:代表几位定时器,有13 16 8位定时器
定时时间:希望设定时间,例如希望设定时间是65.535,初值就是0
fosc:晶振频率,一般用的多的晶振频率是12
四种工作方式,在TMOD中设置:
M1 M0=0X00,方式0,13位计数器
M1 M0=0X01,方式1,16位计数器,用的最多
M1 M0=0X10,方式2,8位计数器
M1 M0=0X11,方式3,8位计数器
例如:
如果我们希望定时0.2ms,定时单位用的us
65536-200/1=65336=FF38H;
初值放在TH0 TL0中,分别是高八位和低八位
TH0=0XFF;TL0=0X38;
当我们写程序的时候也可以不用计算,直接使用公式代入,例如:
TH0= -设置的定时时间/256;
TL0= -设置的定时时间%256;
定时器的实现过程:
1.给定时器设置初值(TH0 TL0的初始化)
2.打开定时器中断:ET0 =1 或 ET1=1;
3.启动定时器:TR0 =1 或 TR1=1;
4.打开全局中断:EA=1;
5.配置定时器工作方式:TMOD=0x01;
如果定时器到了TF0=1 或 TF1=1;
一旦定时器到了就会触发中断,进入中断函数中执行函数中语句。
注:一旦进入中断,定时器的初值又会从0开始,所以在中断函数中必须重新将TH0和TL0赋初值。
简单的定时器中断的实现:
#include sbit LED= P0^0; void main() { P0 = 0xff; EA = 1;//允许所有中断 ET0 = 1;//定时器中断0 TMOD |= 0x01; //设置初值 TH0 = 0x3c;//设置了初值就会不断的加1,加到溢出 TL0 = 0xb0; // TH0 = 65536-50000/256; // TL0 = 65536-50000%256 TR0 = 1;//定时器0开始工作 while(1);//不让程序结束出去,一旦发生中断就会跳到中断 } void intersrv1(void) interrupt 1 //定时器中断,遇到定时器溢出//了就会触发中断 { TH0 = 0x3c;//又要重新赋初值 TL0 = 0xb0; LED = !LED;//和原来的状态相反,定时精确到0.001ms }
上一篇:51单片机-定时器1中断
史海拾趣
|
当人们在津津乐道于各种带有炫目功能的便携式电子产品时,请不要忘记与您生活息息相关的传统家电和新兴的数字家电产品。让我们来计算一下,中国作为全球传统消费电子产品的第一生产大国,每年生产约5000万台空调,2000万台洗衣机,3000万台冰箱,40 ...… 查看全部问答> |
|
本帖最后由 paulhyde 于 2014-9-15 09:41 编辑 我们的键盘是4*4超级键盘,只用三个io口就可以控制16个键盘,最重要的是还带cpu中断,不但节约了端口,而且实现了cpu资源的节省,功能强大,使用方便,功能超级强大啊!!!!!!!!! 呵呵是有点 ...… 查看全部问答> |
|
引 言 由于CPLD的可再编程性质,可以将同一装置用于不同的键盘和产品,而收到高产量、低成本的效果,同时也节约了单片机的资源以做它用。可再编程的特点辅之简便易用的设计工具,使设计可以进行晚期更改,提高了产品设计的灵活性,降低了风险。 ...… 查看全部问答> |
|
我想找一块使用时间比较长的成熟开发板,带SD卡驱动,USB接口和液晶显示功能就可以了,提供相关PCB制板文件,这是其一 其二,想在上面再扩展个心电采集电路部分,调通该部分功能 如有对以上擅长者,有合作意向请联系本人 QQ:12665590 … 查看全部问答> |
|
问了 2个问题 STM32F107的以太网 用的NICHeLITE 协议栈 主讲的年青帅哥(外)说中文的很溜,可听估计还是差些 也许是我问问题没说清楚 感觉整场会 ADC的主讲比较精彩 交流也很激烈 新的3in1 还有个像游戏机一样的 ...… 查看全部问答> |
|
我有两块板,程序一样,初始化时将输入管脚都通过GPIOWRITE(GPIOG,0X0000)输出0,结果一块板在可以检测到输入管 ...… 查看全部问答> |
|
本帖最后由 paulhyde 于 2014-9-15 03:33 编辑 国赛c题的倒立摆题目,大家是选什么材料当转轴D的?滑轮?滑轮会不会太滑,不好控制?还有什么其他好的材料用转轴的? … 查看全部问答> |





