單晶片三劍客:51單晶片與C語言編程

蔡杏山

商品描述

《單晶片三劍客:51 單晶片與C 語言程式設計》介紹了單晶片入門,基本數位電路、數位與C51 語言基礎,51 單晶片的硬體系統,
Keil C51 程式設計軟體的使用,單晶片驅動LED的電路及程式實例,單晶片驅動LED 數位管的電路及程式設計實例,中斷功能的使用及程式實例,
定時器/ 計數器使用及程式實例,按鍵輸入電路及程式實例、雙色
LED 點陣的使用及程式實例,液晶顯示器的使用及程式實例,步進電動機的使用及程式實例,串行通訊及程式實例,
模擬I2C 匯流排通訊及程式實例,A/D 與D/A 轉換電路及程式設計例,STC89C5× 系列單晶片介紹。

目錄大綱

前言
第 1 章 單晶片入門1
1.1 單晶片簡介 1
1.1.1 什麼是單晶片1
1.1.2 單晶片應用系統的組成及實例說明2
1.1.3 單晶片的分類3
1.1.4 單晶片的應用領域4
1.2 單晶片應用系統開發實例 5
1.2.1 選擇單晶片的型號5
1.2.2 設計單晶片電路原理圖5
1.2.3 製作單晶片電路6
1.2.4 用程式軟體編寫單晶片控製程式8
1.2.5 電腦、下載(燒錄)器和單晶片的連接11
1.2.6 用燒錄軟體將程式寫入單晶片13
1.2.7 單晶片電路的通電與測試 16
第 2 章 基本數位電路、數制與 C51 語言基礎19
2.1 基本數位電路 19
2.1.1 與門19
2.1.2 或門20
2.1.3 非門22
2.1.4 與非門23
2.1.5 或非門24
2.2 數制與數制的轉換 26
2.2.1 十進制數26
2.2.2 二進制數26
2.2.3 十六進制數27
2.2.4 二進制數與十進制數的轉換28
2.2.5 二進位數與十六進位數的轉換28
2.2.6 單晶片的數的表示及運算29
2.3 C51 語言基礎 31
2.3.1 常量31
2.3.2 變數32
2.3.3 運算符33
2.3.4 關鍵字36
2.3.5 數組36
2.3.6 循環語句38
2.3.7 選擇語句40
第 3 章 51 單晶片的硬體系統42
3.1 8051 單晶片的接腳功能與內部結構 42
3.1.1 引腳功能說明42
3.1.2 單晶片與片外記憶體的連接與控制44
3.1.3 內部結構說明46
3.2 8051 單晶片 I/O 連接埠的結構與工作原理 49
3.2.1 P0 埠49
3.2.2 P1 埠50
3.2.3 P2 埠51
3.2.4 P3 埠52
3.3 8051 單晶片的記憶體 53
3.3.1 記憶體的儲存單位與編址53
3.3.2 片內、外程式記憶體的使用與編址54
3.3.3 片內、外資料記憶體的使用與編址54
3.3.4 資料存儲器的分區55
3.3.5 特殊功能暫存器(SFR)58
第 4 章 Keil C51 程式設計軟體的使用63
4.1 Keil C51 軟體的安裝 63
4.1.1 Keil C51 軟體的版本及取得63
4.1.2 Keil C51 軟體的安裝63
4.2 程式的編寫與編譯 66
4.2.1 啟動 Keil C51 軟體並新建工程文件66
4.2.2 新原始程式檔案並與工程關聯起來69
4.2.3 編寫程式71
4.2.4 編譯程式72
4.3 程式的仿真與調試 76
4.3.1 編寫或開啟程式76
4.3.2 仿真設定77
4.3.3 編譯程式78
4.3.4 仿真調試程式79
第5章 單晶片驅動 LED 的電路及程式設計實例 83
5.1 LED 簡介 83
5.1.1 外形與符號83
5.1.2 性質83
5.1.3 檢測84
5.1.4 限流電阻的阻值計算 84
5.2 單晶片點亮單一 LED 的電路及程序說明 85
5.2.1 單晶片點亮單一 LED 的電路85
5.2.2 採用位元操作方式編程點亮單一 LED 的程式及說明85
5.2.3 採用位元組操作方式編程點亮單一 LED 的程式及說明87
5.2.4 單一 LED 以固定頻率閃爍發光的程序及說明88
5.2.5 單一 LED 以不同頻率閃爍發光的程序及說明89
5.3 單晶片點亮多個 LED 的電路及程序說明 89
5.3.1 單晶片點亮多個 LED 的電路89
5.3.2 採用位元操作方式編程點亮多個 LED 的程式及說明90
5.3.3 以位元組操作方式編程點亮多個 LED 的程式及說明91
5.3.4 多個 LED 以不同頻率閃爍發光的程序及說明91
5.3.5 多個 LED 左移和右移的程序及說明92
5.3.6 LED 循環左移和右移的程序及說明93
5.3.7 LED 移動並閃爍發光的程序及說明95
5.3.8 用查表方式控制 LED 多樣形式發光的程序及說明96
5.3.9 LED 花樣發光的程序及說明96
5.4 以 PWM 方式調節 LED 亮度的原理及程序說明 97
5.4.1 以 PWM 方式調節 LED 亮度的原理97
5.4.2 以 PWM 方式調節 LED 亮度的程序及說明98
第6章 單晶片驅動 LED 數位管的電路及程式實例 100
6.1 單晶片驅動一位 LED 數位管的電路及程式說明 100
6.1.1 一位 LED 數碼管的外形、結構與偵測 100
6.1.2 單晶片連接一位 LED 數位管的電路102
6.1.3 單一數碼管靜態顯示一個字元的程式及說明103
6.1.4 單一數碼管動態顯示多個字元的程式及說明103
6.1.5 單一數碼管環形轉圈顯示的程序及說明104
6.1.6 單一數碼管顯示邏輯電平的程序及說明104
6.2 單晶片驅動 8 位元 LED 數位管的電路及程式說明 105
6.2.1 多位 LED 數位管外形、結構與偵測105
6.2.2 單晶片連接 8 位元共陰極數位管的電路107
6.2.3 8 位數碼管顯示 1 個字元的程式及說明110
6.2.4 8 位數碼管逐位顯示 8 個字元的程式及說明110
6.2.5 8 位數碼管同時顯示 8 個字元的程式及說明111
6.2.6 8 位數碼管動態顯示 8 個以上字元的程式及說明112
第 7 章 中斷功能的使用及程式設計實例114
7.1 中斷的基本概念與處理過程 114
7.1.1 什麼是中斷114
7.1.2 中斷的基本概念114
7.1.3 中斷的處理過程114
7.2 8051 單晶片的中斷系統結構與控制暫存器 115
7.2.1 中斷系統的結構115
7.2.2 中斷源暫存器116
7.2.3 中斷允許暫存器 IE118
7.2.4 中斷優先權控制暫存器 IP118
7.3 中斷程式設計實例 119
7.3.1 中斷編程的電路例圖 119
7.3.2 以外部中斷 0 以低電位方式觸發中斷的程序及說明119
7.3.3 用外部中斷 1 以下降沿方式觸發中斷的程序及說明121
第8章 定時器 / 計數器的使用及程式實例123
8.1 定時器 / 計數器的定時與計數功能
8.1.1 定