書名:從零開始學(xué)51單片機(jī)
作 者:賀亮 編著
出 版 社:電子工業(yè)出版社
出版時間:2012-9-1
版 次:1
頁 數(shù):269
字 數(shù):455000
印刷時間:2012-9-1
開 本:16開
第1篇 入門與提高
第1章 認(rèn)識51系列單片機(jī)
1.1 單片機(jī)的發(fā)展史
1.2 單片機(jī)的應(yīng)用
1.3 51單片機(jī)的開發(fā)環(huán)境--Keil μVision
1.4 快速掌握單片機(jī)的開發(fā)要點
1.5 STC89C51RC/RD+系列單片機(jī)
1.5.1 STC89C51系列單片機(jī)選型
1.5.2 常見的封裝類型
1.6 STC89C51RC/RD+系列單片機(jī)的外部引腳
1.7 小結(jié)
1.8 習(xí)題
第2章 開發(fā)環(huán)境的搭建
2.1 軟件開發(fā)環(huán)境
2.1.1 安裝Keil C μVision3開發(fā)環(huán)境
2.1.2 增加對STC型號的支持
2.1.3 建立第一個工程
2.1.4 開發(fā)中經(jīng)常用到的功能
2.2 必要的硬件環(huán)境
2.2.1 10元DIY單片機(jī)最小系統(tǒng)
2.2.2 動手制作一個編程器
2.3 STC燒錄工具
2.4 小結(jié)
2.5 習(xí)題
第2篇 51單片機(jī)C語言編
第3章 單片機(jī)C語言的基本數(shù)據(jù)類型
3.1 常量與變量
3.2 基本數(shù)據(jù)類型
3.2.1 整型
3.2.2 長整型
3.2.3 字符型
3.2.4 位類型
3.2.5 浮點數(shù)
3.2.6 雙精度浮點數(shù)
3.3 小結(jié)
3.4 習(xí)題
第4章 運算符與表達(dá)式
4.1 算術(shù)運算符與表達(dá)式
4.2 關(guān)系運算符與表達(dá)式
4.3 邏輯運算符與表達(dá)式
4.4 位運算符與表達(dá)式
4.5 賦值運算符與表達(dá)式
4.6 小結(jié)
4.7 習(xí)題
第5章 流程控制
5.1 條件語句if
5.1.1 條件語句if的3種表達(dá)方式
5.1.2 條件語句if嵌套
5.2 開關(guān)語句switch … case
5.2.1 開關(guān)語句的語法格式
5.2.2 開關(guān)語句的執(zhí)行過程
5.2.3 注意事項
5.3 循環(huán)語句for
5.3.1 循環(huán)語句for的語法格式
5.3.2 循環(huán)語句for的執(zhí)行過程
5.3.3 循環(huán)語句for嵌套
5.4 另一種循環(huán)語句while和do…while
5.4.1 循環(huán)語句while和do…while的語法格式
5.4.2 循環(huán)語句while和do…while的執(zhí)行過程
5.5 無條件跳轉(zhuǎn)語句goto
5.6 中斷語句break/continue
5.6.1 中斷語句break
5.6.2 中斷語句continue
5.7 小結(jié)
5.8 習(xí)題
第6章 函數(shù)
6.1 定義函數(shù)的一般形式
6.2 函數(shù)的參數(shù)和返回值
6.2.1 函數(shù)的參數(shù)
6.2.2 函數(shù)的返回值
6.3 函數(shù)的調(diào)用
6.3.1 被調(diào)函數(shù)的聲明
6.3.2 函數(shù)語句調(diào)用
6.3.3 函數(shù)表達(dá)式調(diào)用
6.3.4 作為函數(shù)的參數(shù)調(diào)用
6.3.5 函數(shù)的嵌套調(diào)用
6.3.6 函數(shù)的遞歸調(diào)用
6.4 單片機(jī)的特殊函數(shù)--中斷函數(shù)
6.5 小結(jié)
6.6 習(xí)題
第7章 數(shù)組與指針
7.1 數(shù)組 71
7.1.1 一維數(shù)組
7.1.2 二維數(shù)組與多維數(shù)組
7.2 指針
7.2.1 指針的概念
7.2.2 定義和引用指針變量
7.2.3 指針和數(shù)組
7.3 小結(jié)
7.4 習(xí)題
第8章 結(jié)構(gòu)體與共用體
8.1 結(jié)構(gòu)體
8.1.1 什么是結(jié)構(gòu)體
8.1.2 定義結(jié)構(gòu)體變量
8.1.3 結(jié)構(gòu)體變量的初始化
8.1.4 使用結(jié)構(gòu)體
8.1.5 指向結(jié)構(gòu)體類型數(shù)據(jù)的指針
8.1.6 將結(jié)構(gòu)指針變量作為函數(shù)的參數(shù)
8.2 共用體
8.2.1 什么是共用體
8.2.2 定義共用體變量
8.2.3 使用共用體
8.3 小結(jié)
8.4 習(xí)題
第3篇 51單片機(jī)開發(fā)實戰(zhàn)
第9章 IO端口編程
9.1 STC89C51RC-RD+系列單片機(jī)的I/O端口
9.2 I/O端口的工作模式
9.2.1 準(zhǔn)雙向口/弱上拉模式
9.2.2 輸入/高阻模式
9.2.3 輸出/開漏模式
9.2.4 配置I/O的工作模式
9.3 I/O輸出實驗
9.3.1 從點亮一個LED開始
9.3.2 閃動的LED
9.3.3 點亮更多的LED
9.3.4 點亮數(shù)碼管
9.3.5 動態(tài)點亮數(shù)碼管
9.3.6 控制3-8譯碼器
9.4 I/O輸入實驗
9.4.1 分離式按鍵
9.4.2 模擬實現(xiàn)計數(shù)器
9.4.3 矩陣鍵盤
9.5 小結(jié)
9.6 習(xí)題
第10章 中斷系統(tǒng)和外部中斷
10.1 中斷的基本知識
10.1.1 什么是中斷
10.1.2 使用中斷的好處
10.2 中斷源
10.3 中斷寄存器
10.3.1 中斷使能寄存器
10.3.2 中斷優(yōu)先級寄存器
10.3.3 定時器控制寄存器、外部中斷標(biāo)志
10.3.4 串行口控制寄存器
10.4 中斷優(yōu)先級
10.5 使用外部中斷檢測按鍵
10.5.1 低電平觸發(fā)方式
10.5.2 下降沿觸發(fā)方式
10.6 使用外部中斷設(shè)計運動限位裝置
10.6.1 硬件電路原理圖
10.6.2 代碼實現(xiàn)
10.7 小結(jié)
10.8 習(xí)題
第11章 定時器/計數(shù)器
11.1 定時器/計數(shù)器介紹
11.2 與定時器/計數(shù)器的有關(guān)的寄存器
11.2.1 工作方式寄存器TMOD
11.2.2 控制寄存器TCON
11.2.3 初值寄存器THx、TLx
11.3 定時器的工作模式
11.3.1 模式0
11.3.2 模式1
11.3.3 模式2(8位自動重裝模式)
11.3.4 模式3
11.4 定時器中斷實驗
11.4.1 定時器秒表實驗電路原理圖
11.4.2 秒表實驗控制流程
11.4.3 代碼實現(xiàn)
11.5 簡易電子琴演奏實驗
11.5.1 電子琴實驗的電路原理圖
11.5.2 代碼實現(xiàn)
11.6 小結(jié)
11.7 習(xí)題
第12章 USART通用串行口通信
12.1 通用串行口介紹
12.2 與通用串行口有關(guān)的寄存器
12.2.1 電源控制寄存器PCON
12.2.2 串行口控制寄存器SCON
12.2.3 數(shù)據(jù)緩存寄存器SBUF
12.2.4 中斷控制位ES
12.3 通用串行口的工作模式
12.3.1 模式0,同步移位寄存器模式
12.3.2 模式1,波特率可變的8位數(shù)據(jù)異步收發(fā)
12.3.3 模式2,波特率固定的位數(shù)據(jù)異步收發(fā)
12.3.4 模式3,波特率可變的位數(shù)據(jù)異步收發(fā)
12.4 計算波特率
12.5 通過串行口和PC通信
12.5.1 串行口通信規(guī)范
12.5.2 串行口實驗電路
12.5.3 實驗控制流程
12.5.4 通信協(xié)議
12.5.5 代碼實現(xiàn)
12.6 單片機(jī)串行口遠(yuǎn)距離通信
12.6.1 RS-485簡介
12.6.2 485通信的實驗電路
12.6.3 代碼實現(xiàn)
12.7 小結(jié)
12.8 習(xí)題
第13章 訪問內(nèi)部EEPROM
13.1 EEPROM介紹
13.2 EEPROM的地址
13.3 與EEPROM有關(guān)的寄存器
13.4 EEPROM的常用操作
13.4.1 定義相關(guān)寄存器
13.4.2 讀操作
13.4.3 扇區(qū)擦除操作
13.4.4 寫操作
13.5 EEPROM應(yīng)用實例
13.6 掉電時保存數(shù)據(jù)到EEPROM
13.6.1 實驗電路圖
13.6.2 代碼實現(xiàn)
13.7 小結(jié)
13.8 習(xí)題
第14章 看門狗WDT
14.1 看門狗WDT介紹
14.2 看門狗控制寄存器WDT-CONTR
14.3 看門狗溢出時間
14.4 測試看門狗
14.5 小結(jié)
14.6 習(xí)題
第4篇 更多功能的單片機(jī)
第15章 STC12C5A60S2系列單片機(jī)
15.1 STC12C5A60S2系列單片機(jī)介紹
15.2 STC12C5A60S2系列單片機(jī)外部引腳
15.3 過渡到STC12C5A60S2系列的要點
15.4 小結(jié)
15.5 習(xí)題
第16章 通用串行接口 USART2
16.1 與通用串行口2有關(guān)的寄存器
16.1.1 控制寄存器S2CON
16.1.2 數(shù)據(jù)緩沖寄存器S2BUF
16.1.3 獨立波特率發(fā)生寄存器BRT
16.1.4 輔助寄存器AUXR
16.1.5 與串行口2中斷有關(guān)的寄存器
16.1.6 輔助寄存器1,AUXR1
16.2 使用串行口2與PC通信
16.2.1 串行口2實驗電路
16.2.2 使用串行口2的步驟
16.2.3 代碼實現(xiàn)
16.3 使用雙串行口設(shè)計RS-485雙向中繼器
16.3.1 RS-485雙向中繼器的實驗電路
16.3.2 代碼實現(xiàn)
16.4 小結(jié)
16.5 習(xí)題
第17章 同步外圍串行接口SPI
17.1 SPI簡介
17.2 與SPI有關(guān)的寄存器
17.2.1 SPI控制寄存器SPCTL
17.2.2 SPI狀態(tài)寄存器SPSTAT
17.2.3 SPI數(shù)據(jù)寄存器SPDAT
17.2.4 輔助寄存器1,AUXR1
17.3 SPI接口的通信方式
17.3.1 單主-單從方式
17.3.2 雙器件互為主從方式
17.3.3 單主-多從方式
17.4 注意事項
17.4.1 作為主機(jī)的注意事項
17.4.2 作為從機(jī)的注意事項
17.4.3 總線爭奪
17.4.4 寫沖突
17.5 雙CPU單主、單從通信實驗
17.6 小結(jié)
17.7 習(xí)題
第18章 PWM脈寬調(diào)制
18.1 PWM簡介
18.2 與PWM有關(guān)的寄存器
18.2.1 PCA工作模式寄存器CMOD
18.2.2 PCA控制寄存器CCON
18.2.3 PCA捕獲/比較寄存器CCAPM0和CCAPM1
18.2.4 PCA的16位計數(shù)寄存器CL、CH
18.2.5 PCA捕捉/比較寄存器CCAPnL、CCAPnH
18.2.6 PWM寄存器PCA-PWM0、PCA-PWM1
18.2.7 輔助寄存器AUX1
18.3 PWM的設(shè)置
18.4 輸出PWM的測試程序
18.4.1 實驗電路
18.4.2 控制思想
18.4.3 代碼實現(xiàn)
18.5 使用PWM方式控制步進(jìn)電機(jī)
18.5.1 步進(jìn)電機(jī)的工作原理
18.5.2 實驗電路
18.5.3 代碼實現(xiàn)
18.6 小結(jié)
18.7 習(xí)題
第19章 A/D轉(zhuǎn)換
19.1 A/D轉(zhuǎn)換簡介
19.2 與A/D轉(zhuǎn)換相關(guān)的寄存器
19.2.1 P1口模擬功能控制寄存器P1ASF
19.2.2 ADC控制寄存器ADC-CONTR
19.2.3 A/D轉(zhuǎn)換結(jié)果寄存器ADC_RES/ADC_RESL
19.2.4 與A/D中斷有關(guān)的寄存器
19.3 用A/D轉(zhuǎn)換器檢測電壓實驗
19.3.1 實驗電路
19.3.2 代碼實現(xiàn)
19.4 使用A/D轉(zhuǎn)換檢測檔位開關(guān)
19.4.1 檢測原理與實驗電路
19.4.2 代碼實現(xiàn)
19.5 A/D轉(zhuǎn)換誤差問題
19.6 小結(jié)
19.7 習(xí)題
第5篇 51單片機(jī)統(tǒng)合應(yīng)用實例
第20章 綜合應(yīng)用實例
20.1 需求分析
20.1.1 系統(tǒng)結(jié)構(gòu)
20.1.2 技術(shù)要求
20.2 系統(tǒng)設(shè)計
20.2.1 硬件電路設(shè)計
20.2.2 需要用到的單片機(jī)資源
20.2.3 軟件設(shè)計思路
20.3 各子系統(tǒng)的工作流程
20.3.1 數(shù)據(jù)接收子系統(tǒng)、協(xié)議管理子系統(tǒng)
20.2.2 終端地址的使用與維護(hù)
20.2.3 集體上傳控制
20.2.4 I/O處理子系統(tǒng)和工廠模式
20.2.5 電源管理子系統(tǒng)
20.4 軟件編程、系統(tǒng)實現(xiàn)
20.4.1 完整的源代碼
20.4.2 初始化部分代碼
20.4.3 按鍵檢測部分代碼
20.4.4 地址管理部分代碼
20.4.5 電壓檢測部分代碼
20.4.6 串行口接收數(shù)據(jù)、處理協(xié)議的部分代碼
20.4.7 休眠和喚醒的部分代碼
20.5 小結(jié)
20.6 習(xí)題
分別學(xué)C語言(先用VC編譯,了解單片機(jī)后用KEIL編譯)和單片機(jī),買塊學(xué)習(xí)板把程序放進(jìn)去實驗一下,把疑問搞清楚,最后獨自做一個有輸入輸出小玩意(比如說時鐘,計算器).學(xué)習(xí)的速度看你底子咯,我大一本來已...
加減一加法器,通過P1口輸入一個八位無符號數(shù),P2口輸入另
#include<reg51.h>#define uchar unsigned charuchar num,time,limit=2;sbit led1=P1^0;sbit key1=P2...
格式:pdf
大?。?span id="uhjb26n" class="single-tag-height">773KB
頁數(shù): 22頁
評分: 4.4
基于 51單片機(jī)的電子時鐘設(shè)計 摘要 本電子時鐘以 STC89C52單片機(jī)作為主控芯片,采用 DS12C887時鐘芯片, 使用 1602液晶作為顯示輸出。該時鐘走時精確,具有鬧鐘設(shè)置,以及可同時顯 示時間、日期等多種功能。本文將詳細(xì)介紹該電子時鐘涉及到的一些基本原理, 從硬件和軟件兩方面進(jìn)行分析。 【關(guān)鍵詞】 STC89C52單片機(jī) DS12C887時鐘芯片 1602液晶 蜂鳴器 目 錄 一、緒論?????????????????????? 4 1.1 電子時鐘功能???????????????? 4 1.2 設(shè)計方案?????????????????? 4 二、硬件設(shè)計???????????????????? 4 2.1 51單片機(jī)部分設(shè)計???????????? 4 2.2 USB 供電電路設(shè)計???????????? 5 2.3 串行通信電路設(shè)計???????????? 6
格式:pdf
大?。?span id="fcpcfxk" class="single-tag-height">773KB
頁數(shù): 22頁
評分: 4.7
摘 要 本次的課程設(shè)計基于單片機(jī)技術(shù)原理,以美國 ATMEL公司開發(fā)的 AT89S52 芯片作為核心控制器。 通過硬件電路的制作及軟件程序的編制, 設(shè)計制作了一種 具有復(fù)位、校時功能的數(shù)字時鐘系統(tǒng)。利用 1602液晶同時顯示提示信息和時間 信息,用戶可通過系統(tǒng)上的按鍵對時間進(jìn)行調(diào)整, 實現(xiàn)實時的時鐘顯示。 本次設(shè) 計的硬件由主控模塊、 復(fù)位模塊以及顯示模塊構(gòu)成。 復(fù)位模塊主要由電阻、 電容、 按鍵和發(fā)光二極管組成而顯示模塊則由 1602字符液晶構(gòu)成,用于顯示提示信息 和實時時鐘。 關(guān)鍵詞: AT89S52;LCD 1602; 實時時鐘 桂林電子科技大學(xué)課程設(shè)計(論文)報告用紙 Abstract The curriculum design is based on the principles of microcomputer technology and has adapted the
從零開始學(xué)51單片機(jī)C語言 采用新穎的講解形式,深入淺出地介紹了51單片機(jī)的組成、開發(fā)環(huán)境及單片機(jī)C語言基礎(chǔ)知識,結(jié)合大量實例,詳細(xì)演練了中斷、定時器、串行通信、鍵盤接口、LED數(shù)碼管、LCD顯示器、DS1302時鐘芯片、EEPROM存儲器、單片機(jī)看門狗、溫度傳感器DS18B20、紅外和無線遙控電路、A/D和D/A轉(zhuǎn)換器、步進(jìn)電機(jī)、語音電路、LED點陣屏等內(nèi)容。本書中的所有實例均具有較高的實用性和針對性,且全部通過了實驗板驗證;尤為珍貴的是,所有源程序均具有較強(qiáng)的移植性,讀者只需將其簡單修改甚至不用修改,即可應(yīng)用到自己開發(fā)的產(chǎn)品中。
全書語言通俗,實例豐富,圖文結(jié)合,簡單明了,適合單片機(jī)愛好者和初學(xué)者,也可作為中等專業(yè)技術(shù)學(xué)校、中等職業(yè)學(xué)校等教學(xué)用書。
《51單片機(jī)應(yīng)用與實踐叢書·51單片機(jī)應(yīng)用從零開始》豐富的附錄可以作為讀者對單片機(jī)學(xué)習(xí)和應(yīng)用中的參考內(nèi)容?!?1單片機(jī)應(yīng)用與實踐叢書·51單片機(jī) 應(yīng)用從零開始》盡可能降低理論學(xué)習(xí)的枯燥性,力求闡述得平實、通俗、易懂,適合作為電類本科學(xué)生的參考用書及高職高專學(xué)生的單片機(jī)應(yīng)用技術(shù)教材,也可作為無線電愛好者學(xué)習(xí)單片機(jī)的入門讀本。
本書由淺入深、全面、系統(tǒng)地介紹了單片機(jī)C51開發(fā)技術(shù)。本書提供了大量實例,供讀者實戰(zhàn)演練。另外,作者專門為每一章的內(nèi)容設(shè)置了練習(xí)題,用來加深、鞏固對每一章知識的理解,有些章節(jié)設(shè)置了擴(kuò)展式的練習(xí),留給讀者去思考、提高。 本書共分5篇。第1篇介紹單片機(jī)的發(fā)展史、應(yīng)用領(lǐng)域、軟件開發(fā)環(huán)境Keil C μVision3的搭建、硬件最小系統(tǒng)的制作、編程器的制作和STC燒錄工具的使用;第2篇介紹51單片機(jī)C語言編程中常用的數(shù)據(jù)類型、運算符與表達(dá)式、流程控制語句、函數(shù)、數(shù)組和指針、結(jié)構(gòu)體與共用體等;第3篇介紹51單片機(jī)的片內(nèi)資源,包括單片機(jī)的I/O編程、中斷系統(tǒng)、定時器/計數(shù)器、USART通用串行接口、片內(nèi)EEPROM和看門狗;第4篇介紹增強(qiáng)型單片機(jī)的功能,包括第2通用串行接口USART2、同步外圍串行接口SPI、PWM脈寬調(diào)制、A/D轉(zhuǎn)換;第5篇設(shè)計了一個完整的應(yīng)用實例,詳細(xì)介紹了整個系統(tǒng)的開發(fā)過程,以提高讀者實戰(zhàn)水平。 本書涉及面廣,從C語言編程知識到硬件電路原理,再到單片機(jī)片內(nèi)功能模塊的配置和使用,最后到項目開發(fā),幾乎涉及51單片機(jī)開發(fā)的所有重要知識。本書拋開了單片機(jī)復(fù)雜的內(nèi)部資源,弱化了對數(shù)量龐大的寄存器的講解,把重點放在原理設(shè)計和功能實現(xiàn)上。
《從零開始學(xué)51單片機(jī)》適合所有想全面學(xué)習(xí)51單片機(jī)開發(fā)技術(shù)的人員閱讀,也適合各種使用51單片機(jī)進(jìn)行開發(fā)的工程技術(shù)人員使用。對于經(jīng)常使用51單片機(jī)做開發(fā)的人員,更是一本不可多得的案頭必備參考書。