圖書信息
出版社: 機械工業出版社;
:
正文語種: 簡體中文
開本: 16
ISBN: 9787111247722
條形碼: 9787111247722
尺寸: 25.4 x 18.2 x 1.4 cm
重量: 422 g
內容簡介
本書使用Protel繪製原理圖及PcB圖,並進行信號完整性分析;使用Keil單片機開發工具進行工程開發與組織;單片機開發中重要的C語言特性;Cx5l高級語言特性以及如何使用RTX51。高質量的單片機開發首先需要開發者的經驗與技巧,但也需要正確的開發規範與流程保證。《8位單片機開發:技術、技巧與規範》也介紹了如何使用工具軟體(如使用CVS、PC—L,int等)來保證代碼質量,同時在附錄中給出了遵循,MISRAC:2004的Cx51編程規範。
目錄
前言
第1章 單片機開發基礎
1.1 單片機基礎
1.1.1 單片機的發展過程
1.1.2 單片機的發展趨勢
1.1.3 單片機主流產品系列
1.2 8051核心結構
1.3 8051存儲器
1.3.1 8051存儲器分類
1.3.2 典型8051單片機存儲器
1.3.3 擴展80C51單片機存儲器
1.3.4.Philips80C5lMx單片機存儲器
1.3.5 數據存儲器
1.3.6 程式存儲器
1.4 單片機系統設計方法
1.4.1 單片機系統的生命周期
1.4.2 單片機系統開發過程
1.5 單片機系統硬體設計
1.5.1 硬體設計內容
1.5.2 硬體設計要點
1.6 本章回顧
第2章 電路仿真
2.1 Multisim簡介
2.2 Multisim功能簡介
2.3 Mulltisim電路仿真實例
2.3.1 繪製仿真電路圖
2.3.2 仿真電路
2.3.3 分析電路
2.3.4 生成報告
2.4 Protel99電路仿真
2.5 本章回顧
第3章 單片機系統仿真
3.1 Proteus簡介
3.2 ProteusISIS功能簡介
3.3 ProteusISIS單片機仿真實例
3.3.1 繪製仿真原理圖
3.3.2 程式設計
3.3.3 程式調試
3.4 其他仿真方式
3.4 1Muhisim10單片機仿真
3.4.2 KeilixVision3單片機仿真
3.5 本章回顧
第4章 原理圖與PCB設計
4.1 Protel99簡介
4.2 原理圖設計
4.2.1 原理圖設計步驟
4.2.2 原理圖設計規則
4.2.3 Protel99設計環境
4.2.4 Protel99原理圖設計
4.3 PCB設計
4.3.1 PCB設計步驟
4.3.2.Protel99PCB設計
4.4 PCB信號完整性分析
4.4.1 信號完整性簡介
4.4.2 Protel99信號完整性分析工具
4.4.3 Protel99信號完整性分析步驟
4.5 本章回顧
第5章 Keil開發工具
5.1 Keil開發工具簡介
5.2 KeilixVision3IDE
5.2.1 使用Keil~~Vision3IDE的開發步驟
5.2.2 利用KeiltxVision3IDE進行工程組織
5.2.3 KeiltxVision3IDE其他功能
5.2.4 KeiltrVision3.IDE使用技巧
5.2.5 Keil“Vision3IDE支持的檔案類型
5.3 CxSl最佳化編譯器
5.3.1 使用e語言開發的優勢
5.3.2 Cx51控制命令
5.4 Ax51宏彙編器
5.5 BL51/Lx51連結/重定位器
5.5.1 連結/重定位器的作用
5.5.2 代碼分組
5.5.3 數據覆蓋
5.6 LIBx51庫管理器
5.7 目標HEX轉換器
5.7.1 OH5I/OHx5l目標HEX轉換器
5.7.2 0C51分組目標檔案轉換器
5.8 uVision3調試器
5.9 Monitor-51
5.10 RTX-51實時作業系統
5.11 本章回顧
第6章 CxSl語言擴展及預處理
6.1 存儲區。
6.1.1 ROM-
6.1.2 片上RAM
6.1.3 片外RAM
6.1.4 Far存儲區
6.1.5 SFR存儲區
6.2 存儲模式
6.2.1 Small
6.2.2 CompactI
6.2.3 Large
6.3 存儲類型
6.3.1 明確指定存儲類型
6.3.2 使用默認存儲類型
6.4 Cx51擴展的關鍵字
6.5 類型限定詞
6.5.1 const
6.5.2 volatile
6.6 數據類型
6.7 指針
6.7.1 通用指針
6.7.2 指定存儲區的指針
6.8 函式聲明
6.8.1 參數與堆疊
6.8.2 參數與暫存器
6.8.3 返回值
6.8.4 存儲模式
6.8.5 暫存器組
6.8.6 訪問暫存器組
6.8.7 qp斷函式
6.8.8 可重人函式
6.8.9 alien(PIJM-51)函式
6.8.10 實時任務函式
6.9 預處理器
6.9.1 預處理命令
6.9.2 宏定義
6.9.3 檔案包含
6.9.4 條件編譯
6.10 本章回顧
第7章 重要的C語言特性
7.1 跳轉輔助手段
7.1.1 continue
7.1.2 break
7.1.3 goto
7.2 關jptypedef
7.2.1 區別於#define
7.2.2 使用typedef
7.3 指針
7.3.1 基本概念
7.3.2 指針運算
7.3.3 指針與數組
7.3.4 指針與結構體
7.3.5 指針與函式
7.4 變數的作用域
7.5 變數的生存期
7.6 關於static
7.7 理解複雜的C語言聲明
7.8 位操作
7.8.1 位運算符
7.8.2 位操作的作用
7.8.3 位段
7.8.4 位段與位運算符的比較
7.9 本章回顧
第8章 Cx5l高級編程
8.1 檔案定製
8.1.1 啟動代碼
8.1.2 變數初始化檔案
8.1.3 低級流I/O處理檔案
8.1.4 存儲器分配檔案
8.2 Cx51最佳化器
8.2.1 指定最佳化等級
8.2.2 使用絕對暫存器定址
8.2.3 利用暫存器傳遞函式參數
8.2.4 代碼最佳化等級
8.2.5 連結器代碼封裝
8.3 編寫適宜的代碼
8.3.1 選擇合適的存儲模式
8.3.2 顯式聲明存儲類型
8.3.3 使用最小長度類型
8.3.4 使用無型號數據類型
8.3.5 儘量使用局部變數
8.3.6 其他最佳化方式
8.4 與彙編程式的接口
8.5 與PL/M-51的接口
8.6 數據存儲格式
8.6.1 處理器大小端
8.6.2 bit、char、int、long存儲格式
8.6.3 浮點數存儲格式
8.6.4 指針存儲格式
8.7 絕對地址訪問
8.7.1 使用可訪問絕對地址的宏
8.7.2 使用_at_關鍵字
8.7.3 使用連結控制命令
8.8 8051堆疊
8.9 本章回顧
第9章 RTX51實時作業系統
9.1 RTX51基礎
9.1.1 RTOS簡介
9.1.2 前後台系統
9.1.3 多任務系統
9.1.4 RTX51多任務系統
9.2 RTX51基本概念
9.2.1 RTX51任務管理
9.2.2 RTX51i扣斷管理
9.2.3 RTX51任務間通信
9.2.4 信號
9.2.5 信箱
9.2.6 信號量
9.2.7 動態存儲器管理爭2.8 時間管理
9.3.RqN51技術參數
9.4 RTX51編程參考
9.4.1 函式總覽
9.4.2 系統初始化
9.4.3 任務管理
9.4.4 扣斷管理
9.4.5 等待函式
9.4.6 信號函式
9.4.7 訊息函式
9.4.8 信號量函式
9.4.9 存儲器管理
9.4.10 系統時鐘管理
9.5 使用RTX51Tiny
9.5.1 要求與限定
9.5.2 配置RTX51tiny
9.5.3 RTX51Tiny配置原則
9.5.4 RTX51Tiny例程
9.6 使用RTX51Full
9.6.1 配置RTX51Full
9.6.2 RTX51FuU例程
9.7 本章回顧
第10章 編寫高質量的Cx51代碼
10.1 一定需要高質量的Cx51代碼嗎
10.2 有ANSIC就足夠了嗎
10.2.1 K&RC與ANSIC
10.2.2 K&RC與ANSIC的區別
10.2.3 不僅僅需要ANSIC
10.3 不得不提的MISRA
10.3.1 關於MISRAC
10.3.2 MISRAC規範的主要內容
10.3.3 對MISRAc的思考
10.4 利用PC-Lint進行代碼檢查
10.4.1 PC-Lint簡介
10.4.2 安裝與設定PC-Lint
10.4.3 集成PC-Lint到特定的工具
10.4.4 對PC-Lint的思考
10.5 代碼質量的保證
10.5.1 代碼的正確性
10.5.2 代碼的可靠性
10.5.3 代碼的可維護性
10.5.4 代碼的高效性
10.5.5 代碼的可測試性
10.5.6 代碼的可移植性
10.5.7 代碼的可擴展性
10.6 軟體版本控制系統
10.6.1 軟體版本控制
10.6.2 CVS簡介
10.6.3 CVS與TortoiseCVS的獲取及安裝
10.6.4 CVS操作的基本概念
10.6.5 配置CVS伺服器端
10.6.6 測試CVS伺服器端
10.6.7 TortoiseCVS客戶端操作
10.6.8 使用KeiluVision的CVS配置接口
10.7 本章回顧
附錄
附錄A Cx51編程規範
A.1 導言
A.1.1 編寫目的
A.1.2 規範的主要內容
A.1.3 縮寫和術語
A.2 命名規則
A.3 檔案組織
A.3.1 頭檔案的結構
A.3.2 源檔案的結構
A.3.3 目錄結構
A.3.4 其他
A.4 程式版式
A.4.1 空行
A.4.2 代碼行
A.4.3 代碼行內的空格
A.4.4 對齊
A.4.5 長行拆分
A.4.6 修飾符的位置
A.4.7 注釋
A.5 編程規則和建議
A.5.1 表達式
A.5.2 聲明和定義
A.5.3 整數數據類型及操作
A.5.4 字元操作
A.5.5 浮點型
A.5.6 語句
A.5.7 類型轉換
A.5.8 常量
A.5.9 指針
A.5.10 數組
A.5.11 函式與宏
A.5.12 控制語句
A.5.13 記憶體分配
A.5.14 錯誤處理
A.5.15 斷言
A.5.16 標準庫
A.5.17 通用規則和建議
附錄B Cx51運行庫參考
B.1 宏
B.2 本徵庫函式
B.3 緩衝區處理庫函式
B.4 字元類庫函式
B.5 數據轉換類庫函式
B.6 數學計算類庫函式
B.7 存儲器分配類庫函式
B.8 I/O流類庫函式
B.9 字元串庫函式
B.10 變長參數庫函式
B.11 其他庫函式
參考文獻