国产一区二区三区毛片_亚洲乱码AV中文一区二区_亚洲精品无码专区在线播放_日韩欧美一二_咪咪av影院_欧久久av一区二区

華南貓
PLC無線通訊遠程控制巨控黃工:18922726899
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 70 個
工控威望: 178 點
下載積分: 860 分
在線時間: 43(小時)
注冊時間: 2017-02-21
最后登錄: 2025-05-22
查看華南貓的 主題 / 回貼
樓主  發(fā)表于: 2019-01-17 14:20
1. 基本的通訊方式
基本的通訊方式有并行通訊和串行通訊兩種。

并行通信:是指數(shù)據(jù)的各位同時進行傳送的通信方式。

串行通信:是指數(shù)據(jù)一位一位順序傳送的通信方式。

2. 串行通訊的兩種方式
串行通信的兩種基本形式:同步通信和異步通信。

異步通信所傳輸?shù)臄?shù)據(jù)幀格式是由1個起始位、1~9個數(shù)據(jù)位、1~2個停止位組成,依靠起始位和停止位保持同步;

同步通信所傳輸數(shù)據(jù)幀格式是由多個字節(jié)組成的一個幀,每個幀都有兩個(或一個)同步字符作為起始位以觸發(fā)同步時鐘開始發(fā)送或接收數(shù)據(jù)。


3. 根據(jù)傳送方向分類
  根據(jù)信息的傳送方向,串行通訊可以進一步分為單工、半雙工和全雙工三種。
  如果在通信過程的任意時刻,信息只能由一方A傳到另一方B,則稱為單工!         
  如果在任意時刻,信息既可由A傳到B,又能由B傳A,但只能由一個方向上的傳輸存在,稱為半雙工傳輸。  
  如果在任意時刻,線路上存在A到B和B到A的雙向信號傳輸,則稱為全雙工。



4. 串行通訊接口
串行通訊物理接口按電氣標(biāo)準(zhǔn)及協(xié)議來分包括RS-232、RS-422、RS485等,這里主要講一些最常用的RS485接口。

5. RS485接口電路


作為一個經(jīng)常被應(yīng)用到的SP485R芯片的示范電路,可以被直接嵌入實際的RS-485

應(yīng)用電路中。微處理器的標(biāo)準(zhǔn)串行口通過RXD 直接連接SP485R 芯片的RO 引腳,通過TXD直接連接SP485R 芯片的DI 引腳。

由微處理器輸出的R/D 信號直接控制SP485R 芯片的發(fā)送器/接收器使能:R/D 信號為“1”,則SP485R 芯片的發(fā)送器有效,接收器禁止,此時微處理器可以向RS-485 總線發(fā)送數(shù)據(jù)字節(jié);R/D 信號為“0”,則SP485R 芯片的發(fā)送器禁止,接收器有效,此時微處理器可以接收來自RS-485 總線的數(shù)據(jù)字節(jié)。此電路中,任一時刻SP485R 芯片中的“接收器”和“發(fā)送器”只能夠有1 個處于工作狀態(tài)。

連接至A 引腳的上拉電阻R7、連接至B 引腳的下拉電阻R8 用于保證無連接的SP485R芯片處于空閑狀態(tài),提供網(wǎng)絡(luò)失效保護,以提高RS-485 節(jié)點與網(wǎng)絡(luò)的可靠性。

如果將SP485R 連接至微處理器80C51 芯片的UART 串口,則SP485R 芯片的RO 引腳不需要上拉;否則,需要根據(jù)實際情況考慮是否在RO 引腳增加1 個大約10K 的上拉電阻。


6. 串口MODBUS通訊
      Modbus作為工業(yè)通信回路中數(shù)據(jù)交換的規(guī)則已經(jīng)被廣泛地應(yīng)用在各個領(lǐng)域,使得具有Modbus 通信協(xié)議的設(shè)備方便通信,例如PLC、變頻器、流量計、溫濕度、上位機組態(tài)軟件、各種傳感器儀表等。

      Modbus通信協(xié)議分為兩種串行通信模式,ASCII 和RTU 通信模式。在使用時,需要先設(shè)定通信模式以及串行口RS232、RS485的通信參數(shù)(波特率,奇偶校驗,從機地址,數(shù)據(jù)位,停止位,字節(jié)順序),在Modbus 總線上的所有設(shè)備應(yīng)具有相同的通信模式和串行通信參數(shù)

modbus信息幀結(jié)構(gòu)組成



7. MODBUS命令報文
讀數(shù)據(jù)    


8. MODBUS關(guān)鍵概念
    

(1)上位機讀取數(shù)據(jù)每次間隔時間一般不小于100ms

(2)設(shè)備地址:MODBUS從機通訊地址,在一個網(wǎng)絡(luò)中不能有兩個相同的地址。(3)功能碼:MODBUS 協(xié)議規(guī)定的功能碼

(4)寄存器地址和寄存器數(shù)

主站命令中的參數(shù)是從寄存器地址開始的寄存,讀寄存器長度的N個寄存器。(5)從站響應(yīng)數(shù)據(jù)

從站響應(yīng)數(shù)據(jù)是:字節(jié)數(shù)和N個數(shù)字節(jié)數(shù)據(jù)。





9. MODBUS主站常用操作
    


1)讀優(yōu)化:對于不連續(xù)地址的數(shù)據(jù)讀取,是否采取打包讀,則系統(tǒng)使用打包讀命令,一次性完成多個地址的讀取。

2)讀優(yōu)化間隔:讀優(yōu)化時,若地址之間小于此間隔,則會打包到一起,使用多讀命令一次讀取。

3)最大包長:一次通訊允許的最大數(shù)據(jù)長度。

4)字節(jié)順序:調(diào)整32位雙字的解碼順序。

以32位整數(shù)為例,說明字節(jié)順序的含義:

1234:表示雙字元件不做處理直接解碼,。

例如:從串口讀到的數(shù)據(jù)為0000 00 01 表示 1。

2143:表示雙字元件高低字不顛倒,但字內(nèi)高低字節(jié)顛倒。

例如:從串口讀到的數(shù)據(jù)為0000 00 01 表示 0x00000100 (即256)。

3412:表示雙字元件高低字顛倒,但字內(nèi)高低字節(jié)不顛倒。

例如:從串口讀到的數(shù)據(jù)為0000 00 01 表示 0x00010000 (即65536)。

4321:表示雙字元件內(nèi)4個字節(jié)全部顛倒。

例如:從串口讀到的數(shù)據(jù)為00 00 00 01 表示 0x0100 0000 (即1677 721





10. C語言MODBUS程序
    

(1).CRC16算法:

INT16U CRC16(INT8U *puchMsg, INT16U usDataLen)

{

   INT8U uchCRCHi = 0xFF;               /* 高CRC字節(jié)初始化 */

   INT8U uchCRCLo = 0xFF;               /* 低CRC 字節(jié)初始化 */

   INT8U uIndex;                        /* CRC循環(huán)中的索引 */

   while (usDataLen--)                  /* 傳輸消息緩沖區(qū) */

   {

      uIndex = uchCRCHi ^*puchMsg++;   /* 計算CRC */

      uchCRCHi = uchCRCLo ^auchCRCHi[uIndex];

      uchCRCLo = auchCRCLo[uIndex];

   }

   return (uchCRCHi << 8 |uchCRCLo);

}



(2)發(fā)送命令程序

本例程以Mag64為核心CPU

void Read_InPut(INT8U Addr,INT16UStart,INT16U Len)

{

   INT16U CRC;

   SendBuffer_485[0]=Addr;                  //設(shè)備地址

   SendBuffer_485[1]=0x04;                  //modbus功能碼

   SendBuffer_485[2]=Start/256;             //Start為寄存器地址

   SendBuffer_485[3]=Start%256;

   SendBuffer_485[4]=Len/256;               //Len為讀取寄存器長度

   SendBuffer_485[5]=Len%256;

   CRC=CRC16(SendBuffer_485,6);

   SendBuffer_485[6]=CRC/256;               //CRC校驗高位

   SendBuffer_485[7]=CRC%256;               //CRC校驗低位

   R485_OUT;                                //使能RS485發(fā)送

   SendLen_485=8;

   SendNum_485=0;

   CloseINT0();                            //關(guān)閉串口接受中斷

   UCSR0B |= BIT(UDRIE0);                  //打開串口發(fā)送中斷

}



(3)返回數(shù)據(jù)解析

數(shù)據(jù)接收使用串口中斷,ReceivedBuffer_485為接收數(shù)據(jù)組,ReceivedNum_485為接收到數(shù)據(jù)長度,ReceivedFlag_485接收到數(shù)據(jù)標(biāo)志。函數(shù)float Datasum(INT8UBYTE1, INT8U BYTE2, INT8U BYTE3, INT8U BYTE4)把浮點數(shù)的4個字節(jié)轉(zhuǎn)換為1個浮點數(shù)。

float Datasum(INT8U FloatByte1, INT8U FloatByte2,INT8U FloatByte3, INT8U FloatByte4)

{  

float aa;

union IntTOFP

   {      

      FP32       F32;

      INT8U      T8[4];

   };

   union IntTOFPaa;

  aa.T8[0] = FloatByte1;                    

aa.T8[1] = FloatByte2;

aa.T8[2] = FloatByte3;

aa.T8[3] = FloatByte4;

return aa;

}

void Read_Lmag(INT8U Ad)

{

   INT8U  i,j;

   INT8U  Num1[10],BIT;

   INT16UCRC1,CRC2;

   FP32  Flow;                                 //aaa為瞬時流量數(shù)值

  ReceivedFlag_485=1;

  Open_Time1_Ms5(20);

  Read_InPut(Ad,0x1010,2);                   //發(fā)送設(shè)備地址、寄存器地址、寄存器長度

  while(ReceivedFlag_485);                   //等待接收結(jié)束

  if((ReceivedNum_485==9)&&(ReceivedBuffer_485[0]==Ad))    // 判斷數(shù)據(jù)是否正確

   {

      CRC1=CRC16(ReceivedBuffer_485,7);                

     CRC2=ReceivedBuffer_485[7]*256+ReceivedBuffer_485[8];

      if(CRC1==CRC2)

      {// 轉(zhuǎn)換數(shù)據(jù)為浮點數(shù)

Flow= Datasum(ReceivedBuffer_485[6], ReceivedBuffer_485[5], ReceivedBuffer_485[4] ,ReceivedBuffer_485[3]);

       }

}

}



11. MODBUS調(diào)試軟件MODBUS PULL
    

以從站地址為1,波特率9600,讀取所有實時數(shù)據(jù)為例設(shè)置方法如下:

按照表2所示:起始寄存器地址4113  寄存器個數(shù)為22

1. 設(shè)置采集命令包括設(shè)備地址(1)、MODBUS功能碼(04)、寄存器地址(4113)、寄存器長度(2)、采集間隔(1000)。  


2.設(shè)置串口數(shù)據(jù)

根據(jù)從機串口格式(1位起始位 8位數(shù)據(jù)位 1位停止位,無校驗)設(shè)置如下圖:


3.設(shè)置數(shù)據(jù)顯示格式


4.通訊成功界面

  
本帖最近評分記錄:
  • 下載積分:+1(yu1804353868) 真誠感謝!
  • 下載積分:+3(ipc小許)
  • 下載積分:+5(祝鐘劍) 真誠感謝!
  • 下載積分:+5(mk自動化) 真誠感謝!
  • 下載積分:+1(夏日雪夢) 真誠感謝!
  • 技術(shù)咨詢熱線:18922726899  巨控黃工
    夏日雪夢
    為了夢,夢一生
    級別: VIP會員
    精華主題: 0
    發(fā)帖數(shù)量: 528 個
    工控威望: 4295 點
    下載積分: 4306 分
    在線時間: 465(小時)
    注冊時間: 2009-04-03
    最后登錄: 2025-05-20
    查看夏日雪夢的 主題 / 回貼
    1樓  發(fā)表于: 2019-01-20 10:23
    非常感謝

    主站蜘蛛池模板: 成人欧美一区二区三区在线_97精品伊人久久大香线蕉_亚洲最大看欧美片网站_不卡的一区二区_极品美女一级片_伊人11_东京热T0KY0综合久久_国产vr在线视频一区二区不卡 | 国产亚洲精品久久19p_肉人妻丰满av无码久久不卡_色综合久久久久久久粉嫩_好男人www在线社区_深夜A级毛片免费无码视频_久久91精品_精品国产91aⅴ一区二区三区_国产精品永久免费 | 性迷宫法国_九色porny丨首页在线_中文字幕观看_俺来也官网欧美久久精品_www久久精品_欧美激情爱爱_成人免费一区二区_99精品国产福久久久久久 | 国产黑色丝袜在线看片_精品欧美久久_日本美女视频一区二区_日本特级视频_国产精品色午夜免费视频_狠狠爱视频_天天色图片_2020精品国产福利在线观看香蕉 | 国产欧美亚洲一级激情在线观看_亚洲情视频_国产性猛交_国产又色又刺激高潮免费视频_在线亚洲天堂_久久精品人人做人人爽97_国产精品爽爽爽爽爽爽免费观看_中文字幕在线视频免费 | 日本黄色大片视频_freesex性中国熟妇_色香欲www7777综合网_国产精品无码不卡一区二区三区_一级毛片av_日韩中文字幕亚洲精品欧美_日本喷奶水中文字幕视频_不卡的毛片 | 日韩96_精品91自产拍在线观看一区_成人高清视频免费_中文字幕亚洲欧洲_99视频在线观看精品_91激情在线视频_久久久亚洲精华液_26UUU在线亚洲欧美 | 99riav国产一区二区三区_婷婷综合久久一区二区三区_天天干91_日韩欧美在线观看一区二区三区_中文字幕亚洲一区_99视频精品全部免费免费观看_久久精品国产亚洲AV网站_粗长巨龙挤进新婚少妇 | 国产成人一区二区三区影院动漫_国产成人在线视频免费观看_久久99女女久久99久久_www.久久爱.com狼人_国产又爽又刺激的视频_日韩中文在线观看_天天草天天爱_狠狠爱天天操 | 人妻免费久久久久久久了_办公丝袜av一区二区三区_2019日韩中文字幕mv_国产黄频免费无数次看_国产精品国产成人国产三级_动漫久久_午夜男女XX00视频福利_日韩高清在线不卡一区二区 | 四虎网站入口_亚洲人成久久婷婷精品五码_一本一道久久久a久久久精品91_色播亚洲_成年女人免费碰碰视频_久久国产噜噜亚洲AV_三级理论中文字幕在线播放_日日碰狠狠添天天爽不卡 | 亚洲AV少妇熟女猛男_成人真爽爱性视频网_国产综合色精品一区二区三区_国产精品视频–无名网_又大又爽又黄无码A片在线观看_99亚洲狠狠色综合久久位_美女黄视频在线播放_91成人精品网站 | 成人无码H动漫网站免费_中文在线最新版天堂8_亚洲视频在线观看中文字幕_蜜芽亚洲AV尤物183不卡资源_国产精品成人AAAA网站女吊丝_日韩欧美日韩在线_亚洲成人自拍_色网在线观看 | 欧洲精品在线一区_久久久久99精品成人片_久久久噜噜噜久噜久久_天天看天天操_男女作爱全部免费观爱_国产一区二区三区免费看_女的被弄到高潮娇喘喷水视频_国产中文字幕三区 | 成人无码视频在线观看网站_快色91_国产欧美日韩一区二区三区在线_在线看黄色_极品销魂美女一区二区_无码成人一区二区三区_videos日本多毛hd护士_人妻互换HD无码中文在线 | 又湿又紧又大又爽A视频_色八区人妻在线视频免费_玩弄丰满少妇XXXXX性多毛_美女av影视_午夜好爽好舒服免费视频_亚洲一区二区麻豆_97精品在线_日本免费小视频 | 亚洲精品一区二区在线播放_久久国产精品一国产精品金尊_久久国产精品一国产精品_在线国产日韩_狠狠色综合网站久久久久久久_8060yy中文无码视频在线观看_美女色站_中文第一区 | 亚洲欧美国产另类_欧美与黑人午夜性猛交久久久_国产欧美日本在线_风流老熟女一区二区三区_天天干人人_91网国产高清_色婷婷一区二区三区四区成人网_中国特黄一级片 | 色视频中文字幕_亚洲性色成人av_外国黄色一级毛片_亚洲国产wwwccc36天堂_国产日韩精品久久久无码专区_久草精品视频在线观看_国产欧美精品aaaaa久久_精品国产一区二区在线观看 | 成年人色网站_91精品久久久久久久久99绯色_国产日韩精品在线播放_国产日产精品久久久久兰花_日本成人福利视频_99国内精品久久久久影院_一个人看的ww在线视频_在线观看免费a∨网站 | 国产成人精品午夜在线播放_99精品啪在线观看国产老湿机_亚洲天堂亚洲天堂_无码国产精品一区二区AV_亚洲国产人成自久久国产_国产成人尤物在线视频_可以免费观看的一级毛片_欧美成天堂网地址 | tube性老少配bbwcom_无码被窝影院午夜看片爽爽_31xx视频在线影院_亚洲色图清纯制服_老师穿旗袍白丝让我爽翻天AV_久久精品久久久久久噜噜_国产极品视觉盛宴_粉嫩小泬无遮挡久久久久久 | 中文字幕无线精品亚洲乱码一区_免费一级高清毛片_高清久久久久_日韩国产欧美综合_国产精品色哟哟网站_亚洲黄色高清视频_av在线资源播放_久久乐视频 | 免费岛国片_人妻中文乱码在线网站_蜜臀av国内精品久久久_69国产精品视频免费观看_成人久久免费网站_欧美性色黄大片WWW喷水_亚洲精品国产高清_无码专区亚洲制服丝袜 | 911影视_91看篇_国产一级黄色影片_爱爱视频在线_国产成人精品一区二区三区视频_久久91精品国产一区二区三区_aa视频免费观看_国产精品无码一区二区牛牛 | 亚洲激情综合视频_一本之道加勒比在线观看_丰满的年轻搜子在线观看_亚洲国产成人精品女人_精品国产aⅴ一区二区三区_久久777国产线看观看精品_成人a级免费视频_av天天干 | 啪啪影视_一日本道A高清免费播放_亚洲三级久久久_一级毛片毛片_99久久久久久国产精品_欧美在线视频日韩_亚洲国产一区二区三区波多野结衣_精品三区 | 穿越时空的少女免费观看动漫日语_国产野战无套av毛片_国产精品成人aaaaa网站_A级毛片内射免费视频_魔鬼部队高清国语免费观看_97精品免费公开在线视频_日韩av高清在线播放_国产欧美日韩另类 | 99re6热在线精品视频播放_免费看片日本_日本精品αv中文字幕_黄色欧美视频_中文字字幕在线一本通_美国一级黄色录像_中国老妇xxxx性开放_狠狠操很很干 | 久久久久久久久久网_精品视频在线免费观看_亚洲av午夜精品无码专区_美女牲交视频一级毛片动态图_亚洲国产成人综合精品_浴室人妻的情欲hd三级国产_涩涩的视频_bbwcuckold精品熟妇 | 久久精品国产99久久无毒不卡_欧美色欧美亚洲另类七区_国产精品无码天堂av_欧美性色欧美性a片_亚洲日色_日韩A人毛片精品无人区乱码_久久免费毛片大全_国产综合一区二区三区视频一区 国产免费黄色片_久久午夜免费视频_麻豆影视在线免费观看_成人三级做爰av_久久精品中文闷骚内射_美女视频黄的免费_人妻无码一区二区三区_亚洲特黄毛片 | 亚洲性色av日韩在线观看_国产成人精品无码片区在线观看_国产精品操女人_av官网在线播放_国产内射露脸在线观看_久久2018_日韩97_国产精品毛片久久久久久久av | av大片免费在线观看_精品熟人一区二区三区四区_热久久久久久久_日本一二三区在线_日日噜噜噜夜夜爽爽狠狠照片_成年免费A级毛片无码_色5月婷婷丁香六月_国产激情欧美 | 久久精品亚洲一区二区三区_香蕉快播_蜜桃视频一区二区_一区二区不卡视频_成人在线无码_夫の目の前侵犯新婚人妻在线_无码avav无码中文字幕_国产精品一国产精品最新章节 | 一级黄色aaa_国产免费午夜a无码v视频_精品免费在线观看_中文在线无码高潮潮喷_97人人在线_国产成人亚洲合集青青草原精品_欧美成人性色_久久99国产视频 | 国产精品6699_性饥渴艳妇性色生活片在线播放_国产黄色片av_精品一二_欧美日韩精品不卡一区二区三区_一级毛片真人免费视频_a级黄色片免费_国产二区视频在线观看 | 中国少妇做受XXXXX69小说_欧美日韩中出_精品欧美日韩精品_亚洲AV手机在线观看不卡_3bmm在线观看视频免费_永久免费无码AV在线网站_日韩狠狠_日本中文字幕在线播放 | 国产精品久久久久一区_一线高清视频在线观看www国产_成人黄色视频播放165_国产精品亚洲自拍_中文字幕亚洲精品日韩一区_狠狠躁日日躁夜夜躁2020_久色91_成年人免费看片 | 国产精品奇米一区二区三区小说_国产乱人伦av在线a_日日综合网_调味的房子在线观看_亚洲av狠狠爱一区二区三区_国产在线播放精品视频_人与禽的免费一级毛片_国产一级精品视频 | 亚洲国产综合色产精品色在线_成熟丰满熟妇高潮XXXXX_久草色在线观看_亚洲乱操_最大胆裸体人体牲交免费_国产又粗又猛又爽又黄A_草草影视在线观看_三级黄色免费看 | 国产成人精品aa毛片_亚洲欧美日韩综合一区_久久久久久曰本av免费免费_精品国产V无码大片在线观看_99视频中文字幕_www免费视频_美女末成年视频黄是免费网址_91chinese老女人 |