不讲wood 发表于 2022-9-24 23:20:04

为什么中断程序里面P3不能直接用

这是正常运行的:
#include <REGX52.H>
#include "Delay.h"
sbit KEY3=P3^2;
void exti0_init(void)
{
        IT0=1;
        EX0=1;
        EA=1;
}

void main()
{       
        exti0_init();

        while(1)
        {                       
                                                       
        }               
}

void exti0() interrupt 0
{
        if(KEY3==0)                        //如果K3按键按下
                {
                        P2_0=~P2_0;                //LED1取反
                }               
}
这个是不正常的:
#include <REGX52.H>
#include "Delay.h"
void exti0_init(void)
{
        IT0=1;
        EX0=1;
        EA=1;
}

void main()
{       
        exti0_init();

        while(1)
        {                       
                                                       
        }               
}

void exti0() interrupt 0
{
        if(P3_0==0)                        //如果K1按键按下
                {
                        P2_0=~P2_0;                //LED1取反
                }       
}

aojieage 发表于 2022-10-6 21:15:46

你都没有定义,怎么用?这是C语言语法,汇编就可以直接用。:lol
页: [1]
查看完整版本: 为什么中断程序里面P3不能直接用