“单片机原理及应用”是工科院校普遍开设的一门公共技术基础课,旨在通过对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。