51单片机C语言问题

我写了一下代码,单片机不能进入睡眠模式,外部中断也没有起作用,请大家帮忙看看程序哪里错了!#include<reg51.h>#include<intrins.h>sbit... 我写了一下代码,单片机不能进入睡眠模式,外部中断也没有起作用,请大家帮忙看看程序哪里错了!
#include<reg51.h>
#include<intrins.h>
sbit led=P1^0;
unsigned int num;
void int0() interrupt 0
{
PCON=0X00;
num=0;
}
void timer() interrupt 1
{
TH0=0X3C;
TL0=0XB0;
num++;
if(num%20==0)
{
led=~led;
}
}
void main()
{
num=0;
TMOD=0X01;
TH0=0X3C;
TL0=0XB0;
IT0=1;
ET0=1;
EX0=1;
EA=1;
TR0=1;
while(1)
{

if(num==100)
{
num=0;
PCON=0X01;
}
}
}
展开
 我来答
caodd_2010
2014-02-13 · TA获得超过110个赞
知道小有建树答主
回答量:107
采纳率:0%
帮助的人:123万
展开全部
单片机进入睡眠之后,很快又被定时器中断唤醒了,所以感觉不到。

试试在PCON=0X01;前面加一句 TR0=0;
在PCON=0X00;后面加一句 TR1=1;
GUEL86
2014-02-13 · TA获得超过5857个赞
知道大有可为答主
回答量:5538
采纳率:86%
帮助的人:2759万
展开全部
PCON=0X01; // STC系列单片机为 空闲模式 这时 定时器 还会工作
PCON=0X02; // STC系列单片机为 睡眠模式 这时 定时器 不会工作
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
一万光年MEGn0
2014-02-13 · TA获得超过3712个赞
知道大有可为答主
回答量:4602
采纳率:67%
帮助的人:1089万
展开全部
定时中断会唤醒 休眠模式。

可以把定时器中断时间加长...
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式