電子產(chǎn)業(yè)一站式賦能平臺

PCB聯(lián)盟網(wǎng)

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

單片機(jī)C語言實(shí)例-115-RS485基本通訊原理

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2022-1-6 16:21:55 | 只看該作者 |只看大圖 回帖獎勵 |倒序?yàn)g覽 |閱讀模式
單片機(jī)C語言實(shí)例-115-RS485基本通訊原理

內(nèi)容:485 與 232 使用相同軟件協(xié)議,是半雙工,需要有2套開發(fā)板對發(fā)測試,或者使用
        另外一個(gè)485設(shè)備配套,這里提供測試程序
------------------------------------------------*/

#include<reg52.h> //包含頭文件,一般情況不需要改動,頭文件包含特殊功能寄存器的定義                        
#include"delay.h"
/*------------------------------------------------
                硬件端口定義
------------------------------------------------*/
sbit Ctrl_EN = P2^0;  //發(fā)送接收控制端
/*------------------------------------------------
                 函數(shù)聲明
------------------------------------------------*/
void SendStr(unsigned char *s);
/*------------------------------------------------
                串口初始化
------------------------------------------------*/
void InitUART  (void)
{

    SCON  = 0x50;                        // SCON: 模式 1, 8-bit UART, 使能接收  
    TMOD |= 0x20;               // TMOD: timer 1, mode 2, 8-bit 重裝
    TH1   = 0xFD;               // TH1:  重裝值 9600 波特率 晶振 11.0592MHz  
    TR1   = 1;                  // TR1:  timer 1 打開                        
    EA    = 1;                  //打開總中斷
    //ES    = 1;                  //打開串口中斷
}                           
/*------------------------------------------------
                    主函數(shù)
------------------------------------------------*/
void main (void)
{

InitUART();

Ctrl_EN=1;  //發(fā)送模式

while (1)                       
    {
    SendStr("UART test,技術(shù)論壇:www.doflye.net thank you!");
        DelayMs(240);//延時(shí)循環(huán)發(fā)送
    DelayMs(240);
    }
}

/*------------------------------------------------
                    發(fā)送一個(gè)字節(jié)
------------------------------------------------*/
void SendByte(unsigned char dat)
{
SBUF = dat;
while(!TI);
      TI = 0;
}
/*------------------------------------------------
                    發(fā)送一個(gè)字符串
------------------------------------------------*/
void SendStr(unsigned char *s)
{
while(*s!='\0')// \0 表示字符串結(jié)束標(biāo)志,通過檢測是否字符串末尾
  {
  SendByte(*s);
  s++;
  }
}


更多詳情參考附件文檔

游客,如果您要查看本帖隱藏內(nèi)容請回復(fù)

0

主題

10

帖子

44

積分

一級會員

Rank: 1

積分
44
沙發(fā)
發(fā)表于 2022-1-8 16:40:45 | 只看該作者
學(xué)習(xí)一下,謝謝了

+08:00C402聯(lián)盟網(wǎng)1895.png (10.57 KB, 下載次數(shù): 20)

+08:00C402聯(lián)盟網(wǎng)1895.png

0

主題

32

帖子

185

積分

一級會員

Rank: 1

積分
185
板凳
發(fā)表于 2022-3-10 17:08:29 | 只看該作者
學(xué)習(xí)一下,謝謝!


0

主題

119

帖子

419

積分

一級會員

Rank: 1

積分
419
地板
發(fā)表于 2022-4-26 10:59:19 | 只看該作者
...........

0

主題

11

帖子

39

積分

一級會員

Rank: 1

積分
39
5#
發(fā)表于 2022-5-29 14:28:07 | 只看該作者
好好學(xué)習(xí),謝謝分享

0

主題

12

帖子

73

積分

一級會員

Rank: 1

積分
73
6#
發(fā)表于 2022-6-11 23:05:30 | 只看該作者
謝謝分享!

0

主題

7

帖子

33

積分

一級會員

Rank: 1

積分
33
7#
發(fā)表于 2022-9-28 11:13:44 | 只看該作者
看看。。。。。。。。。。

發(fā)表回復(fù)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則


聯(lián)系客服 關(guān)注微信 下載APP 返回頂部 返回列表