本書是電子信息等專業(yè)“微處理器與接口技術(shù)”課程的教材。 全書共13章,包括微處理器基礎、8088/8086架構(gòu)、8088/8086指令系統(tǒng)及程序設計、 存儲器系統(tǒng)、接口和中斷技術(shù)、 可編程接口設計、80C51架構(gòu)、80C51指令系統(tǒng)、80C51程序設計、80C51的并行I/O接口、80C51的中斷與定時/計數(shù)器、 80C51的串行接口設計和80C51的模擬量接口。
本書具有一定的理論性和系統(tǒng)性,對典型的微處理器架構(gòu)進行了介紹和對比,對常用接口的設計方法進行了分析和說明。同時,本書注重實踐性, 對應用案例的電路設計和編程實現(xiàn)進行了講解,內(nèi)容由淺入深, 具有一定的啟發(fā)性。
本書可作為高等學校電子、 信息、通信、自動化及計算機等相關專業(yè)的教材,也可作為工程技術(shù)人員的參考書。
微處理器是電子、信息、通信、自動控制等系統(tǒng)的核心,其應用覆蓋了電子設備和產(chǎn)品的多個方面, 應用范圍越來越廣泛。多年來微處理器技術(shù)取得了突飛猛進的發(fā)展,但仍以馮·諾依曼架構(gòu)和哈佛架構(gòu)為主;谶@兩類架構(gòu)以及各種應用的需要,出現(xiàn)了許多應用于不同領域的微處理器芯片。本書以馮·諾依曼架構(gòu)中的經(jīng)典芯片8088/8086和哈佛架構(gòu)中的經(jīng)典芯片80C51為重點,由淺入深、循序漸進地介紹了微處理器系統(tǒng)的設計及應用實踐。
在以往高等院校電子信息等專業(yè)的本科教學中,對以8088/8086為主的微型計算機原理及以80C51為主的單片機應用等課程都非常重視,需要較多的課時進行理論學習和實踐探索。隨著近年來教學理念的發(fā)展,逐漸出現(xiàn)了一些對微處理器及接口類課程的創(chuàng)新嘗試。但是,由于微處理器的知識點較多,微處理器類課程之間的關聯(lián)銜接不夠緊密等,造成了理論和實踐較難兼顧的問題。因此,基于培養(yǎng)具有扎實的理論基礎,并且具備良好的系統(tǒng)設計能力的新工科人才的理念,本書在編寫時考慮了三個方面:首先,深化兩種架構(gòu)及典型芯片之間的關聯(lián),既介紹馮·諾依曼架構(gòu)和哈佛架構(gòu)及相關芯片的主要特點,又力求說明兩類架構(gòu)及系統(tǒng)設計的不同之處,避免知識點的混淆;其次,優(yōu)化常用接口設計內(nèi)容,采用某一種架構(gòu)的微處理器講解接口的基本概念和設計方法,減少兩類微處理器系統(tǒng)設計中相似內(nèi)容的重復,刪減不常用接口設計內(nèi)容,提高教學效率;最后,強化理論與實踐的結(jié)合,提供綜合性較高的應用實例,既對實例的要求進行理論分析和講解,又對硬件設計和軟件編程的思路進行說明,培養(yǎng)知識運用能力,避免死記硬背。因此,本書是一本深淺適度、重視能力培養(yǎng)的教材。通過對本書的學習,讀者不僅能掌握兩種微處理器架構(gòu)的特點,還能培養(yǎng)和提高電子設備及產(chǎn)品開發(fā)能力。
為了讓初學者能夠快速掌握微處理器的理論和接口設計的方法,作者結(jié)合多年的教學、科研和實踐經(jīng)驗,經(jīng)過精心策劃編寫了本書。本書共13章, 包括8088/8086和80C51兩類芯片的架構(gòu)介紹、兩類指令系統(tǒng)說明和編譯過程講解、存儲器系統(tǒng)的設計、中斷的基本概念和設計方法、定時/計數(shù)器的硬件設計和軟件編程方法、并行接口擴展設計以及數(shù)模/模數(shù)轉(zhuǎn)換接口設計等內(nèi)容。
本書作者為廣東工業(yè)大學的一線教師。本書在編寫的過程中得到了廣東工業(yè)大學信息工程學院領導和其他老師的大力支持,尤其是得到了原玲副院長、李優(yōu)新副教授、樂金松老師、羅思杰老師以及微處理器與接口技術(shù)課程組全體教師的鼎力幫助。此外,本書還得到了廣東工業(yè)大學教務處的大力支持,以及伍卓豐、黎松毅、王梓斌和黃淑婷四位同學的協(xié)助,在此一并表示衷心的感謝!
希望本書能使讀者學有所得。 由于作者水平有限,書中可能還存不當之處,歡迎廣大同行和讀者批評指正。
劉震宇
2021年12月
于廣東工業(yè)大學
第1章 微處理器基礎 1
1.1 微處理器架構(gòu) 1
1.2 數(shù)制表示及轉(zhuǎn)換 3
1.2.1 計數(shù)制 3
1.2.2 數(shù)制之間的轉(zhuǎn)換 4
1.3 算術(shù)運算 5
1.4 邏輯門器件基礎 8
思考與練習題 12
第2章 8088/8086架構(gòu) 13
2.1 8088/8086微處理器的外部引腳 13
2.2 8088微處理器的內(nèi)部結(jié)構(gòu) 15
2.2.1 8088微處理器的組成及特點 15
2.2.2 8088微處理器的內(nèi)部寄存器 17
思考與練習題 20
第3章 8088/8086指令系統(tǒng)及程序設計 21
3.1 8088/8086指令格式 21
3.2 8088/8086尋址方式 22
3.3 8088/8086指令系統(tǒng) 26
3.3.1 數(shù)據(jù)傳送指令 26
3.3.2 算術(shù)運算指令 30
3.3.3 邏輯運算和移位指令 33
3.3.4 串操作指令 38
3.3.5 程序控制指令 39
3.3.6 處理器控制指令 45
3.4 8088/8086匯編語言編程 46
3.4.1 匯編源程序結(jié)構(gòu)和格式 46
3.4.2 匯編語句格式 47
3.4.3 偽指令 49
思考與練習題 55
第4章 存儲器系統(tǒng) 57
4.1 隨機存取存儲器 57
4.1.1 靜態(tài)隨機存取存儲器 57
4.1.2 動態(tài)隨機存取存儲器 59
4.2 只讀存儲器 62
4.2.1 EPROM 62
4.2.2 EEPROM 63
4.3 存儲器系統(tǒng)設計 65
4.3.1 地址譯碼 65
4.3.2 字位擴展 67
4.3.3 存儲系統(tǒng)設計舉例 69
思考與練習題 73
第5章 接口和中斷技術(shù) 74
5.1 I/O接口技術(shù) 74
5.1.1 I/O接口概述 74
5.1.2 接口電路 75
5.2 基本輸入/輸出方式 77
5.3 中斷的概念及處理流程 80
5.3.1 中斷處理過程 80
5.3.2 8088/8086中斷系統(tǒng) 82
5.4 中斷控制器8259A 86
5.4.1 8259A的引腳及內(nèi)部結(jié)構(gòu) 86
5.4.2 8259A的工作方式 88
5.4.3 8259A的編程 91
5.4.4 8259A應用舉例 95
思考與練習題 96
第6章 可編程接口設計 98
6.1 可編程定時/計數(shù)器8253 98
6.1.1 8253的引腳及結(jié)構(gòu) 98
6.1.2 8253的工作方式 100
6.1.3 8253的控制字 104
6.1.4 8253應用舉例 105
6.2 可編程并行接口8255 107
6.2.1 8255的引腳及結(jié)構(gòu) 108
6.2.2 8255的工作方式 110
6.2.3 8255的控制字 111
6.2.4 8255應用舉例 112
思考與練習題 114
第7章 80C51架構(gòu) 116
7.1 單片機概述 116
7.2 80C51的基本結(jié)構(gòu)及信號引腳 116
7.2.1 80C51的基本結(jié)構(gòu) 116
7.2.2 80C51的封裝與引腳 117
7.3 80C51的CPU 119
7.4 80C51的存儲器 121
7.4.1 80C51的數(shù)據(jù)存儲器(RAM) 121
7.4.2 80C51的程序存儲器(ROM) 125
7.5 80C51的時鐘與時序 126
7.5.1 80C51的時鐘產(chǎn)生方式 126
7.5.2 80C51的時序單位 126
7.5.3 80C51的典型時序 127
7.6 80C51的復位 129
思考與練習題 129
第8章 80C51指令系統(tǒng) 131
8.1 80C51指令概述 131
8.2 80C51的尋址方式 132
8.3 80C51的指令系統(tǒng) 135
8.3.1 數(shù)據(jù)傳送指令 135
8.3.2 算術(shù)運算指令 140
8.3.3 邏輯運算與移位指令 144
8.3.4 控制轉(zhuǎn)移指令 147
8.3.5 位操作指令 152
思考與練習題 154
第9章 80C51程序設計 156
9.1 80C51匯編語言語句格式 156
9.2 偽指令 157
9.3 80C51匯編語言程序設計步驟 158
9.4 80C51匯編語言程序結(jié)構(gòu) 159
9.5 80C51匯編語言程序設計舉例 164
思考與練習題 168
第10章 80C51的并行I/O接口 170
10.1 80C51并行I/O口的結(jié)構(gòu)和工作原理 170
10.1.1 P0口 170
10.1.2 P1口 171
10.1.3 P2口 172
10.1.4 P3口 173
10.2 80C51并行I/O口的應用 174
10.2.1 按鍵輸入及其接口 174
10.2.2 LED顯示器及其接口 178
10.3 80C51的存儲器并行擴展 179
10.3.1 數(shù)據(jù)存儲器并行擴展 180
10.3.2 程序存儲器并行擴展 180
思考與練習題 181
第11章 80C51的中斷與定時/計數(shù)器 182
11.1 80C51的中斷系統(tǒng) 182
11.1.1 80C51中斷系統(tǒng)的結(jié)構(gòu) 182
11.1.2 80C51的中斷源 182
11.1.3 中斷控制 183
11.1.4 80C51的中斷處理過程 184
11.1.5 中斷初始化及服務程序 186
11.2 80C51的定時/計數(shù)器 187
11.2.1 定時/計數(shù)器的結(jié)構(gòu)和工作原理 187
11.2.2 定時/計數(shù)器相關的控制寄存器 188
11.2.3 定時/計數(shù)器的工作方式 188
11.2.4 定時/計數(shù)器應用舉例 191
思考與練習題 194
第12章 80C51的串行接口設計 195
12.1 80C51的串行口 195
12.1.1 80C51串行口的結(jié)構(gòu) 195
12.1.2 80C51串行口的控制寄存器 196
12.1.3 80C51串行口的工作方式 196
12.1.4 80C51的波特率設定 200
12.2 80C51串行口的應用 200
思考與練習題 204
第13章 80C51的模擬量接口 205
13.1 D/A轉(zhuǎn)換器及其與80C51接口 205
13.1.1 DAC0832 205
13.1.2 DAC0832與80C51接口 206
13.2 A/D轉(zhuǎn)換器及其與80C51接口 208
13.2.1 ADC0809 209
13.2.2 ADC0809與80C51接口 210
思考與練習題 212
參考文獻 213