找回密码
 立即注册

QQ登录

只需一步,快速开始

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

如何设置内部时钟让51单片机上电就开始计时的问题

[复制链接]
跳转到指定楼层
楼主
ID:449692 发表于 2019-1-22 16:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
51单片机计时一上电就开始计时,内部时钟应该怎么设置,用过外部中断打开内部时钟,但好像还是不行,请高人指点
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:449692 发表于 2019-1-22 17:53 | 只看该作者
可以在里面嵌套定时器程序设置 启动或者关闭计时器,从而可以实现
回复

使用道具 举报

板凳
ID:277550 发表于 2019-1-22 18:14 | 只看该作者
main中,启用时钟就可以了


~~~~~~~~~~~~~~
回复

使用道具 举报

地板
ID:213173 发表于 2019-1-22 21:04 | 只看该作者
上电就开始计时没有任何技术难度,不知楼主想要达到什么目的。有些产品需要记录工作时间,在断电时使用EEPROM保存目前的工作时间,再次上电时读取EEPROM保存数据,以此累计总工作时间。
回复

使用道具 举报

5#
ID:471066 发表于 2019-1-23 04:23 | 只看该作者
你可以这样试试

#include<reg51.h>        
sbit sound=P3^7;   //将sound位定义为P3.7引脚

void main(void)
{
        TMOD=0x10;            //使用定时器T1的模式1
        TH1=(65536-921)/256;  //定时器T1的高8位赋初值
        TL1=(65536-921)%256;  //定时器T1的高8位赋初值
        TR1=1;                //启动定时器T1
        TF1=0;
        while(1)
        {
                while(TF1==0);
                TF1=0;
                sound=~sound;  
                TH1=(65536-921)/256;
                TL1=(65536-921)%256;  
        }
}

void key(void)interrupt 0 using 0
{
        TR1=0;//进入中断关掉定时器
        .................//执行中断后的具体操作事项
        TR1=1;//执行完打开定时器
}

评分

参与人数 4黑币 +80 收起 理由
sheng7533967 + 15
jinsheng7533967 + 35 赞一个!
Sawardeakar + 15 回帖助人的奖励!
shuisheng + 15 很给力!

查看全部评分

回复

使用道具 举报

6#
ID:7485 发表于 2019-1-23 10:32 | 只看该作者
单片机时钟是最基本的吧?
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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