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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 2507|回復(fù): 1
收起左側(cè)

單片機(jī)+RS485通信程序問(wèn)題

[復(fù)制鏈接]
ID:477505 發(fā)表于 2020-1-9 11:29 | 顯示全部樓層 |閱讀模式
這段代碼要改成這樣,例如:發(fā)送01 06 00 01 00 17  接收01 06 00 01 00 17
有大神幫我改改嗎,剛學(xué)還有很多不懂

void Uart3_Init(void)
{                                 
        S3CON |= 0x50;                  //串口3選擇定時(shí)器3為波特率發(fā)生器,啟動(dòng)串行接收器
        S3CON &= 0x70;                  //8位數(shù)據(jù),可變波特率

        T3H=(65536-(MAIN_Fosc/12/4/BAUD))/256;
        T3L=(65536-(MAIN_Fosc/12/4/BAUD))%256;
        
        T4T3M |= 0x08;       //允許定時(shí)器3運(yùn)行
        IE2 |= 0x08;         // 串口3中斷打開(kāi)
        IE2 &= 0xDF;         // 關(guān)閉定時(shí)器3中斷
        EA = 1;                                        // 總中斷打開(kāi)
}

void SendDataByUart3(uint8 dat)
{
    S3BUF = dat;                 //寫(xiě)數(shù)據(jù)到UART數(shù)據(jù)寄存器
        while(!(S3CON&S3TI));        //在停止位沒(méi)有發(fā)送時(shí),S3TI為0即一直等待
    S3CON&=~S3TI;                //清除S3CON寄存器對(duì)應(yīng)S3TI位(該位必須軟件清零)
}


void U3SendString(uint8 *s)
{
    IE2 &= 0xF7;                                        // 串口3中斷關(guān)閉
        while (*s)                       //檢測(cè)字符串結(jié)束標(biāo)志
    {

                        SendDataByUart3(*s++);         //發(fā)送當(dāng)前字符
    }
    IE2 |= 0x08;                     // 串口3中斷打開(kāi)
}

int main()
{
          P0M1 &= 0xFE;        P0M0 &= 0xFE;                          //設(shè)置P0.0為準(zhǔn)雙向口
        P0M1 &= 0xFD;        P0M0 |= 0x02;                          //設(shè)置P0.1為推挽輸出
        
        rs485_dr=0;      //控制485接收
        Uart3_Init();
        

        while(1)
        {
                if(temp1==50)   //接收到的數(shù)為“2”
                {
                        rs485_dr=1;   //控制485發(fā)送
                        U3SendString("Hello World\r\n");        //通過(guò)串口2發(fā)送字符串“FIYU”
                        uart3_rflage=0;                   //清零串口2接收標(biāo)識(shí)符
                        rs485_dr=0;                       //控制485接收
                        delay_ms(10);                     //初始化后延時(shí)
                        temp1=0;                          //清零接收的臨時(shí)數(shù)據(jù)
                }
        }
}

void Uart3() interrupt 17 using 1
{
        IE2 &= 0xF7;                                        // 串口3中斷關(guān)閉
        if (S3CON & S3RI)                //串行接收到停止位的中間時(shí)刻時(shí),該位置1
          {
              S3CON &= ~S3RI;              //清除S3CON寄存器對(duì)應(yīng)S3RI位(該位必須軟件清零)
                  temp1 = S3BUF;               //把串口3緩存SBUF寄存器數(shù)據(jù)存放到數(shù)組temp1中
                  uart3_rflage = 1;                 
           }
           if (S3CON & S3TI)                //在停止位開(kāi)始發(fā)送時(shí),該位置1
           {
              S3CON &= ~S3TI;                                //清除S3CON寄存器對(duì)應(yīng)S3TI位(該位必須軟件清零)
           }
        IE2 |= 0x08;                     // 串口3中斷打開(kāi)
}



回復(fù)

使用道具 舉報(bào)

ID:619594 發(fā)表于 2020-1-9 15:41 | 顯示全部樓層
你好!
對(duì)于你這段代碼來(lái)說(shuō),要實(shí)現(xiàn)你說(shuō)的功能,基本是要重新寫(xiě)了
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表