“單片機原理及應用”是工科院校普遍開設的一門公共技術基礎課,旨在通過對MCS-51單片機的學習,使讀者掌握單片機軟硬件系統的工作原理以及單片機初級應用系統的開發技能,為以后從事高性能單片機技術應用奠定理論和實踐基礎。
作者長期從事單片機的教學與科研,曾出版過《單片機原理及應用——基于Proteus和Keil C》教材。該教材進行了兩項教學改革:一是將C51定位為單片機基本語言,以能熟練編程、靈活應用為教學目標,而匯編語言只做一般介紹,以能讀懂源程序為教學目標;二是將單片機仿真軟件Proteus和Keil的用法引入教材,通過實例仿真演示和仿真實驗練習,使單片機內容更加豐富生動,具有改善教與學的雙向效果。該教材發行后得到了同行與讀者認可,入選了“十二五”普通高等教育本科國家級規劃教材,獲全國電子信息類優秀教材一等獎,并成為單片機類暢銷教科書。
不過實踐也表明,該教材還是存在一定的局限性。為了兼顧匯編和C51編程語言,教材中兩種語言的內容都被壓縮很多。由于C51教學起點高,要求讀者具有C語言基礎,然而從許多學校反饋的信息來看,學生中缺乏C語言基礎或C語言已淡忘生疏的情況比較普遍。為保證C51教學效果,任課教師常常不得已采取了取消匯編語言、補充C語言基礎知識的做法。
鑒于C51已兼有高級語言和低級語言的特點,在教材中取消匯編語言后,對單片機初學者的影響應該不大。而全面加強C51,為缺少C語言基礎的讀者提供一個基于C51編程的單片機教材,也不失為一種合理的考慮。這就是作者編寫這本《單片機原理及應用(C51語言版)》的初衷。
作為《單片機原理及應用——基于Proteus和Keil C》的姊妹篇,本書在保持原教材結構和風格的基礎上,取消了其中的匯編語言內容,將節省的教學時間用于加強C51內容。具體做法是:將執行語句、變量、指針、數組和函數等內容作為C51基本知識集中介紹,中斷及端口擴展等與硬件原理密切相關的C51內容則分散到后續章節里介紹。緊隨C51基本知識之后,安排了LED控制、獨立開關檢測、行列式鍵盤掃描、數碼管靜態和動態顯示等單片機I/O口應用的C51編程實例,以此縮短編程語言與單片機應用的教學時間差。此外,為使讀者能掌握新版編譯軟件的使用方法,書中的C51編譯軟件版本也由先前的μVision3升級為μVision5。采用上述編寫思路形成的這本教材,希望能對讀者掌握C51內容、加深對單片機原理及應用的理解有更大的幫助,為今后的工程應用打下扎實基礎。
需要說明的是,本書的教學目標之一是解決單片機的C51編程語言問題。由于不是全面介紹C51語言的專著,因而在內容選擇上僅考慮了單片機編程所需的基本知識,有關格式輸入/輸出、文件操作、結構與共用體等不太常用的C51內容并未選入其中。
本書配套課程網站(http://www.51mcu.cn/C51/),可為讀者提供多種立體化教學資料,包括PPT講義、仿真實例課件、閱讀材料、實驗指南、教學小結、仿真視頻、習題及答案、單片機學習軟件等。網站采用電腦版和手機版雙套方案,讀者只需使用上述單一域名,系統就能區分出上網設備并自動切換到相應版本的網頁,以獲得最佳瀏覽效果。
本書由林立和張俊亮共同編寫完成,汪洋和林一樹承擔了全書的習題設計與解答工作,田堃和林澤群承擔了教材配套網站的設計開發,李楊芳負責全書仿真實例的更新與校核,作者謹向他們表示衷心的感謝。本書出版過程中得到了電子工業出版社的大力支持和幫助,特別是高等教育分社的凌毅編輯做了大量細致的工作,在此謹致以誠摯的謝意。
本教材一定還有許多不妥之處,書中漏誤在所難免,殷切地期望讀者給予批評指正,聯系郵箱cmee0@163.com。