衡阳派盒市场营销有限公司

電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>單片機(jī)>freeModbus代碼庫的代碼閱讀和移植的學(xué)習(xí)筆記說明

freeModbus代碼庫的代碼閱讀和移植的學(xué)習(xí)筆記說明

2019-04-17 | pdf | 0.08 MB | 次下載 | 1積分

資料介紹

  freeModbus的代碼庫還是很好用的,本人在wince和C8051F410下均移植成功(只用到RTU模式)。但freeModbus提供的文檔比較少,只能對(duì)照著Modbus協(xié)議一點(diǎn)點(diǎn)試著讀懂源代碼。下面是閱讀代碼期間的跟蹤筆記:

  1、eMBErrorCode為枚舉類型變量,代表錯(cuò)誤碼,共有8個(gè)錯(cuò)誤代號(hào)。常用的是MB_ENOERR,即沒有錯(cuò)誤。

  2、eMBMode枚舉類型變量代表設(shè)備的工作模式,分別是MB_RTU、MB_ASCII和MB_TCP。

  3、eMBEventType枚舉類型變量定義了event的類型,分別是EV_READY,代表Startup啟動(dòng)完成;EV_FRAME_RECEIVED代表接收到幀;EV_EXECUTE代表執(zhí)行功能函數(shù);EV_FRAME_SENT代表幀已發(fā)送。

  4、eMBParity枚舉類型變量代表奇偶校驗(yàn)選項(xiàng),分別是MB_PAR_NONE無校驗(yàn),MB_PAR_ODD奇校驗(yàn),和MB_PAR_EVEN偶校驗(yàn)。

  5、mb.c文件中的靜態(tài)變量ucMBAddress存儲(chǔ)設(shè)備地址,此變量在eMBInit函數(shù)中初始化。

  6、在C51Modbus中將freeModbus庫中的源碼進(jìn)行了更改,例如盡量不使用函數(shù)指針,而是直接調(diào)用相關(guān)功能函數(shù),根據(jù) eMBCurrentMode中的工作模式,來判斷調(diào)用哪個(gè)函數(shù)。在freeModbus庫中某些函數(shù)聲明前加上reentrant,這是Keil編譯器特有的關(guān)鍵詞。這樣做帶來的一個(gè)不足是:不能動(dòng)態(tài)綁定函數(shù),從而導(dǎo)致庫代碼失去可移植性。這樣做是C51編譯器與ANSI標(biāo)準(zhǔn)不兼容的特殊性導(dǎo)致的。

  7、ENTER_CRITICAL_SECTION()和EXIT_CRITICAL_SECTION()宏,實(shí)際上就是關(guān)閉和打開全局中斷。

  8、帶xMBPort前綴的函數(shù)都屬于port layer層,也就是獨(dú)立于ModBus協(xié)議棧。

  9、freeModbus庫中函數(shù)名稱的第一個(gè)字母表示返回值類型,例如e表示返回enum枚舉類型;v表示void無返回值;x表示BOOL布爾類型。注意這條規(guī)則并不是總成立,但主要函數(shù)基本上還是符合此規(guī)則的。第一個(gè)字母后的MB代表是屬于ModBus協(xié)議棧的函數(shù)。

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1TC358743XBG評(píng)估板參考手冊(cè)
  2. 1.36 MB  |  330次下載  |  免費(fèi)
  3. 2開關(guān)電源基礎(chǔ)知識(shí)
  4. 5.73 MB  |  6次下載  |  免費(fèi)
  5. 3100W短波放大電路圖
  6. 0.05 MB  |  4次下載  |  3 積分
  7. 4嵌入式linux-聊天程序設(shè)計(jì)
  8. 0.60 MB  |  3次下載  |  免費(fèi)
  9. 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
  10. 0.61 MB  |  2次下載  |  免費(fèi)
  11. 651單片機(jī)窗簾控制器仿真程序
  12. 1.93 MB  |  2次下載  |  免費(fèi)
  13. 751單片機(jī)大棚環(huán)境控制器仿真程序
  14. 1.10 MB  |  2次下載  |  免費(fèi)
  15. 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
  16. 0.86 MB  |  2次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33564次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6653次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537796次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191185次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)
哪个百家乐技巧平台信誉好| 赌球赔率| 百家乐官网画哪个路单| 大发888客户端| 真人百家乐官网软件云南景| 大发888娱乐城 真钱下载| 百家乐官网23珠路打法| 大发888官方 3000| 百家乐官网博彩吧| 托克逊县| 百家乐官网赌场论坛在线| 大发888在线娱乐城合营商| 银河国际娱乐城| 百家乐官网连赢的策略| 缅甸百家乐的玩法技巧和规则| 百家乐官网赌现金| 菲律宾凤凰娱乐| 专业百家乐筹码| 百家乐官网筹码多少钱| 大发888 大发888娱乐城 大发888娱乐场 | 百家乐网站东方果博| 百家乐官网牌机的破解法| 大发888官方sscptdf88yb| 百家乐百家乐游戏| 巴黎百家乐官网地址| 大发888最新网站| 百家乐大眼仔用法| 至尊百家乐官网年代| 大发888娱乐场 手机版| 百家乐有好的投注法吗| 思南县| 威尼斯人娱乐城地址lm0| 联众百家乐官网的玩法技巧和规则 | 香港百家乐官网赌城| 泰兴市| 大发888下载 df888| 百家乐代理在线游戏可信吗网上哪家平台信誉好安全 | 博客| 大发888游戏平台hg dafa888 gw| 百家乐在线赌场| 累积式百家乐官网的玩法技巧和规则 |