-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

簡簡單單學通51單片機開發

( 簡體 字)
作者:王晉凱 等類別:1. -> 電腦組織與體系結構 -> 單晶片 -> 8051
譯者:
出版社:清華大學出版社簡簡單單學通51單片機開發 3dWoo書號: 39524
詢問書籍請說出此書號!

缺書
NT售價: 350

出版日:8/29/2014
頁數:484
光碟數:1 (含視頻教學)
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787302364795
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

  單片機的出現可以追溯到20世紀70年代。在1970∼1974年期間,誕生了第一代4位單片機。在1978∼1983年期間,Intel公司推出了MCS-51系列單片機(即51單片機),標志著單片機進入了8位時代。幾十年來,以8051系列為代表的8位單片機在世界范圍內長盛不衰,得到了不斷發展和加強。51系列單片機也以其強大的功能在工業控制領域得到了廣泛的應用。近年來,以ARM為代表的32位控制器開始流行起來。所以有些人可能會覺得51單片機即將退出歷史的舞臺。然而,事實上51系列單片機在工控領域依然有著非常廣泛的應用,而且也會在相當長的一段時間內繼續發揮重要作用。
  國內在較早的時期就引入了51單片機,而且相關院校也普遍開設了51單片機的課程,這使得單片機在國內的院校中廣為流行。相應地,圖書市場上也出版了大量的單片機教程。然而這些教程大多都是以生澀的理論知識講解為主,缺乏實踐教學。這給讀者的學習造成了很多困惑:所學知識不能很好地應用于實際開發。時至今日,這種現象依然還存在。
  筆者從大學期間就是一個電子技術的狂熱愛好者,畢業后又從事了多年的電子產品的研發工作。作為一個過來人和從業者,想盡自己的綿薄之力,給廣大的51單片機愛好者提供一些學習上的幫助,于是便有了這本《簡簡單單學通51單片機開發》的圖書。學習單片機開發離不開實踐,所以本書強調實踐性教學,每個知識點都結合了相應的實例來講解。這些實例都是通過仿真軟件Proteus進行演示,效果很直觀。而且大部分實例采用了匯編和C兩種語言開發,一方面可以彌補讀者在語言方面的不足,更為關鍵的是可以加深讀者對單片機的理解。另外,為了幫助讀者更加高效、直觀地學習,筆者專門為本書詳細錄制了長達21小時的高清配套教學視頻,以輔助讀者學習。
  相信在筆者的帶領下,讀者不但可以很好地掌握51單片機開發的知識,而且還可以感受到51單片機學習過程中的極大樂趣和做出實實在在產品的興奮!
本書特色
  1.實例運用Proteus進行仿真
  很多讀者花費了大量的時間和金錢,去制作一塊資源有限的調試開發板。而Proteus完全可以取代這個過程。Proteus中包含了非常多的資源模塊,供開發人員快捷、方便地搭建一個學習系統。本書便很好地利用了Proteus,清晰地演示了每個實例的最終運行效果。
  2.重點介紹軟件仿真
  大型軟件項目的調試和排錯并非常規分析就能實現,而需要借助仿真調試。51單片機開發環境Keil具有軟件仿真的功能。本書將重點介紹利用軟件仿真調試程序的方法。
  3.同步使用匯編語言和C語言
  很多單片機書籍鼓勵讀者放棄匯編語言。這是非常不合理的。匯編語言在單片機的開發中是無法完全被C語言所取代的。一些要求實時性非常高的控制場合還得依賴于匯編代碼而實現。此外,學習匯編語言有助于讀者對單片機的內部資源有一個全面的認識,從而提高代碼的編寫效率。在本書中,大部分實例采用了匯編和C兩種編程語言進行開發。
  4.使用大量的程序流程圖
  程序流程圖可以將繁雜的語言敘述簡化,讓人看后一目了然,非常直觀。這對于讀者理解相關知識至關重要,是編程圖書中不可或缺的講解方式。本書講解過程中使用了大量的程序流程圖,幾乎每個程序模塊,甚至一些程序語句都使用了程序流程圖。
  5.使用外部資源
  51單片機的內部資源并不是非常豐富,但可以通過使用外部擴展資源來對它的功能進行增強。本書中使用的外部擴展主要有兩方面:一是硬件系統,包括功能芯片的使用和程序資源的擴充;二是軟件系統,包括使用C51庫函數和移植外部軟件包。
  6.提供大量的習題和實例擴展
  本書每章最后都提供了筆者精心編寫的多個填空題、選擇題、解答題和實例擴展題等。讀者通過完成這些題目不但以檢查自己對相關內容的掌握情況,而且可以鞏固和提高所學的知識。這些題目的參考答案和解題思路需要讀者自行按照本書封底的下載說明下載。
  7.提供21小時高清配套教學視頻
  筆者為本書錄制了長達21小時的高清教學視頻。這些視頻不是泛泛而談,而是非常詳細和直觀地再現了書中的大量操作。這對于實踐性要求較高的單片機學習有很大的幫助。這些視頻和書中涉及的所有實例源文件及電路圖一并收錄于配書DVD光盤中。另外,光盤中還收錄了本書所用工具軟件(Keil編譯器與Proteus演示版)的獲取方式。
本書內容
  第1章 簡單了解51單片機
  本章涵蓋的內容有:51單片機的內部資源,包括引腳結構、存儲器空間分配、一個最小系統的開發等;開發環境Keil和仿真軟件Proteus介紹;一個實例電路和程序的演示。
  第2章 從I/O端口開始學習51單片機
  本章結合一個流水燈實例,講解了51單片機I/O端口的控制方法。其中需要重點掌握的內容有:匯編語言的數據傳送指令和C語言賦值語句;幾個特殊功能的寄存器;使用Proteus繪制電路圖。
  第3章 51單片機對中斷的控制
  本章主要介紹了單片機的中斷控制技術。需要掌握的內容有:匯編語言及C語言的循環語句和移位指令;通過一個外中斷的實例改進流水燈控制方法;理解匯編語言和C語言處理中斷的區別。
  第4章 51單片機對時間的控制
  本章涵蓋兩大知識點:一是單片機軟件定時編程方法;二是單片機定時器,主要介紹單片機內部的兩個定時器的4種工作方式,對于每種工作方式都提供了對應的程序實例。
  第5章 數碼管顯示技術
  本章主要介紹了數碼管顯示技術。需要掌握的內容有:數碼管靜態顯示的方法;內部數據存儲器的讀取方法和內部程序存儲器的使用方法;數碼管動態顯示方法。
  第6章 通信利器——串口
  本章主要介紹了串口通信技術。需要掌握的內容有:51單片機串口通信的4種模式;串口雙機通信的實現方法;串并互轉的編程思想。
  第7章 數字電子時鐘的設計
  本章介紹了利用單片機的內部資源完成一個電子時鐘的設計,使用了包括定時器、串口、外中斷等單片機的固有資源。這是一個綜合型的實例,需要重點掌握分模塊編程的思路。
  第8章 更先進的電子時鐘
  本章主要介紹了運用外擴資源,配合單片機的控制而實現一個功能更加強大的電子時鐘的實例。本章使用的外部設備有字符液晶1602和時鐘芯片DS1302等。讀者需要重點掌握51單片機外部資源和單片機接口的方法。
  第9章 51單片機外設擴展
  51單片機的內部資源并不豐富,所以進行外部資源的擴展就變得非常重要。本章為51單片機擴展了一片外部數據存儲器和兩組8位鍵盤。通過本對章內容的學習,應該掌握匯編語言和C語言進行外部擴展程序的實現方法。
  第10章 點陣液晶LCD和矩陣鍵盤
  本章主要介紹了單片機系統的兩個常用電路模塊:點陣液晶LCD和矩陣鍵盤。需要掌握的內容有:點陣液晶接口電路和驅動程序;矩陣鍵盤按鍵電路原理及掃描的方法。
  第11章 計算器程序分析與設計
  本章主要有兩個任務:一是完成對Proteus自帶計算器(匯編語言編寫)的分析;二是對另外一個Proteus自帶計算器(C語言編寫)進行改造。需要讀者重點掌握的內容是C51庫函數的調用。
  第12章 ZLG/GUI在51單片機中的移植及運用
  ZLG/GUI是廣州周立功公司研發的輕型圖形用戶界面,具有較為強大的功能。本章重點內容是將該軟件包移植到51單片機之中,并掌握綜合運用該軟件包提供的功能函數。通過對本章內容的學習,讀者不僅可以學習一個外部程序資源移植的范例,而且還可以更進一步理解使用外部函數簡化單片機開發過程的思想。
  附錄
  本書最后提供了3個附錄,以方便讀者學習時查閱相關資料。附錄A給出了51單片機的匯編指令集;附錄B提供了ASCII碼表;附錄C給出了C語言運算符及其優先級。
本書讀者對象
* 51單片機初學者;
* 想全面學習51單片機開發技術的人員;
* 單片機產品開發人員;
* 單片機開發愛好者;
* 電子產品設計愛好者;
* 大中專院校的學生;
* 社會培訓班學員。
本書作者
  本書由王晉凱主筆編寫。參與本書編寫的人員還有吳萬軍、項延鐵、謝邦鐵、許黎民、薛在軍、楊佩璐、楊習偉、于洪亮、張寶梅、張功勤、張建華、張建志、張敬東、張倩、張慶利、趙劍川、趙薇、鄭強、周靜、朱盛鵬、祝明慧、張晶晶。
  讀者閱讀本書的過程中,有任何疑問都可以發郵件到bookservice2008@163.com,我們會及時解決您的問題。
  
  
  編者
  
  
  
  ??
  
  ??
  
  ??
  
  ??
  
前言
  
前言
  
·IV·
  
  
·III·
  
  
  
  
  
  
內容簡介:

  學習單片機開發離不開實踐。將理論和實例結合起來是最好的方式。本書結合實踐,系統地介紹了51單片機開發的方方面面。書中的每章內容都圍繞實例展開,這些例子大多采用匯編和C兩種語言開發,并利用知名EDA仿真軟件Proteus清晰地演示了每個實例的最終運行效果。這無疑可以大大提高讀者的學習興趣,并加深讀者對單片機的理解。當然,每個實例的制作都需要有一定的理論去支撐,所以在實例設計之前會先講解一些理論基礎,并在實例完成之后對這些理論和開發經驗進行總結。這種教學方式可以讓讀者將51單片機的理論知識和動手實踐很好地結合起來,從而達到更好的學習效果。另外,配書DVD光盤中提供了作者專門錄制的21小時高清配套教學視頻和本書源文件,以方便讀者高效、直觀地學習。
  本書共包含12章。其主要內容有:簡單了解51單片機;從I/O端口開始學51單片機;51單片機對中斷的控制;51單片機對時間的控制;數碼管顯示技術;通信利器——串口;數字電子時鐘的設計;更先進的電子時鐘;51單片機外設擴展;點陣液晶LCD和矩陣鍵盤;計算器程序分析與設計;ZLG/GUI在51單片機中的移植及運用。本書每章最后都提供了多個習題和實例擴展題,以幫助讀者鞏固和提高。
  本書從51單片機基礎知識開始講解,逐步深入到較復雜的實例,特別適合51單片機初學者閱讀。書中還介紹了很多同類圖書中較少涉及的知識點和作者的實際項目經驗,也適合有基礎的讀者和單片機愛好者進一步研讀。本書注重實踐教學,還非常適合大中專院校的相關專業作為教材使用。

目錄:

第1章 簡單了解51單片機( 教學視頻:77分鐘) 1
1.1 51單片機硬件簡述 1
1.1.1 51單片機的邏輯結構及信號引腳 2
1.1.2 51單片機的存儲器 4
1.1.3 51單片機的時鐘電路和時序 10
1.1.4 51單片機的復位電路 11
1.1.5 增強型51單片機AT89C52的特點介紹 12
1.2 51單片機的程序設計語言和軟件編譯環境 13
1.2.1 來看一段匯編語言吧 13
1.2.2 看看更容易理解的C語言吧 13
1.2.3 兩種程序編程語言的關系及相互的優缺點 14
1.2.4 51單片機的編譯開發環境介紹 15
1.3 51單片機開發環境Keil的介紹 15
1.3.1 Keil開發環境的介紹 15
1.3.2 項目建立的方法 16
1.4 51單片機學習的利器——仿真軟件Proteus 19
1.4.1 Proteus簡介 20
1.4.2 用Proteus建立一個51單片機最小系統的電路圖 25
1.5 通過一個小實例了解51單片機開發 27
1.5.1 在Keil中編譯一段程序 27
1.5.2 在Proteus中演示程序 30
1.6 習題及操作練習 32
第2章 從I/O端口開始學51單片機( 教學視頻:53分鐘) 35
2.1 從一個漂亮的流水燈看I/O端口 35
2.1.1 演示流水燈實例 35
2.1.2 流水燈電路圖的繪制 37
2.1.3 P1端口介紹 43
2.1.4 流水燈程序設計流程圖 45
2.2 用匯編語言實現流水燈 47
2.2.1 用匯編語言小試牛刀 47
2.2.2 測試流水燈匯編程序 48
2.2.3 51單片機匯編語言指令介紹——數據傳送指令 52
2.3 用C語言實現流水燈 53
2.3.1 根據流程圖來編寫程序 53
2.3.2 當代最優秀的程序設計語言——C語言介紹 55
2.4 I/O端口的輸入控制 62
2.4.1 用開關控制流水燈 63
2.4.2 程序設計流程 64
2.4.3 匯編語言實現開關控制流水 64
2.4.4 匯編語言知識擴充——專用寄存器介紹 66
2.4.5 用C語言實現開關控制流水燈 69
2.4.6 C語言知識擴展 71
2.5 習題和擴展練習 73
第3章 51單片機對中斷的控制( 教學視頻:89分鐘) 76
3.1 流水燈匯編程序的改進 76
3.1.1 流水燈程序改進的思路 76
3.1.2 改進后的匯編語言流水燈 78
3.1.3 軟件仿真介紹 82
3.2 流水燈C語言的改進 89
3.2.1 新流水燈C語言設計思路 90
3.2.2 軟件仿真C語言項目 93
3.3 外中斷控制概述 98
3.3.1 51單片機的中斷源 98
3.3.2 外部中斷的執行方式 99
3.3.3 外中斷控制電路 100
3.4 匯編語言控制外中斷 101
3.4.1 匯編知識介紹 101
3.4.2 編寫中斷控制匯編語言 104
3.4.3 在Proteus中仿真效果 106
3.5 用C語言完成中斷控制 107
3.5.1 C語言相關知識介紹 107
3.5.2 編寫C語言外中斷程序 110
3.5.3 軟件仿真C語言外中斷程序 112
3.6 習題和實例演練 117
第4章 51單片機對時間的控制( 教學視頻:177分鐘) 119
4.1 51單片機的軟件定時 119
4.1.1 匯編語言實現精確定時 119
4.1.2 用C語言實現延時的方法 125
4.2 51單片機定時器概述 131
4.2.1 51單片機定時器的功能 131
4.2.2 定時器/計數器相關寄存器 131
4.3 定時工作方式0 134
4.3.1 定時工作方式0概述 134
4.3.2 用定時器方式0做方波信號發生器 135
4.3.3 在工作方式0下,利用查詢方法實現方波信號發生器 137
4.3.4 匯編語言實現定時器在工作方式0的中斷控制方法 142
4.3.5 C語言實現定時器在工作方式0的中斷控制 147
4.3.6 在Proteus中仿真中斷實例 148
4.4 定時工作方式1 149
4.4.1 定時器工作方式1概述 149
4.4.2 實例設計方案 150
4.4.3 匯編語言實現可編程定時 152
4.4.4 C語言實現可編程定時 155
4.4.5 Proteus仿真可編程定時 156
4.4.6 軟件仿真可編程定時 157
4.5 定時工作方式2 160
4.5.1 定時工作方式2概述 160
4.5.2 實例規劃 161
4.5.3 用匯編語言實現目標 163
4.5.4 用C語言實現編程 164
4.5.5 在Proteus中進行仿真 166
4.6 定時工作式3 168
4.6.1 定時工作方式3概述 168
4.6.2 實例規劃 169
4.6.3 用匯編語言實現編程 171
4.6.4 用C語言實現編程 173
4.6.5 在Proteus中進行仿真 174
4.7 習題和實例擴展 175
第5章 數碼管顯示技術( 教學視頻:92分鐘) 177
5.1 數碼管靜態顯示 177
5.1.1 數碼管介紹 177
5.1.2 匯編語言對數據存儲器(RAM)的空間的攫取 180
5.1.3 利用C語言實現對數據存儲器(RAM)的存取 189
5.1.4 匯編語言對程序存儲器(ROM)的開拓 193
5.1.5 C語言對程序存儲器的讀取 198
5.2 數碼管動態顯示 199
5.2.1 動態顯示思路 200
5.2.2 用Proteus繪制數碼管動態顯示電路圖 200
5.2.3 匯編語言實現動態顯示 203
5.2.4 C語言實現動態顯示 206
5.3 匯編語言實現數碼顯示計數器 209
5.3.1 總體規劃 210
5.3.2 匯編基礎知識擴展——算數運算指令 212
5.3.3 分模塊編寫程序 213
5.3.4 在Proteus中仿真實例 219
5.3.5 在Keil中仿真 220
5.4 習題和實例擴展 223
第6章 通信利器——串口( 教學視頻:127分鐘) 225
6.1 一個實例來說明串口通訊 225
6.1.1 新式流水燈 225
6.1.2 串行通信基本概述 227
6.1.3 RS-232總線標準 228
6.1.4 51單片機串行口以及控制寄存器 229
6.1.5 51單片機串行通信工作方式 230
6.1.6 串行工作方式0實例詳述 232
6.2 雙機通信 237
6.2.1 準備電路圖 237
6.2.2 程序設計方案 239
6.2.3 匯編語言實現雙機通信 241
6.2.4 C語言實現雙機通信 244
6.2.5 仿真觀察雙機通信 248
6.3 單片機和電腦通信 248
6.3.1 硬件電路的實現 248
6.3.2 程序設計方案 251
6.3.3 匯編語言編寫實例程序 252
6.3.4 C語言實現編程 255
6.3.5 實例在Proteus中的仿真 256
6.4 習題和實例擴展 260
第7章 數字電子時鐘的設計( 教學視頻:157分鐘) 262
7.1 電子時鐘總體規劃 262
7.1.1 電子時鐘整機電路圖 262
7.1.2 數碼管顯示 263
7.1.3 串口修改數值 265
7.1.4 時鐘工作單元 266
7.1.5 鍵盤控制 266
7.2 鍵盤分析 268
7.2.1 鍵值獲取 269
7.2.2 根據鍵值執行相應程序 273
7.2.3 各按鍵子程序 274
7.3 電子時鐘其他模塊設計 277
7.3.1 程序預定義變量 277
7.3.2 主程序程序設計 279
7.3.3 顯示子程序 281
7.3.4 定時器控制單元 283
7.3.5 串行修改單元 285
7.4 C語言知識擴展 286
7.4.1 函數定義的形式 286
7.4.2 指針變量 288
7.4.3 加1子程序的分析 292
7.5 習題和實例擴展 293
第8章 更先進的電子時鐘( 教學視頻:191分鐘) 295
8.1 字符和ASCII碼 295
8.1.1 ASCII碼的概念 295
8.1.2 匯編語言中運用字符 296
8.1.3 C語言中表達字符 296
8.1.4 串行口輸出字符 298
8.2 字符型液晶1602 302
8.2.1 字符液晶1602簡介 302
8.2.2 在編程中學習液晶驅動 305
8.2.3 液晶顯示其他接口函數 309
8.3 時鐘模塊研究 312
8.3.1 DS1302介紹 312
8.3.2 DS1302控制方式 313
8.3.3 時鐘程序編寫 315
8.4 文件的分割管理 325
8.4.1 C項目的分割方法 325
8.4.2 匯編語言分割方式 328
8.5 習題和實例擴展 335
第9章 51單片機外設擴展( 教學視頻:72分鐘) 337
9.1 外部數據存儲器的擴展 337
9.1.1 數據存儲芯片介紹 337
9.1.2 外擴RAM分析 340
9.1.3 外部設備數據傳送指令 342
9.1.4 用實例驗證對外部RAM的存取過程 345
9.2 LCD的擴展 347
9.2.1 實現總線控制LCD的電路分析 347
9.2.2 匯編語言實現編程方式 349
9.2.3 C語言實現編程方法 351
9.3 更多外設的擴展方法 352
9.3.1 實現多個外設擴展的電路實現方法 352
9.3.2 綜合運用外設實例 356
9.3.3 匯編語言實現實例要求 358
9.3.4 C語言實現實例目標 361
9.4 習題和實例擴展 364
第10章 點陣液晶LCD和矩陣鍵盤( 教學視頻:84分鐘) 366
10.1 點陣液晶12864 366
10.1.1 12864液晶概述 366
10.1.2 12864直接控制方式底層驅動程序 370
10.1.3 12864點陣液晶接口函數 373
10.1.4 實例顯示成果 386
10.2 矩陣鍵盤 392
10.2.1 矩陣鍵盤的電路圖及實現原理 392
10.2.2 矩陣鍵盤判鍵程序 394
10.2.3 矩陣鍵盤在12864液晶上的演示 397
10.3 習題和實例擴展 401
第11章 計算器程序分析與設計( 教學視頻:82分鐘) 403
11.1 匯編語言知識補充 403
11.1.1 匯編語言執行跳轉指令 403
11.1.2 匯編語言偽指令擴充 404
11.2 C語言庫函數介紹 407
11.2.1 C51庫函數簡介 407
11.2.2 典型庫函數介紹 409
11.3 Proteus自帶計算器分析(匯編語言編寫) 413
11.3.1 實例電路分析 414
11.3.2 外設模塊程序分析 416
11.3.3 程序分配布局 419
11.3.4 編譯信息觀察及程序總結 425
11.4 C語言計算器分析和改進 425
11.4.1 Proteus提供的計算器分析 426
11.4.2 改造C51計算器 431
11.4.3 項目設置和仿真效果 437
11.5 習題和實例擴展 438
第12章 ZLG/GUI在51單片機中的移植及運用( 教學視頻:44分鐘) 440
12.1 C語言基礎知識補充 440
12.1.1 C51結構體 440
12.1.2 C51枚舉類型 445
12.1.3 C51共用體 446
12.1.4 類型定義符typedef 448
12.2 ZLG/GUI介紹 449
12.2.1 ZLG/GUI 的文件瀏覽 449
12.2.2 CONFIG.H文件 454
12.2.3 ZLG/GUI的配置 455
12.3 移植ZLG/GUI 457
12.3.1 LCD底層驅動 457
12.3.2 ZLG/GUI的移植文件 459
12.3.3 底層程序編寫 462
12.3.4 Keil配置 465
12.4 ZLG/GUI的應用舉例 466
12.4.1 實現基本畫圖函數 466
12.4.2 字符繪制 468
12.4.3 漢字顯示和圖形顯示 469
12.4.4 窗口顯示 475
12.4.5 菜單功能和按鈕 477
12.5 習題和實例擴展 480
附錄A 51單片機匯編指令集 482
附錄B ASCII碼表 486
附錄C C語言運算符及其優先級 488
  ??
  
  ??
  
  ??
  
  ??
  
目錄
  
目錄
  
·X·
  
  
·XI·
  
  
  
  
  
  
序: