產品詳情
手把手教你學單片機的
C語言程序設計目錄
?
第1章? 概述
1.1? 提高編制單片機應用程序效率最好的辦法是采用C語言編程
1.2? C語言具有突出的優點。
第2章? 單片機簡史及實驗器材簡介
2.1 ?單片機的發展簡史及特點
2.1 ?單片機的發展簡史及特點
2.2 ?單片機C語言入門的有效途徑
2.3? 實驗器材介紹
2.3.1? Keil C51? Windows集成開發環境
2.3.2? 51 MCU DEMO試驗板
2.3.3? 并口下載器
2.3.4? 16x2字符型液晶顯示模組(帶背光照明)
2.3.5? 128x64點陣圖型液晶顯示模組(帶背光照明)
2.3.6? 5V高穩定專用穩壓電源
第3章 Keil C51集成開發環境及并口下載軟件介紹
3.1?? Keil C51集成開發平臺安裝
3.2?? 并口下載軟件使用
第4章 單片機的基本知識及第一個C51程序
4.1? MCS-51單片機的基本結構
4.2? 80C51的基本特征及引腳定義
4.2.1? 80C51的基本特征
4.2.2? 80C51的引腳定義及功能
4.3? 80C51的內部結構
4.4? 80C51的存儲器配置和寄存器
4.5? 第一個C51演示程序及效果
4.5.1? 建立一個工程項目,選擇芯片并確定選項
4.5.2? 建立C源程序文件
4.5.3? 添加文件到當前項目組中及編譯文件
4.5.4? 檢查并修改源程序文件中的錯誤
4.5.5?? 軟件模擬仿真調試
4.5.6? 下載程序(編程操作)
4.5.7? 觀察程序運行的結果
第5章? C語言程序的基本結構
5.1? 用函數調用方式完成LED1~LED8這8個二極管實現D0、D2、D4、D6及D1、D3、D5、D7的交替點亮的實驗,周期約1秒
5.1.1? 源程序文件
5.1.2? 程序分析解釋
5.2? C語言程序的組成結構
5.3? 只用主函數完成LED1~LED8這8個二極管實現D0、D2、D4、D6及D1、D3、D5、D7的交替點亮的實驗,周期約1秒
5.3.1? 源程序文件
5.3.2? 程序分析解釋
5.4? 文件包含處理
5.5? 通用的C語言程序組成結構
5.6? 將程序的若干個函數保存在幾個源程序文件中,最后再將它們連接在一起,實現D0、D2、D4、D6及D1、D3、D5、D7這8個二極管的交替點亮的實驗,周期約1秒
5.6.1? 實現方法
5.6.2 ?源程序文件
5.6.3? 程序分析解釋
5.7? 將程序的若干個函數保存在幾個源程序文件中,最后用文件包含的方法將它們連接在一起,實現D0、D2、D4、D6及D1、D3、D5、D7這8個二極管的交替點亮的實驗,周期約1秒
5.7.1? 實現方法
5.7.2? 源程序文件
5.7.3? 程序分析解釋
第6章? C語言的標識符、關鍵字和數據類型
6.1? 標識符和關鍵字
6.2? 在51 MCU DEMO試驗板上實現:使右側4個LED數碼管從左至右顯示“1234”
6.2.1? 實現方法
6.2.2? 源程序文件
6.2.3? 程序分析解釋
6.3? 數據類型
6.3.1? 對數據類型的分析
6.4? 在51 MCU DEMO試驗板上實現:使8個LED數碼管從左至右掃描顯示“00000000”,每位數碼管點亮1mS,即刷新頻率125Hz
6.4.1? 實現方法
6.4.2? 源程序文件
6.4.3? 程序分析解釋
6.5? 修改程序后在51 MCU DEMO試驗板上實現:使8個LED數碼管從左至右掃描顯示“00000000”,每位數碼管點亮1000mS,即刷新頻率0.125Hz
6.6? 變量的數據類型選擇
6.7? 數據類型之間的轉換
6.8? 無符號字符型變量值與無符號整型變量值相乘的實驗
6.8.1? 實現方法
6.8.2? 源程序文件
6.8.3? 程序分析解釋
6.9? 無符號整型變量值與無符號整型變量值相乘的實驗
6.9.1? 實現方法
6.9.2? 源程序文件
6.9.3? 程序分析解釋
第7章? 常量、變量及存儲器類型
7.1? 常量
7.2? 在51 MCU DEMO試驗板上實現乘法運算:兩個乘數分別為常量與變量,其積在數碼管上顯示(最大顯示到50)。
7.2.1? 實現方法
7.2.2? 源程序文件
7.2.3? 程序分析解釋
7.3? 變量
7.4? 存儲器類型
7.5? 在51 MCU DEMO試驗板上實現兩個局部變量val1、val2的顯示:val1的值在右邊的個、十位2個數碼管上顯示,從1到99變化。Val2的值在右邊的百、千位2個數碼管上顯示,從1到99顯示奇數。
7.5.1? 實現方法
7.5.2? 源程序文件
7.5.3? 程序分析解釋
7.6? 在51 MCU DEMO試驗板上實現全局變量globe_x的顯示。兩個子函數模塊分別對全局變量globe_x進行加或減操作。
7.6.1? 實現方法
7.6.2? 源程序文件
7.6.3? 程序分析解釋
第8章 編譯預處理及重新定義數據類型
8.1?? 宏定義
8.1.1? 不帶參數的宏定義
8.1.2? 帶參數的宏定義
8.2? 在51 MCU DEMO試驗板上實現兩數相加并輸出結果,變量的數據類型用宏定義的縮寫形式。
8.2.1? 實現方法
8.2.2? 源程序文件
8.2.3? 程序分析解釋
8.3? 使用帶參數的宏定義進行運算,結果送51 MCU DEMO試驗板顯示。
8.3.1? 實現方法
8.3.2? 源程序文件
8.3.3 ?程序分析解釋
8.4? 文件包含
8.4.1? 文件包含預處理命令的一般形式
8.4.2? 文件包含使用注意
8.5? 條件編譯
8.6? 重新定義數據類型
8.7? 用typedef重新定義數據類型,變量val賦值后送51 MCU DEMO試驗板,使板上的8個LED模擬彩燈閃爍。
8.7.1? 實現方法
8.7.2? 源程序文件
8.7.3? 程序分析解釋
第9章? 運算符與表達式
9.1? 算術運算符與表達式
9.2? 進行數學運算并將結果在51 MCU DEMO試驗板上輸出顯示。
9.2.1? 實現方法
9.2.2? 源程序文件
9.2.3? 程序分析解釋
9.3? 關系運算符與表達式
9.4? 在51 MCU DEMO試驗板上實現輸入數的大小比較及判斷
9.4.1? 實現方法
9.4.2? 源程序文件
9.4.3? 程序分析解釋
9.5? 邏輯運算符與表達式
9.6? 賦值運算符與表達式
9.6.1? 簡單賦值運算
9.6.2? 復合賦值運算符
9.7? 在51 MCU DEMO試驗板上實現邏輯判斷
9.7.1? 實現方法
9.7.2? 源程序文件
9.7.3? 程序分析解釋
9.8? 自增和自減運算符與表達式
9.9? 在51 MCU DEMO試驗板上進行自增運算a++和++b
9.9.1? 實現方法
9.9.2? 源程序文件
9.9.3? 程序分析解釋
9.10? 逗號運算符與表達式
9.11? 條件運算符與表達式
9.12? 位運算符與表達式
9.13? 在51 MCU DEMO試驗板上,實現兩個變量x、y的位運算,其結果輸出到8個LED上顯示
9.13.1? 實現方法
9.13.2? 源程序文件
9.13.3? 程序分析解釋
9.14? 強制類型轉換運算符與表達式
9.15? sizeof運算符與表達式
第10章? 表達式語句與復合語句
10.1? 表達式語句
10.2? 在51 MCU DEMO試驗板上進行復合語句的實驗。
?
10.2.1? 源程序文件
10.2.2? 程序分析解釋
10.2.3? 小結
10.3? 程序的結構化設計
10.4? 條件語句與控制結構
10.5? 在51 MCU DEMO試驗板上,進行
if(條件表達式) 語句1
? else????????? 語句2? 的實驗
10.5.1? 實現方法
10.5.2? 源程序文件
10.5.3? 程序分析解釋
10.6? 在51 MCU DEMO試驗板上,進行
if(條件表達式1) 語句1
?else if (條件式表達2) 語句2
else if(條件式表達3) 語句3
????????????? ┊
????????? else if(條件表達式n) 語句m
??????????????? else? 語句n???????????????? 的實驗
10.6.1? 實現方法
10.6.2? 程序文件
10.6.3? 程序分析解釋
第11章? switch/case開關語句
11.1? switch/case開關語句的組成形式
11.2? 在51 MCU DEMO試驗板上進行實驗:輸入年份year和月份month后,程序計算出該月有多少天day。
11.2.1? 實現方法
11.2.2? 源程序文件
11.2.3? 程序分析解釋
11.3? 循環語句
11.3.1? while語句
11.3.2? do-while話句
11.3.3? for語句
11.4? 用while語句求1+2+…+100的結果并將結果在51 MCU DEMO試驗板上顯示。
11.4.1? 源程序文件
11.4.2? 程序分析解釋
11.5? 用for語句求50~100之間的偶數之和并將結果在51 MCU DEMO試驗板上顯示。
11.5.1? 源程序文件
11.5.2? 程序分析解釋
11.6? goto話句
11.7?? break語句和 continue語句
11.7.1? break語句
11.7.2? continue語句
11.8? 用for語句在51 MCU DEMO試驗板上做一個0~9遞增數值測試,當數值小于5時,用break語句結束循環。
11.8.1? 源程序文件
11.8.2? 程序分析解釋
11.8.3? 小結
11.9? 用for語句在51 MCU DEMO試驗板上做一個0~9遞增數值測試,當數值小于5時,用continue語句結束本次循環(進入下一次循環)。
11.9.1? 源程序文件
11.9.2? 程序分析解釋
11.9.3? 小結
第12章? 函數的定義
12.1? 函數定義的一般形式
12.2? 函數的參數和函數返回值
12.3? 無參數函數、有參數函數、及空函數
12.3.1? 無參數函數
12.3.2? 有參數函數
12.3.3? 空函數
12.4? 函數調用的三種方式
12.4.1? 函數語句調用
12.4.2? 函數表達式調用
12.4.3? 作為函數參數調用
12.5? 對被調用函數的說明
12.6? 在51 MCU DEMO試驗板上實現參數傳遞的函數調用。數碼管的低2位顯示“3”和“8”。S1鍵按下后(即P3.2為低)調用交換子函數swap,使得數碼管的低2位交換顯示為“8”和“3”。
12.6.1? 實現方法
?
11.6.2? 源程序文件
12.6.3? 程序分析解釋
12.7? 在51 MCU DEMO試驗板上實現三個數按大小自動排列,數碼管的百、十、個位自動顯示a、b、c三個數中的最大、中間、最小值。
12.7.1? 實現方法
?
12.7.2? 源程序文件
12.7.3? 程序分析解釋
12.8? 在51 MCU DEMO試驗板上,設計一個能進行華氏-攝氏溫度轉換的儀器。用按鍵S1、S2輸入華氏溫度值,按下S4鍵后顯示出對應的攝氏溫度值。
12.8.1? 實現方法
12.8.2? 源程序文件
12.8.3? 程序分析解釋
第13章? 數組
13.1? 一維數組的定義
13.2? 二維及多維數組的定義
13.3? 字符數組
13.4? 數組元素賦初值
13.5? 數組作為函數的參數
13.6? 在51 MCU DEMO試驗板上,輸入數字“5”、“6”、“7”、“8”,將它們存入數組shuzu[4],然后讓它們在數碼管上顯示。
?????? 13.6.1? 源程序文件
13.6.2? 程序分析解釋
13.7? 在51 MCU DEMO試驗板上,輸入10個整數(0~999之間),輸出其中的最大數。
13.7.1? 源程序文件
13.7.2? 程序分析解釋
13.8? 在51 MCU DEMO試驗板上,用選擇法將數組shuzu[10]中的10個整數(0~999之間)進行從小到大排序,然后讓它們在數碼管上依序顯示。
13.8.1? 源程序文件
14.8.2? 程序分析解釋
13.9? 在51 MCU DEMO試驗板上,做出模擬的花樣廣告燈顯示。雖然只控制8個LED,但由此我們看到單片機在控制燈光照明變化方面的強大功能。
13.9.1? 源程序文件
14.9.2? 程序分析解釋
第14章? 指針
14.1? 指針與地址
14.2? 指針變量的定義
14.3? 指針變量的引用
14.4? 數組指針與指向數組的指針變量
14.5? 指針變量的運算
14.6? 指向多維數組的指針和指針變量
14.7? 在51 MCU DEMO試驗板上,分別采用直接引用變量和間接引用變量的方法,將變量值顯示在數碼管上
14.7.1? 源程序文件
15.7.2? 程序分析解釋
14.8? 在51 MCU DEMO試驗板上,分別用下標法和指針法引用數組元素并在數碼管上顯示
14.8.1? 源程序文件
14.8.2? 程序分析解釋
14.9? 地址傳遞的函數調用
14.9.1? 源程序文件
15.9.2? 程序分析解釋
14.10? 用數組名作為函數的參數進行傳遞
14.10.1? 源程序文件
14.10.2? 程序分析解釋
第15章? 結構體、共用體及枚舉
15.1? 結構體的概念
15.2? 結構體類型變量的定義
15.2.1? 先定義結構體類型再定義變量名
15.2.2? 在定義結構體類型的同時定義結構體變量名
15.2.3? 直接定義結構體變量
15.3? 關于結構體類型有幾點需要注意的地方:
15.4? 結構體變量的引用
15.5? 結構體變量的初始化
15.6? 結構體數組
15.7? 指向結構體類型數據的指針
15.8? 用指向結構體變量的指針引用結構體成員
15.9? 指向結構體數組的指針
15.10? 將結構體變量和指向結構體的指針作函數參數
15.11? 共用體的概念
15.12? 共用體類型變量的定義
15.12.1? 先定義共用體類型再定義變量名
15.12.2? 在定義共用體類型的同時定義共用體變量名
15.12.3? 直接定義共用體變量
15.13? 共用體變量的引用
15.14? 枚舉類型
15.15? 在51 MCU DEMO試驗板上,設計一個計時器(待顯時間存放于結構體變量中)
15.15.1? 實現方法
15.15.2? 源程序文件
15.15.3? 程序分析解釋
15.16? 在51 MCU DEMO試驗板上,設計一個跑表(計時時間存放于結構體變量中)
15.16.1? 實現方法
15.16.2? 源程序文件
15.16.3? 程序分析解釋
15.17? 在51 MCU DEMO試驗板上,設計一個計時器(計時時間存放于共用體變量中)
15.17.1? 實現方法
15.17.2? 源程序文件
15.15.3? 程序分析解釋
15.18? 做一個枚舉類型的實驗,在51 MCU DEMO試驗板上,設計一個顯示一星期內天數的裝置
15.18.1? 實現方法
15.18.2? 源程序文件
15.18.3? 程序分析解釋
第16章 定時器計數器控制及C51編程
16.1?? 定時/計數器的結構及工作原理
16.2?? 定時/計數器方式寄存器TMOD和控制寄存器TCON
16.3?? 定時/計數器的工作方式
16.3.1?? 方式0
16.3.2?? 方式1
16.3.3?? 方式2
16.3.4?? 方式3
16.4?? 定時器/計數器的初始化
16.5?? 使用定時器T1以方式0使單片機產生周期為1000μS等寬方波脈沖實驗(1000Hz音頻),在P3.5輸出驅動蜂鳴器發音
16.5.1?? 實現方法
16.5.2?? 源程序文件
16.5.3? 程序分析解釋
16.6?? 使用定時器T1以方式1計數實驗,計數值送數碼管顯示。
16.6.1?? 實現方法
16.6.2?? 源程序文件
16.6.3?? 程序分析解釋
16.7?? 使用定時器T0以方式2定時實驗,使8個發光管每2分鐘變換一次點亮方式(高、低互換)。
16.7.1?? 實現方法
16.7.2?? 源程序文件
16.7.3?? 程序分析解釋
第17章 串行接口及C51編程
17.1? 串行□的控制與狀態寄存器SCON
17.2? 特殊功能寄存器PCON
17.3? 串行口的工作方式
17.3.1? 工作方式0
17.3.2? 工作方式1
17.3.3? 工作方式2
17.3.4? 工作方式3
17.4? 波特率選擇
17.4.1? 方式0和方式2
17.4.2方式1和方式3
17.5? 在51 MCU DEMO試驗板上,進行單片機與PC機(個人電腦)的通信試驗1。
17.5.1? 實現方法
17.5.2? 源程序文件
17.5.3? 程序分析解釋
17.6? 在51 MCU DEMO試驗板上,進行單片機與PC機(個人電腦)的通信試驗2。
17.6.1? 實現方法
17.6.2? 控制指令的定義
17.6.3? 源程序文件
17.6.4? 程序分析解釋
第18章 中斷控制及C51編程
18.1?? 中斷的種類
18.1.1? 外中斷
18.1.2?? 內中斷
18.2?? MCS-51單片機的中斷系統
18.2.1?? 中斷源及控制
18.2.2?? 中斷響應及C51編程
18.2.3? 80C51單片機的常用中斷源和中斷向量
18.3? 編寫80C51單片機中斷函數時應嚴格遵循的規則
18.4? 在51 MCU DEMO試驗板上做外中斷的實驗
18.4.1? 實現方法
18.4.2? 源程序文件
18.4.3? 程序分析解釋
18.5? 在51 MCU DEMO試驗板上做定時中斷的實驗
18.5.1? 實現方法
18.5.2? 源程序文件
18.5.3? 程序分析解釋
18.6? 用定時中斷的方法去掃描點亮8個數碼管組成的簡易萬年歷
18.6.1? 實現方法
18.6.2? 源程序文件
18.6.3? 程序分析解釋
第19章 鍵盤接口技術及C51編程
19.1?? 獨立式鍵盤
19.2?? 行列式鍵盤
19.3?? 獨立式鍵盤接口的編程模式
19.4?? 行列式鍵盤接口的編程模式
19.5?? 鍵盤工作方式
19.6?? 獨立式鍵盤輸入實驗
19.6.1?? 實現方法
19.6.2?? 源程序文件
19.6.3?? 程序分析解釋
19.7?? 行列式鍵盤輸入實驗
19.7.1?? 實現方法
19.7.2?? 源程序文件
19.7.3?? 程序分析解釋
19.8?? 掃描方式的鍵盤輸入實驗
19.8.1?? 實現方法
19.8.2?? 源程序文件
19.8.3?? 程序分析解釋
19.9?? 定時中斷方式的鍵盤輸入實驗??
19.9.1?? 實現方法
19.9.2?? 源程序文件
19.9.3?? 程序分析解釋
第20章 LED顯示器接口技術及C51編程
20.1?? LED數碼顯示器的構造及特點
20.2?? LED數碼顯示器的顯示方法
20.2.1?? 靜態顯示法
20.2.2?? 動態掃描顯示法
20.3?? 靜態顯示實驗
20.3.1?? 實現方法
20.3.2?? 源程序文件
20.3.3?? 程序分析解釋
20.4?? 從P0口依次慢速(時間為0.1S)送顯87654321這8個字的實驗
20.4.1?? 源程序文件
20.4.2?? 程序分析解釋
20.5?? 從P0口依次快速(時間為1mS)送顯87654321這8個字的實驗
20.5.1?? 源程序文件
20.5.2?? 程序分析解釋
20.6?? 在51 MCU DEMO試驗板上做一個實時時鐘實驗
20.6.1?? 實現方法
20.6.2?? 源程序文件
20.6.3?? 程序分析解釋
第21章 IIC串行接口器件24C01及C51編程
21.1? EEPROM? AT24CXX的性能特點
21.1.1? AT24CXX引腳定義
21.1.2? AT24CXX系列存儲器特點
21.1.3? AT24CXX系列EEPROM的內部結構
21.2 ?AT24CXX系列EEPROM 芯片的尋址
21.2.1? 從器件地址
21.2.2? 應答信號
21.2.3? 數據地址分配
21.3? 寫操作方式
21.3.1? 字節寫
21.3.2? 頁寫
21.3.3? 應答查詢
21.3.4? 寫保護
21.4? 讀操作方式
21.4.1? ?立即地址讀取
21.4.2? 隨機地址讀取
21.4.3? 順序地址讀取
21.5? 讀寫AT24C01的相關功能子程序
21.5.1? 啟動讀寫時序子函數
21.5.2? 停止操作子函數
21.5.3? 應答子函數
21.5.4? 8位移位輸出子函數
21.5.5? 讀24C01A中a地址單元的數據
21.5.6? 將RAM中b地址單元的數據寫入24C01A中a地址單元中
21.5.7? 延時子函數
21.6? 在51 MCU DEMO試驗板上做讀寫AT24C01的實驗
21.6.1? 實現方法
21.6.2? 源程序文件
21.6.3?? 程序分析解釋
21.7?? 具有斷電后記憶定時時間的實時時鐘實驗
21.7.1?? 實現方法
21.7.2?? 源程序文件
20.7.3?? 程序分析解釋
第22章? 16x2點陣字符液晶模塊及C51驅動
22.1?? 16x2點陣字符液晶顯示器概述
22.2? 液晶顯示器的突出優點
22.3?? 16x2字符型液晶顯示模塊(LCM)特性
22.4?? 16x2字符型液晶顯示模塊(LCM)引腳及功能
22.5?? 16x2字符型液晶顯示模塊(LCM)的內部結構
22.6?? 液晶顯示控制驅動集成電路HD44780特點
22.7?? HD44780工作原理
22.7.1?? DDRAM—數據顯示用RAM
22.7.2?? CGROM—字符產生器ROM
22.7.3?? CGRAM—字型、字符產生器RAM
22.7.4?? IR—指令寄存器
22.7.5?? DR—數據寄存器
22.7.6?? BF—忙碌標志信號
22.7.7?? AC—地址計數器
22.8?? LCD控制器的指令
22.8.1?? 清除顯示器
22.8.2?? 光標歸位設定
22.8.3?? 設定字符進入模式
22.8.4?? 顯示器開關
22.8.5?? 顯示光標移位
22.8.6?? 功能設定
22.8.7?? CGRAM地址設定
22.8.8?? DDRAM地址設定
22.8.9?? 忙碌標志BF或AC地址讀取
22.8.10?? 寫數據到CGRAM或DDRAM中
22.8.11?? 從CGRAM或DDRAM中讀取數據
22.9?? LCM工作時序
22.10??? 16x2點陣字符液晶模塊與單片機的連接方式
22.11? 16x2點陣字符液晶模塊及C51驅動子程序
22.11.1? 寫命令到LCM子程序
22.11.2? 寫數據到LCM子程序
22.11.3? 檢測忙信號子程序
22.11.4? 顯示光標定位子函數
22.11.5? 顯示指定座標的一個字符(x=0~15,y=0~1)子函數
22.11.6? 演示第二行移動字符串子函數
22.11.7? 顯示指定座標的一串字符子函數1
22.11.8? 顯示指定座標的一串字符子函數2
22.12?? 在51 MCU DEMO試驗板上實現16x2LCM演示程序1
?
22.12.1?? 實現方法
22.12.2?? 源程序文件
22.12.3?? 程序分析解釋
22.13?? 在51 MCU DEMO試驗板上實現16x2LCM演示程序2
22.13.1?? 實現方法
22.13.2?? 源程序文件
22.13.3?? 程序分析解釋
第23章? 點陣圖形液晶模塊及C51編程
23.1? 128x64點陣圖形液晶模塊特性
23.2? 128x64點陣圖形液晶模塊引腳及功能
23.3? 128x64點陣圖形液晶模塊的內部結構
23.4? HD61203特點
23.5? HD61202特點
23.6? HD61202工作原理
23.6.1?? I/O緩沖器
23.6.2? 輸入寄存器
23.6.3? 輸出寄存器
23.6.4? 顯示存儲器電路
23.6.5?? XY地址計數器
23.6.6? 顯示起始行寄存器
23.6.7? Z地址計數器
23.6.8? 顯示開/關觸發器
23.6.9? 指令寄存器
23.6.10? 狀態字寄存器
23.6.11? 顯示數據鎖存器
23.7? HD61202的工作過程
23.8? 點陣圖形液晶模塊的控制器指令
23.8.1 顯示器開關
23.8.2? 設置頁(x地址)
23.8.3? 讀狀態
23.8.4? 顯示開始行
23.8.5 設置Y地址
23.8.6? 寫顯示數據
23.8.7? 讀顯示數據
23.9? HD61202的操作時序圖
23.10? 12864點陣圖形液晶模塊與單片機的連接方式
23.11? 128x64點陣圖形液晶模塊及C51驅動子程序
23.11.1? 判LCM忙子函數
23.11.2寫指令到LCM子函數
23.11.3寫數據到LCM子函數
23.11.4? 設定起始行子函數
23.11.5? 定位x方向、y方向的子函數
23.11.6? 屏幕開啟、關閉子函數
23.11.7? 復位子函數
23.11.8? 根據x、y地址定位,將數據寫入LCM左半屏或右半屏的子函數
23.11.9? 顯示漢字子函數
23.12?? 在51 MCU DEMO試驗板上實現128x64LCM演示程序1
23.12.1?? 實現方法
23.12.2?? 源程序文件
23.12.3?? 程序分析解釋
23.13?? 在51 MCU DEMO試驗板上實現128x64LCM演示程序2
23.13.1?? 實現方法
23.13.2?? 源程序文件
23.13.3?? 程序分析解釋
第24章 AT89S51看門狗定時器原理及使用
24.1看門狗定時器原理
24.2 ??在51 MCU DEMO試驗板上,進行看門狗實驗1(看門狗啟動后在程序中定時清除它):D0~D7的8個LED(發光管)依次流水點亮,形成“流水燈”實驗
24.2.1? 實現方法
24.2.2?? 源程序文件
24.2.3? 程序分析解釋
24.3 ??在51 MCU DEMO試驗板上,進行看門狗實驗2(看門狗啟動后在程序中不再清除它,模擬程序失控的情況):D0~D7的8個LED(發光管)依次流水點亮,形成“流水燈”實驗
24.3.1? 實現方法
24.3.2? 源程序文件
24.3.3? 程序分析解釋
?