单片机中断问题

[复制链接]
1561|5
 楼主| dfsa 发表于 2013-3-22 22:43 | 显示全部楼层 |阅读模式
/*======================================================

    使LED灯(P1.7口接LED灯)亮一下后灭一下的中断定时程序

======================================================*/
#include<reg52.h>
sbit P1_7=P1^7;
void delay(long y)
{    y--;    }
timer0() interrupt 2 using 1
{
    P1_7=!P1_7;delay(100000);
}
main()
{
    P1_7=0;
    TMOD=0x03;
    TH0=TL0=0xff;
    IP=0x00;
    EA=1;            //开总中断
    ET0=1;            //定时器中断允许位
    TR0=1;              //定时器0开始计数
    while(1);
}
程序可以编译,就是下载进去后P1.7口的灯一直亮着,怎么改啊
xsgy123 发表于 2013-3-22 22:59 | 显示全部楼层
在中断处理程序里要把中断标志警告清0和从新装中断值。
秋天落叶 发表于 2013-3-22 23:38 | 显示全部楼层
TMOD=0x03;这个不怎么合适吧,还有上面说得对,尽量不要在中断函数里面用延时函数
火箭球迷 发表于 2013-3-23 20:22 | 显示全部楼层
尽量不要在中断函数里面用延时函数
yybj 发表于 2013-3-23 20:25 | 显示全部楼层
xsgy123 发表于 2013-3-22 22:59
在中断处理程序里要把中断标志警告清0和从新装中断值。

经常会犯的错误
angerbird 发表于 2013-3-27 18:13 | 显示全部楼层
楼上说的的确实很重要的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

282

主题

2404

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部