陈双燕,汤巧治
(闽南理工学院电子与电气工程学院,福建石狮362700)
微机原理与单片机技术课程一体化教学改革研究
陈双燕,汤巧治
(闽南理工学院电子与电气工程学院,福建石狮362700)
在电子技术高速发展的今天,微机和单片机技术在各行各业得到了广泛应用。结合教学实践经验,针对目前微机原理与单片机技术这两门课程在教学中存在的问题,提出了将两门课程进行一体化整合的教学改革方案。在理解微机原理的基础上,引入Keil和Proteus平台深入进行单片机C语言的教学,以任务为主导,将理论与实践紧密联系,以提高教学质量,以及应用型本科学生的动手能力和创新能力。
微机原理;单片机技术;人才培养;课程教学
目前,微机原理与单片机技术这两门课程基本上是国内工科大学电类专业的必修课以及专业基础课[1]。微机和单片机的技术在电子技术高速发展的今天,在各行各业得到了广泛的应用,如仪器仪表、数据采集与处理、家用电器、工业控制等领域。微机原理及单片机技术课程主要培养学生的逻辑思维、编程思想以及模块化设计能力[2],在动手实践中,对开拓学生的创新意识、提高学生分析和解决问题的能力以及工程实践能力有着重要的作用。
目前,微机原理一般作为单片机技术课程的先导课程[3],很多大学都是在开设微机原理课程后的下学期开设单片机课程。
1.1微机原理与单片机教学的特点
微机原理与单片机技术这两门课程既有相似之处,又有不同的地方。
(1)微机和单片机这两门课程的概念很多,既抽象又复杂,专用名词很多[4],比如汇编语言的操作指令、各个寄存器的名称等。对于学生来说,不容易记住,觉得入门很难。
(2)微机原理这门课的逻辑性很强,前后关联比较多。如果学生在学习微机原理这门课的开始,没有掌握好微处理器的编程机构与存储器组织,那么后续学习指令系统和寻址方式就会比较吃力。而单片机这门课程也是这样,如果开头的基础知识没有掌握好,学生将会失去学习的兴趣。
(3)微机和单片机的编程语言都有汇编语言,指令很多,比较复杂,也有很多正确使用指令需要注意的问题。
1.2微机和单片机教学中存在的问题
在微机原理和单片机技术这两门课程的教学过程中存在以下问题。
(1)微机原理课程所研究的是8086、8088等比较陈旧的微处理器型号,而单片机课程所研究的是经典的51单片机。微机原理这门课程可以帮助学生理解最基础的微型计算机各个模块的概念,微型计算机的工作原理以及接口电路的连接原理。但是微机原理这门课程应用很少,在日常生活中,几乎不会使用8086去做设计,而相对来说,单片机在日常生活中应用广泛。
(2)教学手段比较单一。由于实验设备、硬件条件的限制,微机和单片机这两门课程主要是在课堂进行理论教学。由于寄存器、总线、寻址方式、汇编语言指令等概念比较抽象,因此,比较难被学生消化和吸收。而实验课的内容通常是验证理论的结果,很少能引发学生对理论本身更深层的思考。
(3)教学内容重复。微机和单片机这两门课程,在接口技术中,有一些可编程接口芯片是重复介绍的,比如可编程并行接口芯片8255A,可编程计数器/定时器8253,另外,关于中断系统、串行通信、模数转换、数模转换等模块也是两门课程都有涉及的。
(4)编程语言重复学习。微机和单片机技术在应用编程时所使用的汇编语言有一定的相似之处,但也有一些不同的地方,容易发生混淆,没有必要要求学生同时掌握这两种汇编语言。
(5)汇编语言与后续课程联系欠缺。只学习微机或者单片机汇编语言,对学生的后续课程嵌入式系统、DSP处理器、C++等课程没有打基础的作用,如果学习了单片机C语言,那么后续这些课程会学习得更好。
笔者在福建省闽南理工学院教过两轮的单片机技术,也教过两轮的微机原理,发现对于学生来说,单片机比微机有意思,因为单片机有更多的应用,学生学习单片机的热情也比较高。因此,笔者建议将微机和单片机两门课程整合在一起,课程结构如图1所示。
图1 微机原理和单片机技术课程一体化结构
2.1以微机原理为基础
微机原理这部分的内容主要讲述微型计算机的基本结构以及基本工作原理,学生通过对这门课程的学习,可以掌握微机的基本理论,为后续的单片机课程打下比较扎实的理论基础。但是,涉及到微机原理的指令寻址方式以及汇编语言指令系统则不做系统介绍。另外,与微机原理相关的接口技术也尽可能简单介绍。
2.2以单片机的原理及接口技术为核心
在学生理解微型计算机基本工作原理的基础上,深入讲解单片机的CPU的功能单元、时钟与时序以及存储器组织和并行口。在这个基础上,简单介绍单片机的汇编语言指令系统,接着延伸到单片机的中断系统、定时/计数器,最后介绍单片机与外围芯片的接口,包括串行通信,存储器等片外资源的扩展,模数、数模接口扩展等。
2.3以单片机C语言教学为主
单片机应用系统的程序设计,不仅可用汇编语言完成,也可采用C语言来完成[5],还可以用汇编语言和C语言进行联合编译。汇编语言对单片机的内部资源的操作直接,代码简洁且紧凑。但是,当系统的规模比较大时,汇编语言就显得繁琐、可读性差,很难进行调试。由于C语言具有良好的可读性、可移植性和基本的硬件操作能力,所以,设计人员一般会采用C语言进行比较大型的系统程序设计。
在笔者讲授这两门课程的时候,发现学生对于汇编语言接受得比较差,比如讲到矩阵键盘的程序设计时,要花很大的精力和时间让学生理解汇编语言程序。大部分学生对C语言更感兴趣,因为C语言更容易懂,指令也更好记,更直观。而且,如果只学习汇编语言的话,那么后续的嵌入式系统、DSP、VC++等课程的学习就会有比较大的困难。单片机C语言会是一个很好的过渡。
再者,大部分电类专业学生的毕业设计会和单片机有关,单靠学生在毕业设计的那几个月自学单片机C语言,可能无法保证毕业设计的质量。若是在课堂教学上,学习了单片机C语言,就能够提高学生毕业设计的积极性和质量。
2.4以Keil和Proteus为实践平台
Proteus软件是一款嵌入式系统仿真与开发平台,来自英国Labcenter公司,是一种可视化的软、硬件系统协同仿真软件,做到了一体化和互动效果,是目前电子设计爱好者广泛使用的电子线路设计平台[6]。Proteus软件支持许多通用的微控制器,如PIC、AVR、HC11以及8086、8051等;包含强大的调试工具,可对寄存器、存储器实时监测;可对KeilμVision2、IAR C-SPY等开发工具的源程序进行调试,可与Keil实现联调。
Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。
笔者试过在单片机课程教学的第一次课演示了Proteus软件的仿真,将几个简单的系统演示给学生看,如简易电子琴、双步进电机、电子时钟等。笔者发现,可以激发学生的学习兴趣,也为后续的课堂教学起到一定的促进作用。在与教授同一门课程的教师们交流单片机教学心得的过程中,笔者发现,每堂课都给学生演示一些与这次课教学内容相关的仿真,效果比较好。
在学生的实验课上引进Keil软件进行编程,并且通过Proteus软件进行硬件设计,最终实现软硬件调试,这样比单纯地验证实验程序,收效更好。另外,在教学过程中,教师可以布置仿真及程序设计的任务给学生,让他们课后去完成,交电子版的作业,这样可以培养学生的自学能力,也可以激发他们的学习热情,熟练地掌握这两款学习单片机的重要软件,也为后续课程做铺垫。
2.5以任务为核心进行教学
将单片机的课程教学分为几个任务,按照任务的难易程度,由简单到复杂循序渐进。比如最初是比较简单的彩灯循环亮系统,接着到简易电子琴系统,再到比较复杂的电子万年历系统。将单片机的相关的教学内容融合在这几个系统设计中,及时应用课堂上学到的理论知识,在老师的指导下进行这几个系统的设计,可以有效地提高教学水平,也提高学生的实践能力和动手能力。
电子信息技术以及计算机技术的飞速变革使得电类专业的人才培养及教学过程落入一种随时待改且需长期探索的严峻处境。微机原理和单片机技术的课程教学是相辅相成的,本文在深入学习和思考这两门课程教学过程的特点和不足之处的基础上,提出将两门课程整合在一起进行教学,并且以微机原理为基础,深入学习单片机,在Proteus和Keil平台上,以任务为核心进行单片机C语言的教学改革方案,为应用型本科高校电类专业的人才培养和课程教学提供了有益的思路和方法。
[1]任斌.微机原理与单片机技术课程建设与改革实践[J].新课程:教育学术,2012,(4):42-43.
[2]武英,李钢生,李秀娟.单片机课程体系教学改革初探[J].中国电力教育,2010,(4):74-75.
[3]蔡述庭,刘银萍,谢云,等.微机原理及单片机技术课程教学改革研究[J].实验科学与技术,2011,9(5):70-72.
[4]周玉庭,陈静,郝培华.微机原理与接口技术课程的改革与实践[J].重庆工学院学报,2006,20(5):191-193.
[5]李全利.单片机原理及接口技术[M].第2版.北京:高等教育出版社,2009:259-260.
[6]周润景,张丽娜,丁莉.基于PROTEUS的电路及单片机设计与仿真[M].第2版.北京:北京航空航天大学出版社,2010:1-5.
Research of Integrated Teaching Reform of Princip le ofMicro-controller and MCU
CHEN Shuang-yan,TANG Qiao-zhi
(School of Electrical and Electronic Engineering,Minnan University of Science and Technology,Shishi,Fujian 362700,China)
Nowadays,with the rapid development of electronic technology,micro-controller and MCU was widely used in various industries.In order to solve the problems in the teaching ofmicro-controller principle and MCU,the teaching reform plan of the integration of the two courses was proposed which based on the teaching practice experience.On the basis of understanding the principle of micro-controller,the C language of MCU was introduced thoroughly on the platform of Keil and Proteus software.The teaching reform was task oriented and closely linked to the theory and practice,so as to improve the quality of teaching,aswell as hands-on skills and innovation capacity of applied undergraduate students.
micro-controller principle;MCU;training program;professional teaching
G 642
A
1672-545X(2016)06-0260-03
2016-03-04
陈双燕(1986-),女,福建福清人,讲师,硕士,从事的工作:电子信息技术领域的教学与研究。