请选择 进入手机版 | 继续访问电脑版

普中开源电子分享网

 找回密码
 立即注册
搜索
查看: 3424|回复: 3

定时器0工作1正常,当中0改了1让定时器1工作失败

[复制链接]

1

主题

1

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2020-4-24 09:04:09 | 显示全部楼层 |阅读模式
1金钱
#include <reg52.h>
#define wchar unsigned char
#define uint unsigned int
sbit led1= P2^2;
wchar num;
void main()
{
TMOD=0x01;        
TH0=0xfc;       改TH1=0XFC
TL0=0x18;       改TLI=0x18
EA=1;
ET0=1;         改ET1=1
TR0=1;         改TR1=1
while(1);
}
void T1_time() interrupt 1
{
TH0=0xfc;     改TH1=0xfc
TL0=0x18;    改TL1=0x18
num++;
if(num==150)
{
num=0;
led1=~led1;
}
}


我知道答案 本帖寻求最佳答案回答被采纳后将获得系统奖励10 金钱 , 目前已有3人回答

回复

使用道具 举报

0

主题

15

帖子

251

积分

中级会员

Rank: 3Rank: 3

积分
251
发表于 2020-4-24 20:34:19 | 显示全部楼层
void T1_time() interrupt 1这个要改成void T1_time() interrupt 3
回复

使用道具 举报

0

主题

33

帖子

74

积分

注册会员

Rank: 2

积分
74
发表于 2020-5-21 17:50:13 | 显示全部楼层
注意中断的序号,定时器中断是1和3,还有要注意书写规范,wchar改uchar,TLI改TL1
回复

使用道具 举报

0

主题

49

帖子

242

积分

中级会员

Rank: 3Rank: 3

积分
242
发表于 2020-5-22 06:50:54 | 显示全部楼层
#include <reg52.h>
#define wchar unsigned char
#define uint unsigned int
sbit led1= P2^2;
wchar num;
void main()
{
        TMOD|=0x10;//0x01改0x10      
        TH1=0XFC;//TH0=0xfc;       改
        TL1=0x18;//TL0=0x18;       I改1
        EA=1;
        ET1=1;//ET0=1;         改
        TR1=1;//TR0=1;         改
        while(1);
}
void T1_time() interrupt 3  //1改3
{
        TH1=0xfc;//TH0=0xfc;     改
        TL1=0x18;//TL0=0x18;    改
        num++;
        if(num==150)
        {
                num=0;
                led1=~led1;
        }
}

回复

使用道具 举报

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

本版积分规则

关闭

站长推荐上一条 /1 下一条

Archiver|手机版|小黑屋|普中开源电子分享网 粤ICP备16123577号-2

GMT+8, 2024-3-29 00:50 , Processed in 0.097524 second(s), 32 queries .

Powered by 论坛搭建 X3.4

Copyright © 2001-2021, Tencent Cloud.

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