目 錄自序引言第1章 前后臺軟件架構 11.1 MCU51的發(fā)展歷史 11.2 前后臺軟件架構 31.2.1 大循環(huán)掃描類型 31.2.2 中斷觸發(fā)類型 31.2.3 節(jié)拍觸發(fā)類型 41.2.4 綜合性類型 41.3 實用單片機系統(tǒng) 51.3.1 目錄結構 51.3.2 三要素實例 71.3.3 消息機制 91.3.4 軟件定時器 131.3.5 按鍵掃描 171.3.6 串口通信 201.3.7 計時時鐘 231.3.8 界面設計 241.4 小結 28第2章 軟件基礎 302.1 Source Insight 302.2 C#編程風格 332.3 Keil-C51 332.4 MDK-ARM 352.5 結構體 362.6 臨界態(tài) 372.7 臨界態(tài)保護 382.8 數據存儲對齊 392.9 指針 402.10 宏定義 412.11 字符編碼 422.12 小結 44第3章 小型工控系統(tǒng) 453.1 嵌入式設備分類 453.2 可編程控制器 473.2.1 起源 473.2.2 體系結構 483.2.3 編程語言 493.2.4 可靠性設計 503.2.5 易用性 523.3 人機界面 533.3.1 硬件介紹 533.3.2 軟件編程 533.4 傳感器 563.4.1 無源開關 563.4.2 接近開關 583.4.3 模擬傳感器 603.5 驅動器 633.5.1 繼電器 643.5.2 電磁閥 663.5.3 直流電動機 663.5.4 交流電動機 673.5.5 變頻器 683.5.6 直流無刷電動機 693.5.7 伺服電動機 693.5.8 步進電動機 703.5.9 振動盤 713.5.10 工業(yè)電源類設備 723.6 Modbus協議 733.6.1 需求分析 733.6.2 UART收發(fā)器 743.6.3 幀模式 743.6.4 校驗 753.6.5 接口標準 783.6.6 數據交換協議 803.7 PID 823.7.1 P算法 823.7.2 I算法 833.7.3 D算法 843.8 小結 84第4章 msPLC/msOS設計過程 854.1 需求來源 854.2 項目背景 874.2.1 工作原理 884.2.2 硬件設計 914.2.3 軟件設計 914.3 開發(fā)評估板 944.3.1 msPLC來源 954.3.2 msPLC-Demo 974.3.3 電路分析 974.4 八任務μC/OS-II 1024.4.1 選擇μC/OS-II 1034.4.2 精簡μC/OS-II 1034.5 選擇C# 1054.5.1 C#命名規(guī)范 1074.5.2 變量函數重名 1084.5.3 分層分塊 1094.5.4 CMSIS 1104.5.5 寄存器組 1114.5.6 命名空間 1134.5.7 抽象封裝 1144.5.8 優(yōu)雅的編程風格 1154.5.9 結構體System和App 1164.5.10 引入設備層 1164.5.11 文件目錄建立 1184.5.12 兩大結構體 1204.5.13 引入數據庫 1224.5.14 平臺架構圖 1244.6 菜單界面 1244.6.1 C#界面編程 1254.6.2 控件 1274.6.3 頁面 1314.6.4 控件鏈表 1344.6.5 創(chuàng)建界面 1364.6.6 解析界面 1384.6.7 按鍵處理 1414.7 業(yè)務邏輯 1434.7.1 按鍵處理 1444.7.2 訪問機制 1454.8 設備 1474.8.1 Systick 1494.8.2 ADC 1504.8.3 DI 1524.8.4 DO 1524.8.5 Timer 1534.8.6 USART1 1544.8.7 Key 1554.8.8 LCD 1554.8.9 Storage 1554.9 小結 161第5章 定制雙任務內核 1635.1 處理器架構 1645.2 工作原理 1655.2.1 FlashROM 1655.2.2 RAM 1665.2.3 內核 1685.2.4 動態(tài)變量與棧 1695.2.5 函數調用 1705.2.6 中斷處理 1715.3 內核切換 1725.3.1 搶占 1735.3.2 切換內容 1735.3.3 如何切換 1745.3.4 任務結構體 1755.3.5 內核切換代碼 1765.3.6 棧初始化 1785.3.7 創(chuàng)建任務 1795.3.8 任務啟動 1805.4 消息機制 1815.5 小結 182第6章 應用 1846.1 浮點類型顯示 1846.1.1 浮點類型數據存儲結構 1846.1.2 sprintf函數 1856.1.3 水壓控件初始化 1866.2 數據庫指針 1876.3 界面定時刷新 1886.4 msPLC-100C 1896.4.1 接線端口 1906.4.2 端口 1906.4.3 RTC時鐘電路 1936.4.4 RS485接口 1936.4.5 DC-DC 1956.5 萬年歷 1956.6 Modbus 1966.6.1 HMI屏 1966.6.2 主從機 2006.6.3 從機代碼 2016.6.4 主機代碼 2056.7 小結 214后記 215