找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4470|回复: 7
打印 上一主题 下一主题
收起左侧

单片机中断 怎么样就算时间

[复制链接]
跳转到指定楼层
楼主
ID:240027 发表于 2017-10-24 21:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include<reg52.h>
sbit D0=P0^0;
unsigned char i;
void main()
{
        i=0;
        EA=1;
        ET0=1;
        TMOD=0x01;
        TH0=(65536-50000)/256;                                  (这句语句是怎样实现计时的,
        TL0=(65536-50000)%256;                                   又怎样计算时间,请详解)                        
        TR0=1;
        while(1);
}
        
void time() interrupt 1
{
        i=i+1;
        if(i==20)
        {
          D0=~D0;
                i=0;
        }

        TH0=(65536-50000)/256;
        TL0=(65536-50000)%256;
}

评分

参与人数 1黑币 +2 收起 理由
ko44 + 2 回帖助人的奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶1 踩
回复

使用道具 举报

来自 2#
ID:214164 发表于 2017-10-25 23:09 | 只看该作者
定时器T0设置为工作方式1,16位定时器模式,寄存器TH0和TL0组合起来构成16位空间,最大为65536时,寄存器就会溢出,因此,初值设置为50000时,定时器要从(65536-50000)开始计时,每递增1,按12M晶振计算就是1us,因此定时时间就是50000us,也就是50ms.

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

板凳
ID:213173 发表于 2017-10-25 09:48 | 只看该作者
51单片机定时器在12M晶振、模式1的工作方式时每12个振荡周期即 1us 加1,16位寄存器加满65536产生溢出信号,耗时65.536ms,如果想得到50ms的定时溢出就要在16位寄存器里预先填入65536-50000=15536,高8位填入15536/256取模弃余=60,低8位填入15536%256取余弃模=176,2进制为:0011 1100 1011 0000。16进制为:0x3CB0。这样16位寄存器加满65536产生溢出信号正好50ms。所以也可以写成:TH0 = 0x3C;TL0 = 0xB0;       

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

地板
ID:241942 发表于 2017-10-25 21:01 | 只看该作者
要是汇编语言还能帮一点,C语言现在自己也没搞懂
回复

使用道具 举报

5#
ID:242932 发表于 2017-10-25 21:06 | 只看该作者
可以百度一下,或者郭天祥书上也有详细解释
回复

使用道具 举报

6#
ID:242932 发表于 2017-10-25 21:07 | 只看该作者
百度一下,或者郭天祥书上也有解释
回复

使用道具 举报

7#
ID:320956 发表于 2018-5-3 08:55 | 只看该作者
百度一下就行了
回复

使用道具 举报

8#
ID:156682 发表于 2018-5-3 09:57 | 只看该作者
51单片机定时器在12M晶振、模式1的工作方式时每12个振荡周期即 1us 加1,16位寄存器加满65536产生溢出信号,耗时65.536ms,如果想得到50ms的定时溢出就要在16位寄存器里预先填入65536-50000=15536,高8位填入15536/256取模弃余=60,低8位填入15536%256取余弃模=176,2进制为:0011 1100 1011 0000。16进制为:0x3CB0。这样16位寄存器加满65536产生溢出信号正好50ms。所以也可以写成:TH0 = 0x3C;TL0 = 0xB0;      
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表