亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

標題: 單片機代碼問題為什么串口不停的發送數據? [打印本頁]

作者: samxon    時間: 2024-9-12 13:45
標題: 單片機代碼問題為什么串口不停的發送數據?
請教大家,本意是只發送一次,為什么串口會不停的發送ca,c5呢。

unsigned char profix[2]={0xCA,0xC5};

void main(){
        UartInit();
        EA=1;

                        //        length = sizeof(profix);
                                UART_SendByte(profix,2);while(1);

}

void UartInit()                //115200bps@11.0592MHz
{
        SCON = 0x50;                //8位數據,可變波特率
        AUXR |= 0x01;                //串口1選擇定時器2為波特率發生器
        AUXR |= 0x04;                //定時器時鐘1T模式
        T2L = 0xE8;                        //設置定時初始值
        T2H = 0xFF;                        //設置定時初始值
        AUXR |= 0x10;                //啟動定時器2
        TI        =        0;
        RI        =        0;
        ES        = 1;
}


void Uart() interrupt 4
{
        if(RI)
                {                        
                        RI=0; //清楚TI傳送完成標記
                }
}


void UART_SendByte(unsigned char Byte[],length)
{
        unsigned char i;
        for(i=0;i<length;i++)
        {
                SBUF=Byte[ i];                 //一次只能發送8位[ i]
                while(!TI);
                TI = 0;               
        }
}



作者: xiaobendan001    時間: 2024-9-12 16:28
難道是看門狗復位了?
作者: Graves    時間: 2024-9-12 18:28
是不是開了看門狗?然后沒清狗一直復位所以一直發
作者: 黃youhui    時間: 2024-9-12 18:46
你加個while循環試試

作者: 188610329    時間: 2024-9-12 19:28
while(1) 呢? 你這反復重起了吧?
作者: samxon    時間: 2024-9-13 07:52
xiaobendan001 發表于 2024-9-12 16:28
難道是看門狗復位了?

沒有開狗,加了while(1);就可以了。實際應用中,數據改變一次就發一次是怎么處理的
作者: 人中狼    時間: 2024-9-13 08:23
主程序結構不對,代碼跑飛了

作者: xiaobendan001    時間: 2024-9-13 08:39
samxon 發表于 2024-9-13 07:52
沒有開狗,加了while(1);就可以了。實際應用中,數據改變一次就發一次是怎么處理的

樓主位的代碼不是有while(1);嗎?
作者: samxon    時間: 2024-9-13 14:59
xiaobendan001 發表于 2024-9-13 08:39
樓主位的代碼不是有while(1);嗎?

就是有也會一直發送,不停。
作者: xiaobendan001    時間: 2024-9-13 16:22
samxon 發表于 2024-9-13 14:59
就是有也會一直發送,不停。

那你在哪里又加了一個就不持續了?
作者: peopleapple    時間: 2024-9-18 11:40
沒有開狗,加了while(1);就可以了
作者: samxon    時間: 2024-9-18 17:44
xiaobendan001 發表于 2024-9-13 16:22
那你在哪里又加了一個就不持續了?

謝謝,加了發送完畢flag就可以了。




歡迎光臨 (http://www.denmoz.com/bbs/) Powered by Discuz! X3.1