Modbus RTU嵌入式開發(從站篇·微課視頻版)
徐嘉浩
商品描述
目錄大綱
目錄
本書源碼
協議篇
第1章Modbus背景
1.1背景介紹
1.2協議版本
1.3專業術語
第2章Modbus調試工具(40min)
2.1Modbus Poll主站調試工具
2.1.1簡介
2.1.2安裝方法
2.1.3功能介紹
2.1.4使用方法
2.2Modbus Slave從站調試工具
2.2.1簡介
2.2.2安裝方法
2.2.3功能介紹
2.2.4使用方法
2.3主站與從站的通信測試
2.3.1兩個USB轉RS485工具相互連接
2.3.2主從站軟件配置
2.3.3功能演示
第3章RS485(23min)
3.1簡介
3.2特點
3.3信號介紹
3.4RS485和Modbus的關系
3.5MasterSlave架構
3.6硬件設計
3.7軟件設計
第4章Modbus RTU協議介紹(104min)
4.1協議概要
4.2報文格式
4.2.1報文的開始和結束標誌
4.2.2字符時間
4.2.3協議報文的組成
4.2.4大小端模式和字節序
4.2.5CRC16校驗
第5章功能碼詳解(91min)
5.1寄存器功能異同點介紹
5.201(0x01)讀取線圈/離散輸出狀態
5.302(0x02)讀取離散輸入狀態
5.403(0x03)讀取保持寄存器的值
5.504(0x04)讀取輸入寄存器的值
5.605(0x05)寫單個線圈/離散輸出狀態
5.706(0x06)寫單個保持寄存器
5.815(0x0F)寫多個線圈/離散輸出狀態
5.916(0x10)寫多個保持寄存器
5.10Modbus異常響應
5.10.1觸發機制
5.10.2響應報文構成
開發篇
第6章協議棧移植(88min)
6.1開發前準備事項
6.2協議棧文件說明
6.3協議棧文件移植至MDK5工程
6.4功能配置
6.5底層驅動配置
6.5.1串口端口使能配置
6.5.2串口端口初始化配置
6.5.3串口端口發送單字節和接收單字節配置
6.5.4串口端口中斷配置
6.5.5定時器端口初始化配置
6.5.6定時器端口使能和失能配置
6.5.7定時器端口中斷配置
第7章寄存器功能實現(135min)
7.1寄存器功能類型
7.2輸入寄存器
7.3保持寄存器
7.4離散輸入
7.5線圈或離散輸出
第8章兩種運行協議棧的架構(115min)
8.1裸機架構運行協議棧
8.1.1臨界段代碼配置
8.1.2運行協議棧配置
8.1.3驗證測試
8.2FreeRTOS架構運行協議棧
8.2.1臨界段代碼配置
8.2.2事件組文件配置
8.2.3運行協議棧配置
8.2.4編譯註意事項
8.2.5驗證測試
第9章項目實踐(35min)
9.1讀或寫線圈的狀態
9.1.1板載LED與線圈的綁定
9.1.2Modbus Poll的參數配置
9.1.3Modbus Poll設置和讀取LED的狀態
9.2讀離散輸入的狀態
9.2.1板載按鍵與離散輸入綁定
9.2.2Modbus Poll的參數配置
9.2.3Modbus Poll讀取按鍵的狀態
9.3讀或寫保持寄存器的狀態
9.3.1PWM與保持寄存器綁定
9.3.2Modbus Poll的參數配置
9.3.3Modbus Poll設置和讀取PWM值
9.4讀輸入寄存器的狀態
9.4.1溫度傳感器與輸入寄存器綁定
9.4.2Modbus Poll的參數配置
9.4.3Modbus Poll讀取溫度傳感器的值
源碼解析篇
第10章圖解Modbus RTU主從站通信過程(166min)
10.1協議棧啟動流程
10.2主從站通信流程
第11章協議棧源碼詳解(53min)
11.1RTU啟動執行流程
11.2RTU初始化
11.3RTU使能
11.4輪詢處理
11.4.1eMBPoll()函數解析
11.4.2eMBRTUReceive()函數解析
11.4.3eMBRTUSend()函數解析
11.5串口接收中斷處理
11.6定時器超時中斷處理
11.7串口發送中斷處理
11.8各功能碼的處理介紹
11.8.1功能碼處理數組xFuncHandlers[]
11.8.2mbframe.h文件介紹
11.8.3eMBFuncReadInputRegister()函數解析
11.8.4eMBFuncReadHoldingRegister()函數解析
11.8.5eMBFuncWriteMultipleHoldingRegister()函數解析
11.8.6eMBFuncWriteHoldingRegister()函數解析
11.8.7eMBFuncReadCoils()函數解析
11.8.8eMBFuncWriteCoil()函數解析
11.8.9eMBFuncWriteMultipleCoils()函數解析
11.8.10eMBFuncReadDiscreteInputs()函數解析
參考文獻







