亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? modbus.lst

?? keil 寫的一個單片機modbus通信例程
?? LST
?? 第 1 頁 / 共 3 頁
字號:
 196   1              sendBuf[byteCount] = crcData >> 8;
 197   1              byteCount++;
 198   1              sendBuf[byteCount] = crcData & 0xff;
 199   1              
 200   1              sendCount = byteCount + 1;
 201   1              beginSend();
 202   1      }//void readRegisters(void)
*** WARNING C280 IN LINE 166 OF MODBUS.C: 'result': unreferenced local variable
*** WARNING C280 IN LINE 170 OF MODBUS.C: 'finsh': unreferenced local variable
 203          
 204          
 205          //強制單個線圈
 206          void forceSingleCoil(void)
 207          {
 208   1              uint8 addr;
 209   1              uint8 tempAddr;
 210   1              uint16 tempData;
 211   1              uint8  onOff;
 212   1              uint8 i;
 213   1              
 214   1              //addr = (receBuf[2]<<8) + receBuf[3];  
 215   1              //tempAddr = addr & 0xfff;
 216   1              addr = receBuf[3];
 217   1              tempAddr = addr;
 218   1      
 219   1              //onOff = (receBuf[4]<<8) + receBuf[5]; 
 220   1              onOff = receBuf[4];
 221   1              
 222   1              //if(onOff == 0xff00)
 223   1              if(onOff == 0xff)
 224   1              {       //設為ON
 225   2                      tempData = 1;
 226   2              } 
 227   1              //else if(onOff == 0x0000)
 228   1              else if(onOff == 0x00)
 229   1              {       //設為OFF
 230   2                      tempData = 0;
 231   2              }
 232   1      
 233   1              setCoilVal(tempAddr,tempData);  
 234   1              
 235   1              for(i=0;i<receCount;i++)
 236   1              {
 237   2                      sendBuf[i] = receBuf[i];
 238   2              }
C51 COMPILER V8.16   MODBUS                                                                01/21/2009 13:25:31 PAGE 5   

 239   1              sendCount = receCount;
 240   1              beginSend();    
 241   1      }//void forceSingleCoil(void)
 242          
 243          
 244          //設置多個寄存器
 245          void presetMultipleRegisters(void)
 246          {
 247   1              uint8 addr;
 248   1              uint8 tempAddr;
 249   1              uint8 byteCount;
 250   1              uint8 setCount;
 251   1              uint16 crcData;
 252   1              uint16 tempData;
 253   1              uint8  finsh;   //為1時完成 為0時出錯
 254   1              uint8 i;
 255   1              
 256   1              //addr = (receBuf[2]<<8) + receBuf[3];
 257   1              //tempAddr = addr & 0xfff;
 258   1              addr = receBuf[3];
 259   1              tempAddr = addr & 0xff;
 260   1      
 261   1              //setCount = (receBuf[4]<<8) + receBuf[5];
 262   1              setCount = receBuf[5];
 263   1              byteCount = receBuf[6]; 
 264   1              
 265   1              for(i=0;i<setCount;i++,tempAddr++)
 266   1              {
 267   2                      tempData = (receBuf[i*2+7]<<8) + receBuf[i*2+8];
 268   2              
 269   2                      setRegisterVal(tempAddr,tempData);                      
 270   2              }
 271   1              
 272   1              sendBuf[0] = localAddr;
 273   1              sendBuf[1] = 16;
 274   1              sendBuf[2] = addr >> 8;
 275   1              sendBuf[3] = addr & 0xff;
 276   1              sendBuf[4] = setCount >> 8;
 277   1              sendBuf[5] = setCount & 0xff;
 278   1              crcData = crc16(sendBuf,6);
 279   1              sendBuf[6] = crcData >> 8;
 280   1              sendBuf[7] = crcData & 0xff;
 281   1              sendCount = 8;
 282   1              beginSend();    
 283   1      }//void presetMultipleRegisters(void)
*** WARNING C280 IN LINE 253 OF MODBUS.C: 'finsh': unreferenced local variable
 284          
 285          
 286          
 287          //檢查uart0數據
 288          void checkComm0Modbus(void)
 289          {
 290   1              uint16 crcData;
 291   1              uint16 tempData;
 292   1              
 293   1              if(receCount > 4)
 294   1              {
 295   2                      switch(receBuf[1])
 296   2                      {
 297   3                              case 1://讀取線圈狀態(讀取點 16位以內)
 298   3                              case 3://讀取保持寄存器(一個或多個)
 299   3                              case 5://強制單個線圈
C51 COMPILER V8.16   MODBUS                                                                01/21/2009 13:25:31 PAGE 6   

 300   3                              case 6://設置單個寄存器
 301   3                                              if(receCount >= 8)
 302   3                                              {//接收完成一組數據
 303   4                                                      //應該關閉接收中斷
 304   4                                                      
 305   4                                                      if(receBuf[0]==localAddr && checkoutError==0)
 306   4                                                      {
 307   5                                                              crcData = crc16(receBuf,6);
 308   5                                                              if(crcData == receBuf[7]+(receBuf[6]<<8))
 309   5                                                              {//校驗正確
 310   6                                                                      if(receBuf[1] == 1)
 311   6                                                                      {//讀取線圈狀態(讀取點 16位以內)
 312   7                                                                              readCoil();                                                             
 313   7                                                                      }
 314   6                                                                      else if(receBuf[1] == 3)
 315   6                                                                      {//讀取保持寄存器(一個或多個)
 316   7                                                                              readRegisters();
 317   7                                                                      }
 318   6                                                                      else if(receBuf[1] == 5)
 319   6                                                                      {//強制單個線圈
 320   7                                                                              forceSingleCoil();                                                              
 321   7                                                                      }
 322   6                                                                      else if(receBuf[1] == 6)
 323   6                                                                      {
 324   7                                                                              //presetSingleRegister();                                                               
 325   7                                                                      }
 326   6      
 327   6                                                              }
 328   5                                                      }                                               
 329   4                                                      receCount = 0;  
 330   4                                                      checkoutError = 0;
 331   4                                              }
 332   3                                              break;
 333   3                              
 334   3                              case 15://設置多個線圈
 335   3                                              tempData = receBuf[6]; 
 336   3                                              tempData += 9;  //數據個數
 337   3                                              if(receCount >= tempData)
 338   3                                              {
 339   4                                                      if(receBuf[0]==localAddr && checkoutError==0)
 340   4                                                      {
 341   5                                                              crcData = crc16(receBuf,tempData-2);
 342   5                                                              if(crcData == (receBuf[tempData-2]<<8)+ receBuf[tempData-1])
 343   5                                                              {
 344   6                                                                      //forceMultipleCoils();                 
 345   6                                                              }
 346   5                                                      }       
 347   4                                                      receCount = 0;
 348   4                                                      checkoutError = 0;
 349   4                                              }
 350   3                                              break;
 351   3                              
 352   3                              case 16://設置多個寄存器
 353   3                                              tempData = (receBuf[4]<<8) + receBuf[5];
 354   3                                              tempData = tempData * 2;        //數據個數
 355   3                                              tempData += 9;
 356   3                                              if(receCount >= tempData)
 357   3                                              {
 358   4                                                      if(receBuf[0]==localAddr && checkoutError==0)
 359   4                                                      {
 360   5                                                              crcData = crc16(receBuf,tempData-2);
 361   5                                                              if(crcData == (receBuf[tempData-2]<<8)+ receBuf[tempData-1])
C51 COMPILER V8.16   MODBUS                                                                01/21/2009 13:25:31 PAGE 7   

 362   5                                                              {
 363   6                                                                      presetMultipleRegisters();                      
 364   6                                                              }
 365   5                                                      }       
 366   4                                                      receCount = 0;
 367   4                                                      checkoutError = 0;
 368   4                                              }
 369   3                                              break;
 370   3                                                                      
 371   3                              default:
 372   3                                              break;                  
 373   3                      }
 374   2              }
 375   1      }//void checkComm0(void)
 376          
 377          //取線圈狀態 返回0表示成功
 378          uint16 getCoilVal(uint16 addr,uint16 *tempData)
 379          {
 380   1              uint16 result = 0;
 381   1              uint16 tempAddr;
 382   1              
 383   1              tempAddr = addr & 0xfff;
 384   1              //只取低8位地址
 385   1              switch(tempAddr & 0xff)
 386   1              {
 387   2                      case 0:
 388   2                                      break;
 389   2                      case 1: 
 390   2                                      *tempData = testCoil;
 391   2                                      break;
 392   2                      case 2:         
 393   2                                      break;          
 394   2                      case 3:
 395   2                                      break;          
 396   2                      case 4:
 397   2                                      break;          

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
麻豆精品一区二区三区| 99精品在线免费| 精品国产一区二区三区av性色| 日韩成人精品在线| 欧美一区二区三区不卡| 韩国女主播成人在线观看| 欧美v国产在线一区二区三区| 日本不卡一区二区三区| 91麻豆精品国产综合久久久久久| 午夜精品福利一区二区三区蜜桃| 777亚洲妇女| 国产一区二区三区黄视频| 亚洲欧洲精品一区二区三区| 99久久夜色精品国产网站| 午夜一区二区三区视频| 精品日产卡一卡二卡麻豆| 国产98色在线|日韩| 日韩电影在线一区二区| 国产精品欧美极品| 日韩一区二区三| 99re成人精品视频| 狠狠狠色丁香婷婷综合久久五月| 中文欧美字幕免费| 91精品国产综合久久国产大片| 岛国精品一区二区| 激情五月婷婷综合| 麻豆精品蜜桃视频网站| 天堂成人国产精品一区| 亚洲精品国产视频| 亚洲一区二区三区在线播放| 国产精品午夜久久| 国产精品免费久久| 欧美国产一区二区在线观看 | 亚洲三级电影网站| 麻豆精品国产91久久久久久| 国产在线视视频有精品| 欧美日韩中文字幕一区二区| 久久综合色8888| 日本不卡一区二区三区高清视频| 久久色.com| 精品成人在线观看| 一区免费观看视频| 亚洲高清免费观看| 精品在线免费视频| 99热在这里有精品免费| 欧美三级乱人伦电影| 欧美电影在哪看比较好| 久久人人97超碰com| 日本一区二区三区视频视频| 亚洲精品久久久蜜桃| 国产自产高清不卡| 欧美在线|欧美| 久久女同精品一区二区| 亚洲sss视频在线视频| 国产麻豆精品在线| 欧美亚洲综合久久| 国产精品视频yy9299一区| 日韩高清在线电影| 色悠悠久久综合| 国产精品丝袜黑色高跟| 高潮精品一区videoshd| 欧美一二三区在线观看| 亚洲综合视频在线观看| 国产在线精品一区二区| 884aa四虎影成人精品一区| 亚洲一区免费观看| 欧美性猛交xxxxxxxx| 三级欧美在线一区| av一区二区三区四区| 国产69精品一区二区亚洲孕妇| 亚洲成在线观看| 亚洲一区二区在线观看视频| 精品三级在线观看| 久久亚洲一级片| 麻豆国产精品777777在线| 精品一区二区在线免费观看| 日本精品免费观看高清观看| 国产精品人妖ts系列视频| 国产麻豆精品久久一二三| 日韩一区二区三区在线视频| 性久久久久久久久久久久| 9191成人精品久久| 国产综合色产在线精品| 国产性天天综合网| 91福利在线导航| 日日欢夜夜爽一区| 欧美成人综合网站| kk眼镜猥琐国模调教系列一区二区| 国产亚洲欧美在线| 91原创在线视频| 日韩avvvv在线播放| 久久久精品一品道一区| av中文字幕在线不卡| 日本欧美在线看| **性色生活片久久毛片| 欧美情侣在线播放| 成人免费福利片| 日韩国产欧美三级| 亚洲人成网站影音先锋播放| 欧美精品一卡两卡| 国产福利一区二区三区视频在线 | 久久毛片高清国产| 91丨九色丨蝌蚪富婆spa| 欧美aaaaa成人免费观看视频| 欧美激情一区在线| 91精品国产入口| 色妹子一区二区| 国产精品99久久久| 精品一区二区三区在线播放视频| 亚洲狼人国产精品| 亚洲天堂a在线| 国产精品少妇自拍| 国产午夜久久久久| 国产亚洲女人久久久久毛片| 日韩欧美黄色影院| 日本高清无吗v一区| 色综合天天综合网国产成人综合天| 国产精品一区专区| 狠狠色2019综合网| 成人一区二区三区中文字幕| 国产精品自拍一区| av在线不卡免费看| 99re亚洲国产精品| 欧美日韩国产在线观看| 欧美日韩精品欧美日韩精品一 | 一本色道久久综合亚洲精品按摩| 国产成a人无v码亚洲福利| 国产酒店精品激情| 91免费看片在线观看| 在线观看日韩毛片| 日韩免费性生活视频播放| 2024国产精品视频| 国产精品久久看| 一区二区三区四区在线播放 | 成人欧美一区二区三区视频网页| 69精品人人人人| 色狠狠色狠狠综合| 亚洲黄一区二区三区| 久久久亚洲精华液精华液精华液| 亚洲一区二区三区四区中文字幕| 成人av高清在线| 亚洲色图制服诱惑| 色乱码一区二区三区88| 亚洲国产精品综合小说图片区| 在线影院国内精品| 日韩精品一二三四| 精品成a人在线观看| 日韩精品成人一区二区在线| 91精品国产综合久久久蜜臀粉嫩 | 亚洲成年人网站在线观看| 欧美综合一区二区| 最近日韩中文字幕| 欧洲精品中文字幕| 日韩精品一二三| 日韩一区二区三区在线| 日韩精品成人一区二区三区| 欧美性色黄大片| 日韩精品电影在线观看| 欧美一区二区三区啪啪| 国产成人精品免费一区二区| 久久精品人人做| 欧美精品日日鲁夜夜添| 亚洲免费av高清| 欧洲在线/亚洲| 国产精品免费视频观看| 欧美日韩精品电影| 国产一区二区不卡| 亚洲欧美电影一区二区| 欧美成人猛片aaaaaaa| 成人av在线网站| 午夜久久久影院| 国产精品久久毛片| 欧美三级在线视频| 国产成人精品免费网站| 香港成人在线视频| 国产视频视频一区| 在线观看不卡一区| www.视频一区| 免费看日韩a级影片| 国产精品久久久久久久午夜片| 日韩欧美中文一区二区| 成人a区在线观看| 国产一区二区三区香蕉| 国产综合久久久久影院| 美国毛片一区二区三区| 久久久国产精品麻豆| 综合电影一区二区三区| 国产精品久久久久久久久晋中| 国产精品色哟哟网站| 日韩一区在线播放| 亚洲黄色尤物视频| 一区二区三区美女视频| 国产精品欧美极品| 国产人妖乱国产精品人妖| 中文字幕免费在线观看视频一区| 日韩欧美自拍偷拍| 欧美一级xxx| 亚洲一区二区高清| 一区二区三区精品视频在线| 日韩三级免费观看|