打印

单片机中断问题

[复制链接]
1000|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 | 只看该作者
尽量不要在中断函数里面用延时函数

使用特权

评论回复
5
yybj| | 2013-3-23 20:25 | 只看该作者
xsgy123 发表于 2013-3-22 22:59
在中断处理程序里要把中断标志警告清0和从新装中断值。

经常会犯的错误

使用特权

评论回复
6
angerbird| | 2013-3-27 18:13 | 只看该作者
楼上说的的确实很重要的

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

282

主题

2404

帖子

2

粉丝