51單片機(jī)C語(yǔ)言程序設(shè)計(jì)經(jīng)典實(shí)例

出版時(shí)間:2012-5  出版社:電子工業(yè)出版社  作者:陳忠平  頁(yè)數(shù):454  字?jǐn)?shù):742000  
Tag標(biāo)簽:無(wú)  

前言

  單片機(jī)是芯片級(jí)的微型計(jì)算機(jī)系統(tǒng),具有性價(jià)比高、功耗低、易于開發(fā)等優(yōu)點(diǎn),可以嵌入各種應(yīng)用系統(tǒng)中,以實(shí)現(xiàn)智能化控制。近20年來(lái),嵌入式C語(yǔ)言的推廣普及,片載Flash程序存儲(chǔ)器及其在系統(tǒng)內(nèi)可編程(ISP)和在應(yīng)用中編程(IAP)技術(shù)的廣泛采用,使得單片機(jī)越來(lái)越受到廣大電子工程師的歡迎?! ”緯試?guó)內(nèi)最流行的80C51系列單片機(jī)的硬件和軟件設(shè)計(jì)為背景,以C語(yǔ)言為基礎(chǔ),以項(xiàng)目為載體,采用任務(wù)驅(qū)動(dòng)方式的教學(xué)方法,通過(guò)豐富的C語(yǔ)言程序?qū)嵗?,由淺入深地介紹了80C51系列單片機(jī)的基礎(chǔ)知識(shí)及各種應(yīng)用開發(fā)技術(shù)。在編寫過(guò)程中,編者注重題材的取舍,使本書具有以下4個(gè)特點(diǎn)。  1.項(xiàng)目為載體,任務(wù)帶動(dòng)教學(xué)  本書以“項(xiàng)目為載體,采用任務(wù)驅(qū)動(dòng)方式”編寫,強(qiáng)調(diào)“教、學(xué)、做”一體化,堅(jiān)持理論知識(shí)夠用的原則,并將知識(shí)點(diǎn)分散到多個(gè)任務(wù)中,使讀者能夠邊學(xué)邊做,輕松完成單片機(jī)學(xué)習(xí)之旅?! ?.軟硬結(jié)合,虛擬仿真  沿用傳統(tǒng)單片機(jī)學(xué)習(xí)與開發(fā)經(jīng)驗(yàn),通過(guò)相關(guān)編譯軟件(如Keil)編寫程序并生成*?Hex文件,然后在Proteus中繪制硬件電路圖(這一過(guò)程相當(dāng)于硬件電路的焊接),調(diào)用*?Hex文件進(jìn)行虛擬仿真(這一過(guò)程相當(dāng)于硬件調(diào)試)。這樣,對(duì)于單片機(jī)初學(xué)者來(lái)講,可節(jié)約學(xué)習(xí)成本,提高學(xué)習(xí)積極性;對(duì)于單片機(jī)系統(tǒng)開發(fā)人員來(lái)講,可縮短開發(fā)時(shí)間,提高設(shè)計(jì)效率,降低開發(fā)成本?! ?.C語(yǔ)言編程,增強(qiáng)可讀性  C語(yǔ)言是一種編譯型程序設(shè)計(jì)語(yǔ)言,它兼顧了多種高級(jí)語(yǔ)言的特點(diǎn),并具備匯編語(yǔ)言的功能。用C語(yǔ)言來(lái)編寫程序會(huì)大大縮短開發(fā)周期,且明顯地增加程序的可讀性,便于改進(jìn)和擴(kuò)充。采用C語(yǔ)言進(jìn)行單片機(jī)程序設(shè)計(jì)是單片機(jī)開發(fā)與應(yīng)用的必然趨勢(shì)。許多人員在學(xué)習(xí)MCS—51單片機(jī)時(shí),均先學(xué)習(xí)了匯編語(yǔ)言,然后再學(xué)習(xí)用C語(yǔ)言編寫MCS—51程序代碼,通過(guò)這種歷程他們深深地感悟:匯編指令太枯燥,學(xué)習(xí)起來(lái)費(fèi)時(shí)費(fèi)力,用匯編語(yǔ)言編寫一個(gè)程序或讀懂程序時(shí)不是一件容易的事情;使用C語(yǔ)言進(jìn)行編程時(shí),不必對(duì)單片機(jī)的硬件結(jié)構(gòu)有很深入的了解,編寫程序相對(duì)簡(jiǎn)單,且程序的可讀性和可移植性均很強(qiáng)?! ?.兼顧原理,注重實(shí)用  基本原理、基本實(shí)例一直是學(xué)習(xí)和掌握單片機(jī)應(yīng)用技術(shù)的基本要求,本書側(cè)重于實(shí)際應(yīng)用,因此很少講解相關(guān)理論知識(shí),這樣避免了知識(shí)的重復(fù)講解。為緊隨技術(shù)的發(fā)展,在編寫過(guò)程中還注重知識(shí)的新穎性和實(shí)用性,因此本書中講解了SPI總線、I2C總線、1-Wire總線芯片的使用方法,使讀者學(xué)習(xí)的知識(shí)能夠緊隨時(shí)代的發(fā)展?! ⒓颖緯帉懙挠泻瞎こ搪殬I(yè)技術(shù)學(xué)院陳忠平、徐剛強(qiáng)、李銳敏,湖南航天局7801研究所劉瓊,湖南涉外經(jīng)濟(jì)學(xué)院侯玉寶、高金定,湖南科技職業(yè)技術(shù)學(xué)院高見(jiàn)芳,湖南三一重工集團(tuán)王漢其等。全書由湖南工程職業(yè)技術(shù)學(xué)院陳建忠教授主審,在編寫過(guò)程中還得到了湖南工程職業(yè)技術(shù)學(xué)院龔亮、龍曉慶、許睿等眾位高工、老師的大力支持及幫助,在此向他們表示衷心的感謝。同時(shí)對(duì)在編寫過(guò)程中參考的多部51單片機(jī)原理及相關(guān)著作的作者表示深深的謝意!由于編者知識(shí)水平和經(jīng)驗(yàn)的局限性,書中難免存在缺點(diǎn)和錯(cuò)誤,敬請(qǐng)廣大讀者給予批評(píng)指正。

內(nèi)容概要

  本書是以“項(xiàng)目為載體,采用任務(wù)驅(qū)動(dòng)方式”編寫的。本書以STC89C52RC單片機(jī)為藍(lán)本,結(jié)合Keil
C51、Proteus虛擬仿真軟件,從實(shí)驗(yàn)、實(shí)踐、實(shí)用的角度出發(fā),通過(guò)豐富的實(shí)例詳細(xì)講述51系列單片機(jī)C語(yǔ)言程序設(shè)計(jì)和單片機(jī)控制系統(tǒng)的應(yīng)用技術(shù)。本書的主要內(nèi)容包括單片機(jī)及最小應(yīng)用系統(tǒng)、單片機(jī)系統(tǒng)開發(fā)軟件的使用、C51程序設(shè)計(jì)語(yǔ)言基礎(chǔ)、LED廣告燈的設(shè)計(jì)、按鍵控制與LED數(shù)碼管顯示、中斷控制應(yīng)用設(shè)計(jì)、定時(shí)/計(jì)數(shù)器控制的應(yīng)用設(shè)計(jì)、單片機(jī)串行通信設(shè)計(jì)、LED點(diǎn)陣顯示器設(shè)計(jì)、LCD液晶顯示設(shè)計(jì)、A/D與D/A轉(zhuǎn)換、串行總線擴(kuò)展及應(yīng)用設(shè)計(jì)等12個(gè)項(xiàng)目83個(gè)任務(wù)。

書籍目錄

項(xiàng)目一 單片機(jī)及最小應(yīng)用系統(tǒng)
 任務(wù)1 認(rèn)識(shí)單片機(jī)
 任務(wù)2 STC89系列單片機(jī)的識(shí)讀
 任務(wù)3 單片機(jī)最小應(yīng)用系統(tǒng)的組成
項(xiàng)目二 單片機(jī)系統(tǒng)開發(fā)軟件的使用
 任務(wù)1 Keil C51編譯軟件的使用
 任務(wù)2 STC下載軟件的使用
 任務(wù)3 Proteus 7?8仿真軟件的使用
項(xiàng)目三 C51程序設(shè)計(jì)語(yǔ)言基礎(chǔ)
 任務(wù)1 C51程序組成的識(shí)讀
 任務(wù)2 運(yùn)算符和表達(dá)式
 任務(wù)3 程序結(jié)構(gòu)及流程控制
 任務(wù)4 數(shù)組與指針
 任務(wù)5 函數(shù)與編譯預(yù)處理
項(xiàng)目四 LED廣告燈的設(shè)計(jì)
 任務(wù)1 LED控制原理
 任務(wù)2 閃爍廣告燈的設(shè)計(jì)
 任務(wù)3 流水廣告燈的設(shè)計(jì)
 任務(wù)4 拉幕式與閉幕式廣告燈的設(shè)計(jì)
 任務(wù)5 復(fù)雜廣告燈的設(shè)計(jì)
項(xiàng)目五 鍵盤控制與LED數(shù)碼管顯示
 任務(wù)1 鍵盤控制原理
 任務(wù)2 LED數(shù)碼管顯示原理
 任務(wù)3 單個(gè)LED數(shù)碼管顯示設(shè)計(jì)
 任務(wù)4 多個(gè)LED數(shù)碼管顯示設(shè)計(jì)
 任務(wù)5 條形LED花樣選擇顯示
 任務(wù)6 查詢式按鍵設(shè)計(jì)
 任務(wù)7 LED數(shù)碼管顯示矩陣鍵盤按鍵的設(shè)計(jì)
 任務(wù)8 矩陣鍵盤按鍵控制條形LED的設(shè)計(jì)
 任務(wù)9 簡(jiǎn)單撥號(hào)鍵盤的設(shè)計(jì)
項(xiàng)目六 中斷控制應(yīng)用設(shè)計(jì)
 任務(wù)1 中斷控制原理
 任務(wù)2 帶中斷控制的LED花樣燈
 任務(wù)3 采用外中斷控制的條形LED彩燈設(shè)計(jì)
 任務(wù)4 采用兩個(gè)外中斷的條形LED彩燈控制
 任務(wù)5 采用兩個(gè)外中斷實(shí)現(xiàn)LED鍵控移位
 任務(wù)6 采用外中斷實(shí)現(xiàn)計(jì)數(shù)
 任務(wù)7 采用外中斷進(jìn)行計(jì)數(shù)和清零控制
項(xiàng)目七 定時(shí)/計(jì)數(shù)器控制的應(yīng)用設(shè)計(jì)
 任務(wù)1 定時(shí)/計(jì)數(shù)器控制原理
 任務(wù)2 簡(jiǎn)單計(jì)數(shù)器的設(shè)計(jì)
 任務(wù)3 方波信號(hào)發(fā)生器
 任務(wù)4 用T2實(shí)現(xiàn)流水燈控制
 任務(wù)5 59s計(jì)時(shí)器的設(shè)計(jì)
 任務(wù)6 LED滾動(dòng)閃爍控制
 任務(wù)7 簡(jiǎn)單門鈴設(shè)計(jì)
 任務(wù)8 速度可調(diào)流水燈控制
 任務(wù)9 PWM調(diào)光
 任務(wù)10 簡(jiǎn)單電子頻率計(jì)
項(xiàng)目八 單片機(jī)串行通信設(shè)計(jì)
 任務(wù)1 單片機(jī)串行通信原理
 任務(wù)2 甲機(jī)通過(guò)串口控制乙機(jī)LED顯示狀態(tài)
 任務(wù)3 甲機(jī)通過(guò)串口控制乙機(jī)計(jì)時(shí)
 任務(wù)4 單片機(jī)雙機(jī)通信
 任務(wù)5 單片機(jī)向主機(jī)發(fā)送字符串
 任務(wù)6 單片機(jī)與PC通信
 任務(wù)7 串入并出擴(kuò)展
 任務(wù)8 并入串出擴(kuò)展
項(xiàng)目九 LED點(diǎn)陣顯示器設(shè)計(jì)
 任務(wù)1 LED點(diǎn)陣顯示器控制原理
 任務(wù)2 一個(gè)5×7 LED點(diǎn)陣字符顯示設(shè)計(jì)
 任務(wù)3 一個(gè)8×8 LED點(diǎn)陣字符串顯示
 任務(wù)4 兩個(gè)8×8 LED點(diǎn)陣字符串顯示
 任務(wù)5 兩個(gè)8×8 LED點(diǎn)陣滾動(dòng)顯示
 任務(wù)6 一個(gè)16×16 LED點(diǎn)陣漢字顯示
 任務(wù)7 一個(gè)16×16 LED點(diǎn)陣漢字移位顯示
 任務(wù)8 兩個(gè)16×16 LED點(diǎn)陣漢字顯示
 任務(wù)9 兩個(gè)16×16 LED點(diǎn)陣漢字分批顯示
 任務(wù)10 兩個(gè)16×16 LED點(diǎn)陣漢字移位顯示
項(xiàng)目十 LCD液晶顯示設(shè)計(jì)
 任務(wù)1 LCD液晶顯示原理
 任務(wù)2 字符式LCD顯示字符串
 任務(wù)3 字符式LCD靜態(tài)顯示
 任務(wù)4 字符式LCD滾動(dòng)顯示
 任務(wù)5 字符式LCD移位顯示
 任務(wù)6 漢字式LCD靜態(tài)顯示
 任務(wù)7 漢字式LCD移位顯示
 任務(wù)8 漢字式LCD滾動(dòng)顯示
 任務(wù)9 漢字式LCD圖片顯示
項(xiàng)目十一 A/D與D/A轉(zhuǎn)換
 任務(wù)1 ADC0808模/數(shù)轉(zhuǎn)換
 任務(wù)2 ADC0809模/數(shù)轉(zhuǎn)換
 任務(wù)3 ADC0832模/數(shù)轉(zhuǎn)換
 任務(wù)4 TLC549模/數(shù)轉(zhuǎn)換
 任務(wù)5 TLC2543模/數(shù)轉(zhuǎn)換
 任務(wù)6 DAC0832數(shù)/模轉(zhuǎn)換
 任務(wù)7 TLC5615數(shù)/模轉(zhuǎn)換
 任務(wù)8 PCF8591的A/D及D/A轉(zhuǎn)換
項(xiàng)目十二 串行總線擴(kuò)展及應(yīng)用設(shè)計(jì)
 任務(wù)1 24C04開啟次數(shù)統(tǒng)計(jì)
 任務(wù)2 PCF8574串行總線擴(kuò)展
 任務(wù)3 MAX7219控制數(shù)碼管動(dòng)態(tài)顯示
 任務(wù)4 MAX7221控制數(shù)碼管移位顯示
 任務(wù)5 DS18B20測(cè)溫
 任務(wù)6 DS1302可調(diào)時(shí)鐘日歷
附錄A Proteus常用快捷鍵
附錄B C51庫(kù)函數(shù)
參考文獻(xiàn)

章節(jié)摘錄

版權(quán)頁(yè):   插圖:    3.LED數(shù)碼管的識(shí)別與檢測(cè)方法 LED數(shù)碼管的識(shí)別與檢測(cè)可以使用干電池檢測(cè)或萬(wàn)用表檢測(cè)這兩種方法進(jìn)行。 1)干電池檢測(cè)法取兩節(jié)普通1.5V干電池串聯(lián)起來(lái)形成3V電壓源,并串聯(lián)一個(gè)100Ω、1/8W的限流電阻,以防止電流過(guò)大燒壞被測(cè)LED數(shù)碼管。將3V電壓的負(fù)極引線接在被測(cè)數(shù)碼管的公共陰極上,正極引線依次移動(dòng)接觸各筆段電極(a~h腳)。當(dāng)正極引線接觸到LED數(shù)碼管的某一段碼電極時(shí),對(duì)應(yīng)段碼就發(fā)光顯示。用這種方法可以快速測(cè)出數(shù)碼管是否有斷筆(某一段碼不能顯示)或連筆(某些段碼連在一起),并且可相對(duì)比較出不同的段碼發(fā)光強(qiáng)弱是否一致。若檢測(cè)共陽(yáng)極數(shù)碼管,只需將電池的正、負(fù)極引線對(duì)調(diào)一下即可。被測(cè)數(shù)碼管的各筆段電極(a~h腳)全部短接起來(lái),再接通測(cè)試用干3V電壓,則可使被測(cè)數(shù)碼管實(shí)現(xiàn)全段碼發(fā)光。對(duì)于質(zhì)量較好的數(shù)碼管,其發(fā)光顏色應(yīng)該均勻,并且無(wú)段碼殘缺或局部變色等現(xiàn)象。 如果不清楚被測(cè)數(shù)碼管是共陽(yáng)極的還是共陰極的,以及引腳排序,可從被測(cè)數(shù)碼管的左邊第1腳開始,逆時(shí)針?lè)较蛞来沃鹉_測(cè)試各引腳,使各段碼分別發(fā)光,即可測(cè)繪出該數(shù)碼管的引腳排列和內(nèi)部接線。測(cè)試時(shí)注意,只要某一段碼發(fā)光,就說(shuō)明被測(cè)的兩個(gè)引腳中有一個(gè)是公共引腳,假定某一腳是公共引腳不動(dòng),變動(dòng)另一測(cè)試腳,如果另一個(gè)段碼發(fā)光,說(shuō)明假定正確。這樣根據(jù)公共引腳所接電源的極性,可判斷出被測(cè)數(shù)碼管是共陽(yáng)極的還是共陰極的。顯然,公共引腳如果接電池正極,則被測(cè)數(shù)碼管為共陽(yáng)極的;公共引腳如果接電池負(fù)極,則被測(cè)數(shù)碼管應(yīng)為共陰極的。接下來(lái)測(cè)試剩余各引腳,即可很快確定出所對(duì)應(yīng)的段碼來(lái)。 2)萬(wàn)用表檢測(cè)法這里以指針式萬(wàn)用表為例,說(shuō)明具體檢測(cè)方法:首先將指針式萬(wàn)用表?yè)苤痢癛×10k”電阻擋。由于數(shù)碼管內(nèi)部的LED正向?qū)妷阂话悴恍∮?.8V,所以萬(wàn)用表的電阻擋應(yīng)置于內(nèi)部電池電壓是15V(或9V)的“R×10k”擋,而不應(yīng)置于內(nèi)部電池電壓是1.5V的“R×100”或“R×1k”擋,否則無(wú)法正常測(cè)量LED的正、反向電阻。然后,進(jìn)行檢測(cè)。在測(cè)量共陰極數(shù)碼管時(shí),萬(wàn)用表紅表筆(注意:紅表筆接表內(nèi)電池負(fù)極、黑表筆接表內(nèi)電池正極)應(yīng)接數(shù)碼管的“-”公共端,黑表筆則分別去接各段碼電極(a~g、dp腳);對(duì)于共陽(yáng)極的數(shù)碼管,黑表筆應(yīng)接數(shù)碼管的“+”公共端,紅表筆則分別去接a~g、dp腳。正常情況下,萬(wàn)用表的指針應(yīng)該偏轉(zhuǎn)(一般示數(shù)在100Ω以內(nèi)),說(shuō)明對(duì)應(yīng)段碼的LED導(dǎo)通,同時(shí)對(duì)應(yīng)段碼會(huì)發(fā)光。若測(cè)到某個(gè)引腳時(shí),萬(wàn)用表指針不偏轉(zhuǎn),所對(duì)應(yīng)的段碼也不發(fā)光,則說(shuō)明被測(cè)段碼的LED已經(jīng)開路損壞。與干電池檢測(cè)法一樣,采用萬(wàn)用表檢測(cè)法也可對(duì)不清楚結(jié)構(gòu)類型和引腳排序的數(shù)碼管進(jìn)行快速檢測(cè)。

編輯推薦

《卓越工程師培養(yǎng)計(jì)劃:51單片機(jī)C語(yǔ)言程序設(shè)計(jì)經(jīng)典實(shí)例》以國(guó)內(nèi)最流行的80C51系列單片機(jī)的硬件和軟件設(shè)計(jì)為背景,以C語(yǔ)言為基礎(chǔ),以項(xiàng)目為載體,采用任務(wù)驅(qū)動(dòng)方式的教學(xué)方法,通過(guò)豐富的C語(yǔ)言程序?qū)嵗?,由淺入深地介紹了80C51系列單片機(jī)的基礎(chǔ)知識(shí)及各種應(yīng)用開發(fā)技術(shù)。《卓越工程師培養(yǎng)計(jì)劃:51單片機(jī)C語(yǔ)言程序設(shè)計(jì)經(jīng)典實(shí)例》內(nèi)容全面,取材新穎,敘述清楚,理論聯(lián)系實(shí)際,突出實(shí)用特色?!蹲吭焦こ處熍囵B(yǎng)計(jì)劃:51單片機(jī)C語(yǔ)言程序設(shè)計(jì)經(jīng)典實(shí)例》適合單片機(jī)愛(ài)好者自學(xué)使用,也可作為高等院校51單片機(jī)課程“教、學(xué)、做”一體化的教學(xué)用書,還可作為51系列單片機(jī)應(yīng)用開發(fā)人員的實(shí)用參考書。

圖書封面

圖書標(biāo)簽Tags

無(wú)

評(píng)論、評(píng)分、閱讀與下載


    51單片機(jī)C語(yǔ)言程序設(shè)計(jì)經(jīng)典實(shí)例 PDF格式下載


用戶評(píng)論 (總計(jì)20條)

 
 

  •   書本挺厚的,內(nèi)容主要是依托Proteus軟件進(jìn)行仿真學(xué)習(xí),例子豐富實(shí)用。我個(gè)人覺(jué)得很好,對(duì)我?guī)椭容^大。
  •   書不錯(cuò),經(jīng)典實(shí)例基本也都能跑起來(lái),雖然有的例子還是有小問(wèn)題,但作為學(xué)習(xí)和借鑒還是蠻有用的
  •   比較實(shí)用,可作參考
  •   書內(nèi)容不錯(cuò)的,就是少了光盤呀
  •   對(duì)于新手,還是需要點(diǎn)功底。不錯(cuò)的書。
  •   不錯(cuò),書很好,送貨很快!
  •   送貨人很好,,,書很不錯(cuò)。
  •   案例通俗易懂。
  •   還沒(méi)讀 看起來(lái)就已經(jīng)愛(ài)不釋手了
  •   真的很深?yuàn)W,適合搞研究的人。
  •   單片機(jī)c語(yǔ)言入門的不錯(cuò)書籍,可惜少了點(diǎn)常用芯片的使用介紹
  •   程序很豐富,貌似還不錯(cuò)
  •   好書,適合初學(xué)者,有點(diǎn)基礎(chǔ)的買了沒(méi)多大用。
  •   很好,內(nèi)容很容易懂
  •   看了一下這是一本很適合初學(xué)者的書
  •   還不錯(cuò),只是還沒(méi)成功的調(diào)試成功過(guò)
  •   從目錄來(lái)看,實(shí)踐性比較強(qiáng)。值得購(gòu)買。如果有對(duì)應(yīng)的PPT,流程圖就更好了,
  •   發(fā)貨速度灰??臁?nèi)容也不錯(cuò),值得推薦。
  •   最好每個(gè)設(shè)計(jì)都有流程圖
  •   講了單片機(jī)各方面的接口應(yīng)用,不錯(cuò)
 

250萬(wàn)本中文圖書簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7