论文部分内容阅读
摘 要:本文针对当前单片机教学过程中现状,结合教学实践,提出了单片机理论教学和实验教学的方案和措施,以更好地培养学生的硬件设计能力,适应创新型人才教育体系的需要。
关键词:单片机 理论教学 实验教学 良性互动 人才培养
从上个世纪70年代第一只单片机面世,短短二三十年的时间,单片机技术已成为自动控制技术的一个重要分支,广泛应用到工业控制、仪器仪表、消费产品、汽车、办公自动化、通信等领域。因此,是否具有单片机开发能力就成为许多公司招聘工科专业学生的衡量标准,同时也成为许多学生寻找理想工作的必备技能之一。笔者根据多年的学习、教学及科研实践和当前大学生的就业状况,在此浅谈自己的几点拙见。
单片机课程的教学是一门理论性、实践性都很强的专业基础课程。目前,在我国的各大工科院校都开设有《单片机原理及应用》课程,且大多采用传统的先基础后应用的教学模式,即:单片机硬件结构→汇编指令系统→系统扩展→接口技术→应用系统设计。实验教学一般在“汇编指令系统”讲完之后才开始进行,理论学习和实验进行的时间不对应,且多为教师规定几个实验做完即可,很少进行开放性和设计性的实验,这是最粗糙的教学过程,这种教学过程直接导致学生对单片机的学习提不起兴趣、知识脱节,笔者经过多年的教学经验总结出:理论教学和实验教学绝不能单纯地割裂开,并且二者应相互渗透,相辅相成。只有这样才能达到好的教学效果,以更好地培
养学生的硬件设计能力,适应创新型人才教育体系的需要。
一、激发学生学习的兴趣和求知欲
单片机课程课时少,任务重,学生的主动学习就显得尤为重要。兴趣是最好的老师,在课程学习的开始,不要进行理论开场白,而要给学生展示一些单片机的产品如电脑时钟、数字温度计、电子密码锁、公共汽车报站系统、电子饭卡等,带他们到系电子设计室,让他们看到上届学生的实习作品,在大学生电子设计竞赛中获奖的作品,并且从中选取一简单产品引申到理论教学中涉及的主要内容,从而激发他们的学习兴趣,同时在头脑中形成理论知识大框。
二、改进理论教学方法
1.引用先进的教学仪器和课件,加强学生理解。
教学中使用电脑,用幻灯显示教学内容,将PPT和黑板板述相结合。演示的信息量比较多,PPT省去了画电路图和表格的时间,还可以动态形象直观地演示电路中信号的变化,能加强学生的理解。
2.增删教学内容和改善教学方法。
详细讲解常用指令的时序,结合带外部程序存储器和数据存储器的51单片机电路,分析时序中各种信号如PSEN、WR、RD、PC、AB总线、DB总线的变化,以及不同时刻总线上的数值,让学生理解指令产生信号,信号驱动单片机和外设运行。
教学中应注意原理的讲述,多用逻辑图来描述外设的工作原理,多一些理解,少一些死记硬背。汇编语言结合电路对于理解单片机的原理很重要,所以对于常用的汇编语句要做讲解。但是由于C语言在单片机中的广泛使用,故没有必要让学生去用汇编读写大程序。对于常用的算法,全部采用C语言来描述。对于复杂的算法,则不在单片机课中讲述,留在C语言和数据结构课程中讲述,这从很大程度上降低了单片机的学习难度,减少了学习量。
3.用C语言编写程序,用Proteus软件仿真。
相对于汇编语言,C语言存在如下优点:①只要掌握单片机的存贮器结构即可编程;②寄存器分配、不同存贮器的寻址及数据类型等细节可由编译器管理;③C语言程序有规范的结构;④可使程序结构化、可改善程序的可读性;⑤关键字及运算函数可用近似人的思维过程方式使用编程及程序调试时间显著缩短,从而提高效率;⑥提供的库函数包含许多标准子程序,具有较强的数据处理能力,因为采用模块化编程技术,所以C语言的移植性好。在这里我们选用了KeilC5公司的C51编译器。这个编译器具有使用方便、编译效率高的特点。使用它学生既学会了单片机原理,又学到了一种实用的技能。
在讲课中引入了软件模拟的方法,在模拟软件中画出电路图,在编译软件中写出C程序,就可以动态调试程序的运行,让学生看到各寄存器和变量的值的变化,以及电路中由程序驱动的声光等的变化,既增强了学生对原理的理解,又增加了学习的兴趣。
这里选用的模拟软件是Proteus,能方便地画出各种CPU、存储器和外设电路,能容易地和KeilC51软件联合调试程序,看到程序单步和多步执行后单片机寄存器和外部电路的变化。
三、加强实践教学
1.进行常规实验时,注意基础理论的巩固。
例如数据排序实验,学生根据实验指导书给出的程序键入PC机中,经过编译后,通过串口下载到仿真器中运行此程序,只要输入和操作无误,则必定会得到正确的结果,即实现8031内部RAM单元中N个数据的排序。做这种实验时,学生往往只注重于实验结果的正确与否,而不注重程序是怎样编出来的,也无需关心什么情况下要用哪条指令,每条指令的功能是什么等问题。所以这类实验简单,做完后应进行总结所涉及的理论知识并注意引申下一阶段理论学习及所配合的实验。进行实验之前还要布置有关知识的预习及有关理论知识的复习。
2.增加设计性、综合性实验。
设计性、综合性实验的进行可以使学生更好地掌握实验原理、操作方法、步骤,全面了解仪器设备的性能并正确地使用仪器,课程内实验项目的设置;可以根据现有实验条件,适当增加综合性、设计性实验的比例,如将单片机端口应用、扩展并行接口8155等实验项目设置成设计性、综合性实验。
3.加强集中实践教学环节。
单片机集中实践教学环节通常有2—3周的时间,学生可以在一个时间集中的环境下进行单片机系统的综合设计,设计内容除了与单片机直接相关的系统扩展和接口技术以外,还应根据单片机人才的市场需求和就业形势,相应地增加新知识、新技术的应用,如I2C1总线、SPI总线、点阵LED、点阵液晶、CAN总线系统智能节点等技术的应用。每个设计项目都要求学生用PROTEL画出电路原理图,并使用C语言进行软件编程,撰写设计说明书,且在设计说明书内要求附有软件流程图、程序清单和电路原理图等资料,使学生了解单片机工程项目的设计流程和方法,提高学生工程实践能力。
以上有关单片机理论教学和实验课程教学的经验在实践中应该遵从循序渐进的思路,多和学生进行实质性的沟通,多和工业实践相联系,形成理论和实践的良性互动,实现教与学的最佳统一。
参考文献:
[1]谭浩强.C程序设计[M].清华大学出版社.
[2]周航慈编著.单片机应用程序设计技术[M].北京航空航天出版社.
[3]马忠梅,刘滨.单片机C语言Windows环境编程宝典[M].北京航空航天大学出版社,2003.
[4]Keil.公司.KeilC15.帮助文档.
关键词:单片机 理论教学 实验教学 良性互动 人才培养
从上个世纪70年代第一只单片机面世,短短二三十年的时间,单片机技术已成为自动控制技术的一个重要分支,广泛应用到工业控制、仪器仪表、消费产品、汽车、办公自动化、通信等领域。因此,是否具有单片机开发能力就成为许多公司招聘工科专业学生的衡量标准,同时也成为许多学生寻找理想工作的必备技能之一。笔者根据多年的学习、教学及科研实践和当前大学生的就业状况,在此浅谈自己的几点拙见。
单片机课程的教学是一门理论性、实践性都很强的专业基础课程。目前,在我国的各大工科院校都开设有《单片机原理及应用》课程,且大多采用传统的先基础后应用的教学模式,即:单片机硬件结构→汇编指令系统→系统扩展→接口技术→应用系统设计。实验教学一般在“汇编指令系统”讲完之后才开始进行,理论学习和实验进行的时间不对应,且多为教师规定几个实验做完即可,很少进行开放性和设计性的实验,这是最粗糙的教学过程,这种教学过程直接导致学生对单片机的学习提不起兴趣、知识脱节,笔者经过多年的教学经验总结出:理论教学和实验教学绝不能单纯地割裂开,并且二者应相互渗透,相辅相成。只有这样才能达到好的教学效果,以更好地培
养学生的硬件设计能力,适应创新型人才教育体系的需要。
一、激发学生学习的兴趣和求知欲
单片机课程课时少,任务重,学生的主动学习就显得尤为重要。兴趣是最好的老师,在课程学习的开始,不要进行理论开场白,而要给学生展示一些单片机的产品如电脑时钟、数字温度计、电子密码锁、公共汽车报站系统、电子饭卡等,带他们到系电子设计室,让他们看到上届学生的实习作品,在大学生电子设计竞赛中获奖的作品,并且从中选取一简单产品引申到理论教学中涉及的主要内容,从而激发他们的学习兴趣,同时在头脑中形成理论知识大框。
二、改进理论教学方法
1.引用先进的教学仪器和课件,加强学生理解。
教学中使用电脑,用幻灯显示教学内容,将PPT和黑板板述相结合。演示的信息量比较多,PPT省去了画电路图和表格的时间,还可以动态形象直观地演示电路中信号的变化,能加强学生的理解。
2.增删教学内容和改善教学方法。
详细讲解常用指令的时序,结合带外部程序存储器和数据存储器的51单片机电路,分析时序中各种信号如PSEN、WR、RD、PC、AB总线、DB总线的变化,以及不同时刻总线上的数值,让学生理解指令产生信号,信号驱动单片机和外设运行。
教学中应注意原理的讲述,多用逻辑图来描述外设的工作原理,多一些理解,少一些死记硬背。汇编语言结合电路对于理解单片机的原理很重要,所以对于常用的汇编语句要做讲解。但是由于C语言在单片机中的广泛使用,故没有必要让学生去用汇编读写大程序。对于常用的算法,全部采用C语言来描述。对于复杂的算法,则不在单片机课中讲述,留在C语言和数据结构课程中讲述,这从很大程度上降低了单片机的学习难度,减少了学习量。
3.用C语言编写程序,用Proteus软件仿真。
相对于汇编语言,C语言存在如下优点:①只要掌握单片机的存贮器结构即可编程;②寄存器分配、不同存贮器的寻址及数据类型等细节可由编译器管理;③C语言程序有规范的结构;④可使程序结构化、可改善程序的可读性;⑤关键字及运算函数可用近似人的思维过程方式使用编程及程序调试时间显著缩短,从而提高效率;⑥提供的库函数包含许多标准子程序,具有较强的数据处理能力,因为采用模块化编程技术,所以C语言的移植性好。在这里我们选用了KeilC5公司的C51编译器。这个编译器具有使用方便、编译效率高的特点。使用它学生既学会了单片机原理,又学到了一种实用的技能。
在讲课中引入了软件模拟的方法,在模拟软件中画出电路图,在编译软件中写出C程序,就可以动态调试程序的运行,让学生看到各寄存器和变量的值的变化,以及电路中由程序驱动的声光等的变化,既增强了学生对原理的理解,又增加了学习的兴趣。
这里选用的模拟软件是Proteus,能方便地画出各种CPU、存储器和外设电路,能容易地和KeilC51软件联合调试程序,看到程序单步和多步执行后单片机寄存器和外部电路的变化。
三、加强实践教学
1.进行常规实验时,注意基础理论的巩固。
例如数据排序实验,学生根据实验指导书给出的程序键入PC机中,经过编译后,通过串口下载到仿真器中运行此程序,只要输入和操作无误,则必定会得到正确的结果,即实现8031内部RAM单元中N个数据的排序。做这种实验时,学生往往只注重于实验结果的正确与否,而不注重程序是怎样编出来的,也无需关心什么情况下要用哪条指令,每条指令的功能是什么等问题。所以这类实验简单,做完后应进行总结所涉及的理论知识并注意引申下一阶段理论学习及所配合的实验。进行实验之前还要布置有关知识的预习及有关理论知识的复习。
2.增加设计性、综合性实验。
设计性、综合性实验的进行可以使学生更好地掌握实验原理、操作方法、步骤,全面了解仪器设备的性能并正确地使用仪器,课程内实验项目的设置;可以根据现有实验条件,适当增加综合性、设计性实验的比例,如将单片机端口应用、扩展并行接口8155等实验项目设置成设计性、综合性实验。
3.加强集中实践教学环节。
单片机集中实践教学环节通常有2—3周的时间,学生可以在一个时间集中的环境下进行单片机系统的综合设计,设计内容除了与单片机直接相关的系统扩展和接口技术以外,还应根据单片机人才的市场需求和就业形势,相应地增加新知识、新技术的应用,如I2C1总线、SPI总线、点阵LED、点阵液晶、CAN总线系统智能节点等技术的应用。每个设计项目都要求学生用PROTEL画出电路原理图,并使用C语言进行软件编程,撰写设计说明书,且在设计说明书内要求附有软件流程图、程序清单和电路原理图等资料,使学生了解单片机工程项目的设计流程和方法,提高学生工程实践能力。
以上有关单片机理论教学和实验课程教学的经验在实践中应该遵从循序渐进的思路,多和学生进行实质性的沟通,多和工业实践相联系,形成理论和实践的良性互动,实现教与学的最佳统一。
参考文献:
[1]谭浩强.C程序设计[M].清华大学出版社.
[2]周航慈编著.单片机应用程序设计技术[M].北京航空航天出版社.
[3]马忠梅,刘滨.单片机C语言Windows环境编程宝典[M].北京航空航天大学出版社,2003.
[4]Keil.公司.KeilC15.帮助文档.