mkyx 发表于 2023-6-11 10:37:57

STC8g1k08A进不了串口中断怎末办

void uart_init(){
        GPIO_InitTypeDef        GPIO_InitStructure;                //结构定义
        COMx_InitDefine                COMx_InitStructure;                                        //结构定义
        GPIO_InitStructure.Pin= GPIO_Pin_0 | GPIO_Pin_1;                //指定要初始化的IO, GPIO_Pin_0 ~ GPIO_Pin_7
        GPIO_InitStructure.Mode = GPIO_PullUp;        //指定IO的输入或输出方式,GPIO_PullUp,GPIO_HighZ,GPIO_OUT_OD,GPIO_OUT_PP
        GPIO_Inilize(GPIO_P3,&GPIO_InitStructure);        //初始化
       
        SCON = 0x50;                //8位数据,可变波特率
        AUXR = 0x14;
        TMOD &= 0x0F;                //设置定时器模式
        TL1 = 0xCC;                //设置定时初始值
        TH1 = 0xFF;                //设置定时初始值
        ET1 = 0;                //禁止定时器%d中断
        TR1 = 1;                //定时器1开始计时
       
        REN = 1;//允许接收
        ES = 1;
        EA = 1;
}

void UART_SendByte(unsigned char Byte)
{
        ES=0;
        SBUF=Byte;
        while(TI==0);
        TI=0;
        ES=1;
}


void Uart1Isr() interrupt 4
{
               
                if(TI){
                                TI = 0;
                }
                if(RI){
                        unsigned char dat = SBUF;
                        Accept_FLAG = 1;
                        RI = 0;
        }
       
}

mkyx 发表于 2023-6-11 11:07:36

找到问题了,原来是库函数里边已经用过他的中断函数了,把库函数删了就行
页: [1]
查看完整版本: STC8g1k08A进不了串口中断怎末办