本書基于Proteus8.9中文版,以微型計算機原理、單片機內(nèi)部資源及常用I/O口資源為內(nèi)容導(dǎo)向,從設(shè)計、仿真到實踐,介紹了單片機應(yīng)用系統(tǒng)的開發(fā)過程,包括微型計算機基礎(chǔ)、STC單片機應(yīng)用的開發(fā)工具、C51程序設(shè)計與I/O操作、單片機應(yīng)用系統(tǒng)的設(shè)計、STC15W4K32S4單片機的片內(nèi)資源(增強型8051內(nèi)核、指令系統(tǒng)與匯編語言程序設(shè)計、存儲器與應(yīng)用編程、定時/計數(shù)器、中斷系統(tǒng)、串行通信、A/D轉(zhuǎn)換模塊、比較器、PCA模塊、SPI接口與增強型PWM模塊),以及對STC8系列單片機的簡要介紹。
適讀人群 :本書可作為普通高校計算機類、電子信息類、電氣自動化與機電一體化等專業(yè)的教學(xué)用書,基礎(chǔ)較好的高職高專也可選用本書。
STC和風(fēng)標(biāo)電子官方聯(lián)合推薦。
內(nèi)容精煉、實用
前 言
在廣大單片機教育工作者的呼吁下,廣州風(fēng)標(biāo)電子技術(shù)有限公司和江蘇國芯科技有限公司通力合作,經(jīng)過數(shù)月的協(xié)作與開發(fā),發(fā)布了包含STC15W4K32S4單片機模型的Proteus8.9中文版,從而可以真正地仿真STC單片機了。
STC單片機傳承自Intel 8051單片機,其在Intel
8051單片機框架基礎(chǔ)上注入了新鮮血液。深圳市宏晶科技有限公司(以下簡稱宏晶科技)對8051單片機進(jìn)行了較為全面的技術(shù)升級與創(chuàng)新:采用了Flash技術(shù)(可反復(fù)編程10萬次以上)和ISP/IAP(在系統(tǒng)可編程/在應(yīng)用可編程)技術(shù);針對抗干擾性能和加密進(jìn)行了專門設(shè)計;并為STC單片機的新產(chǎn)品增加了高性能I/O接口模塊。
宏晶科技從2006年創(chuàng)立起,已經(jīng)推出了STC89系列、STC90系列、STC10系列、STC11系列、STC12系列、STC15系列產(chǎn)品,累計發(fā)布了上百種產(chǎn)品。2014年4月,宏晶科技重磅推出了STC15W4K32S4單片機,這種單片機能在較寬的電源電壓范圍內(nèi)(2.4~5.5V)工作,可直接與計算機的USB接口相連(不需要轉(zhuǎn)換芯片);集成了更多的數(shù)據(jù)存儲器、定時/計數(shù)器及串行通信端口;集成了更多的高性能部件(如比較器、增強型PWM模塊)。宏晶科技為STC15W4K32S4單片機開發(fā)了功能強大的STC-ISP在線編程軟件,該軟件除具有在線編程功能外,還具有在線仿真器制作、脫機編程工具制作、加密傳輸、項目發(fā)布、各系列單片機頭文件的生成、串行通信端口波特率的計算、定時器定時程序的設(shè)計、軟件延時程序的設(shè)計等功能,為學(xué)習(xí)者或單片機設(shè)計開發(fā)人員帶來了極大的便利。
丁向榮,男,廣東輕工職業(yè)技術(shù)學(xué)院教授,長期從事單片機方面的科研、教學(xué)工作,對STC系列單片機產(chǎn)品的理解非常深入,其編寫的多本單片機教材出版后獲得廣大用戶的認(rèn)可。
目 錄
第1章 微型計算機基礎(chǔ) (1)
1.1 數(shù)制與編碼 (1)
1.1.1 數(shù)制及轉(zhuǎn)換方法 (1)
1.1.2 微型計算機中數(shù)的表示方法 (3)
1.1.3 微型計算機中常用編碼 (5)
1.2 微型計算機原理 (6)
1.2.1 微型計算機的基本組成 (7)
1.2.2 指令、程序與編程語言 (8)
1.2.3 微型計算機的工作過程 (9)
1.2.4 微型計算機的應(yīng)用形態(tài) (10)
本章小結(jié) (11)
習(xí)題1 (11)
第2章 STC15W4K32S4單片機增強型8051內(nèi)核 (12)
2.1 單片機概述 (12)
2.1.1 單片機的概念 (12)
2.1.2 常見單片機 (12)
2.1.3 STC單片機 (13)
2.2 STC15W4K32S4單片機的引腳功能 (16)
2.3 STC15W4K32S4單片機的內(nèi)部結(jié)構(gòu) (20)
2.3.1 內(nèi)部結(jié)構(gòu)框圖 (20)
2.3.2 CPU結(jié)構(gòu) (21)
2.4 STC15W4K32S4單片機的存儲結(jié)構(gòu) (22)
2.5 STC15W4K32S4單片機的并行I/O口 (26)
2.5.1 I/O口的功能與工作模式 (26)
2.5.2 并行I/O口的結(jié)構(gòu)與工作原理 (27)
2.5.3 并行I/O口的使用注意事項 (29)
2.6 STC15W4K32S4單片機的時鐘與復(fù)位 (30)
2.6.1 時鐘 (30)
2.6.2 復(fù)位 (32)
本章小結(jié) (34)
習(xí)題2 (35)
第3章 STC單片機應(yīng)用的開發(fā)工具 (38)
3.1 Keil μVision4集成開發(fā)環(huán)境 (38)
3.1.1 概述 (38)
3.1.2 應(yīng)用Keil μVision4集成開發(fā)環(huán)境編輯、編譯用戶程序,并生成機器代碼 (39)
3.1.3 應(yīng)用Keil μVision4集成開發(fā)環(huán)境調(diào)試用戶程序 (45)
3.2 基于Proteus實現(xiàn)流水燈系統(tǒng)的仿真 (50)
3.2.1 流水燈系統(tǒng)電路與程序功能 (50)
3.2.2 Proteus的啟動 (51)
3.2.3 新建工程 (51)
3.2.4 用Proteus繪制電路原理圖 (55)
3.2.5 用Proteus實施流水燈系統(tǒng)(單片機)仿真 (59)
3.3 基于STC15單片機學(xué)習(xí)板的在線編程與在線調(diào)試 (61)
3.3.1 STC單片機在線可編程(ISP)電路 (61)
3.3.2 單片機應(yīng)用程序的下載與運行 (63)
3.3.3 STC-ISP在線編程軟件的其他功能 (65)
3.4 基于Keil C集成開發(fā)環(huán)境與STC15單片機學(xué)習(xí)板流水燈系統(tǒng)的在線仿真* (66)
3.5 STC15單片機官方開發(fā)板簡介 (69)
本章小結(jié) (69)
習(xí)題3 (70)
第4章 STC15W4K32S4單片機的指令系統(tǒng)與匯編語言程序設(shè)計 (73)
4.1 STC15W4K32S4單片機的指令系統(tǒng) (73)
4.1.1 概述 (73)
4.1.2 數(shù)據(jù)傳送類指令 (79)
4.1.3 算術(shù)運算類指令 (85)
4.1.4 邏輯運算與循環(huán)移位類指令 (90)
4.1.5 控制轉(zhuǎn)移類指令 (94)
4.1.6 位操作類指令 (100)
4.2 匯編語言程序設(shè)計 (104)
4.2.1 匯編語言程序設(shè)計基礎(chǔ) (104)
4.2.2 基本程序結(jié)構(gòu)與程序設(shè)計舉例 (109)
4.3 基于Proteus仿真與STC實操I/O的邏輯控制 (118)
本章小結(jié) (121)
習(xí)題4 (122)
第5章 C51程序設(shè)計與I/O操作 (127)
5.1 C51基礎(chǔ) (127)
5.1.1 C51數(shù)據(jù)類型 (129)
5.1.2 C51的變量 (131)
5.1.3 8051單片機特殊功能寄存器變量的定義 (132)
5.1.4 8051單片機位尋址區(qū)(20H~2FH)位變量的定義 (134)
5.1.5 函數(shù)的定位 (134)
5.1.6 中斷服務(wù)函數(shù) (135)
5.1.7 函數(shù)的遞歸調(diào)用與再入函數(shù) (136)
5.1.8 在C51中嵌入?yún)R編語言程序 (136)
5.2 C51程序設(shè)計 (137)
5.2.1 C51程序框架 (137)
5.2.2 C51程序設(shè)計舉例 (141)
5.3 基于Proteus仿真與STC實操LED數(shù)碼管的顯示 (142)
本章小結(jié) (146)
習(xí)題5 (146)
第6章 STC15W4K32S4單片機的存儲器與應(yīng)用編程 (149)
6.1 程序存儲器 (149)
6.2 基本RAM (151)
6.3 擴(kuò)展RAM (152)
6.4 EEPROM (156)
6.5 基于Proteus仿真與STC實操EEPROM的測試 (161)
本章小結(jié) (165)
習(xí)題6 (165)
第7章 STC15W4K32S4單片機的定時/計數(shù)器 (168)
7.1 定時/計數(shù)器(T0、T1)的結(jié)構(gòu)和工作原理 (168)
7.2 定時/計數(shù)器(T0、T1)的控制 (169)
7.3 定時/計數(shù)器(T0、T1)的工作方式 (171)
7.4 定時/計數(shù)器(T0、T1)的應(yīng)用舉例 (175)
7.4.1 定時應(yīng)用 (175)
7.4.2 計數(shù)應(yīng)用 (177)
7.5 基于Proteus仿真與STC實操秒表的設(shè)計 (178)
7.6 定時/計數(shù)器T2 (180)
7.6.1 T2的電路結(jié)構(gòu) (180)
7.6.2 T2的控制寄存器 (181)
7.7 定時/計數(shù)器T3、T4* (182)
7.7.1 T3、T4的電路結(jié)構(gòu) (182)
7.7.2 T3、T4的控制寄存器 (182)
7.8 可編程時鐘輸出功能 (183)
7.8.1 T0~T4的可編程時鐘輸出 (184)
7.8.2 可編程時鐘的應(yīng)用舉例 (185)
7.9 基于Proteus仿真與STC實操頻率計的設(shè)計 (186)
本章小結(jié) (190)
習(xí)題7 (191)
第8章 STC15W4K32S4單片機中斷系統(tǒng) (194)
8.1 中斷系統(tǒng)概述 (194)
8.1.1 中斷系統(tǒng)的幾個概念 (194)
8.1.2 中斷的技術(shù)優(yōu)勢 (195)
8.1.3 中斷系統(tǒng)需要解決的問題 (195)
8.2 STC15W4K32S4單片機中斷系統(tǒng)的簡介 (196)
8.2.1 中斷請求 (196)
8.2.2 中斷響應(yīng)、中斷服務(wù)與中斷返回 (203)
8.2.3 STC15W4K32S4單片機中斷系統(tǒng)的中斷應(yīng)用舉例 (206)
8.3 STC15W4K32S4單片機外部中斷源的擴(kuò)展 (211)
8.4 基于Proteus仿真與STC實操外部中斷的應(yīng)用 (214)
本章小結(jié) (217)
習(xí)題8 (218)
第9章 STC15W4K32S4單片機的串行通信 (221)
9.1 串行通信基礎(chǔ) (221)
9.2 STC15W4K32S4單片機的串行通信端口1 (224)
9.2.1 串行通信端口1的控制寄存器 (224)
9.2.2 串行通信端口1的工作方式 (226)
9.2.3 串行通信端口1的波特率 (230)
9.2.4 串行通信端口1的應(yīng)用舉例 (231)
9.3 STC15W4K32S4單片機與計算機的通信 (245)
9.3.1 STC15W4K32S4單片機與計算機RS-232串行通信端口設(shè)計 (245)
9.3.2 STC15W4K32S4單片機與計算機USB總線通信端口設(shè)計 (248)
9.3.3 STC15W4K32S4單片機與計算機的串行通信程序設(shè)計 (248)
9.4 STC15W4K32S4單片機串行通信端口1的中繼廣播方式* (251)
9.5 STC15W4K32S4單片機串行通信端口2、串行通信端口3及串行通信端口4* (252)
9.5.1 串行通信端口2 (252)
9.5.2 串行通信端口3* (253)
9.5.3 串行通信端口4* (255)
9.6 基于Proteus仿真與STC實操雙機通信的應(yīng)用 (257)
9.7 基于Proteus仿真與STC實操單片機與計算機的通信 (260)
本章小結(jié) (265)
習(xí)題9 (265)
第10章 STC15W4K32S4單片機的A/D轉(zhuǎn)換模塊 (269)
10.1 A/D轉(zhuǎn)換模塊的結(jié)構(gòu) (269)
10.2 A/D轉(zhuǎn)換模塊的控制 (270)
10.3 A/D轉(zhuǎn)換模塊的應(yīng)用 (273)
10.4 基于Proteus仿真與STC實操A/D轉(zhuǎn)換模塊的應(yīng)用(簡易電壓表) (279)
本章小結(jié) (282)
習(xí)題10 (282)
第11章 STC15W4K32S4單片機比較器 (284)
11.1 比較器的內(nèi)部結(jié)構(gòu)與控制 (284)
11.2 比較器的應(yīng)用 (286)
11.3 基于Proteus仿真與STC實操BGV信號的測試 (289)
本章小結(jié) (293)
習(xí)題11 (293)
第12章 STC15W4K32S4單片機的PCA模塊 (295)
12.1 PCA模塊的結(jié)構(gòu)與控制 (295)
12.2 PCA模塊的工作模式與應(yīng)用編程 (299)
12.2.1 捕獲模式與應(yīng)用編程 (299)
12.2.2 16位軟件定時器模式與應(yīng)用編程 (302)
12.2.3 高速脈沖輸出模式與應(yīng)用編程 (304)
12.2.4 PWM模式與應(yīng)用編程 (305)
12.3 基于Proteus仿真與STC實操PCA秒表 (309)
12.4 基于Proteus仿真與STC實操PWM驅(qū)動LED (313)
本章小結(jié) (316)
習(xí)題12 (316)
第13章 單片機應(yīng)用系統(tǒng)的設(shè)計 (318)
13.1 單片機應(yīng)用系統(tǒng)的設(shè)計和開發(fā) (318)
13.1.1 單片機應(yīng)用系統(tǒng)的設(shè)計原則 (318)
13.1.2 單片機應(yīng)用系統(tǒng)的開發(fā)流程 (319)
13.1.3 單片機應(yīng)用系統(tǒng)工程報告的編制 (322)
13.2 人機對話接口應(yīng)用設(shè)計 (324)
13.2.1 鍵盤接口與應(yīng)用編程 (324)
13.2.2 LED數(shù)碼管顯示與應(yīng)用編程 (333)
13.2.3 LCD接口與應(yīng)用編程 (341)
13.2.4 基于Proteus仿真與STC實操電子時鐘的設(shè)計 (358)
13.3 串行總線接口技術(shù)與應(yīng)用編程 (364)
13.3.1 I2C總線接口技術(shù)與應(yīng)用編程 (365)
13.3.2 單總線接口技術(shù)與應(yīng)用編程 (381)
13.4 基于Proteus仿真的數(shù)字溫度計 (389)
13.5 STC15W4K32S4單片機的低功耗設(shè)計與可靠性設(shè)計 (401)
13.5.1 低功耗設(shè)計 (401)
13.5.2 可靠性設(shè)計 (405)
本章小結(jié) (408)
習(xí)題13 (408)
第14章 STC15W4K32S4單片機的SPI接口與增強型PWM模塊 (415)
14.1 SPI接口 (415)
14.1.1 SPI接口的結(jié)構(gòu)與控制 (415)
14.1.2 SPI接口的數(shù)據(jù)通信 (418)
14.1.3 SPI接口的應(yīng)用編程 (422)
14.2 增強型PWM模塊 (427)
14.2.1 增強型PWM模塊的結(jié)構(gòu)與控制 (427)
14.2.2 增強型PWM模塊的應(yīng)用編程 (432)
本章小結(jié) (437)
習(xí)題 (438)
第15章 STC8系列單片機簡介 (440)
15.1 STC8A8K××S4A12系列單片機 (440)
15.1.1 特性 (440)
15.1.2 STC8A8K××S4A12系列單片機機型一覽表 (442)
15.2 STC8F8K××S4A12系列單片機 (442)
15.2.1 特性 (442)
15.2.2 STC8F8K××S4A12系列單片機機型一覽表 (444)
15.3 STC8F2K××S4系列單片機 (444)
15.3.1 特性 (444)
15.3.2 STC8F2K××S4系列單片機機型一覽表 (446)
本章小結(jié) (446)
附錄A ASCII碼表 (447)
附錄B STC15W4K32S4單片機指令系統(tǒng)表 (448)
附錄C C51常用頭文件與庫函數(shù) (452)
附錄D STC-ISP在線編程軟件實用程序簡介 (459)
附錄E STC15系列單片機學(xué)習(xí)板各模塊電路 (462)
附錄F STC15系列單片機頭文件與LED數(shù)碼管驅(qū)動函數(shù) (469)
附錄G U8脫機編程器的操作使用 (481)
附錄H STC15W4K32S4單片機特殊功能寄存器一覽表 (483)
附錄 I C語言編譯常見錯誤信息一覽表 (487)
附錄 J C51的模塊化編程與C51庫函數(shù)的制作 (492)
一、C51的模塊化編程 (492)
二、C51庫函數(shù)的制作 (494)
三、C51庫函數(shù)的調(diào)用 (495)
參考文獻(xiàn) (496)