单片机原理与接口技术课程教学模式改革探索
发表时间:2018年8月2日 浏览:351次
作者:丁保华 张有忠
摘 要:单独开设单片机原理与接口技术的理论课程和实验课程, 教学内容及其系统性大大增加了。理论教学内容模块化, 采用贯穿的实例将知识点构成有机的整体以及软件虚拟仿真教学, 使课堂教学前后连贯、生动形象。独立实验克服了实验受课堂教学的束缚, 时间灵活, 选修实验有效增加, 激发学生实验的主动性, 有利于学生的专业培养和个性发挥, 切实提高教学效果。
关键词:课程教学; 教学改革; 独立实验; 单片机;
随着计算机应用技术的迅速普及, 单片机原理与接口技术课程是作为机电等相关专业的主干课程开设的, 是理论与实践结合非常紧密的课程。[1]主要介绍一种典型类型单片机的基本硬件组成, 指令系统和程序结构, 单片机常用外围接口芯片的接口电路及编程, 单片机的实际系统应用等。[2]通过该课程的学习, 学生具有开发单片机应用系统的初步能力, 包括软件、硬件及系统等, 为后续的专业课程设计和毕业设计打下良好的基础。为了提高单片机的教学效果, 人们也不断进行教学方法、内容、手段的改革与探索实践, 取得了一定的成绩。[3][4]不过学生仍感觉到课程内容抽象, 建立单片机系统的概念困难。当然这与学生自身的相关知识储备有关, 但从单片机教学的角度出发仍然有许多方面值得教师研究和探索, 切实有效提高课程的教学质量。
一、单独开设单片机理论课程和实验课程
单片机课程的传统教学模式是把理论教学和实验教学作为一门课程来进行的, 也就是常说的理论和实验混编课程, 实验形式叫课内实验, 这是大多数课程采用的教学模式。[5][6]这种模式对实验内容多、实践要求很高的单片机课程教学明显不足。
首先, 是实验学时数明显不足且难以协调。原来的单片机课程总学时为48, 其中包括安排了10个学时的实验。这对于课程实验学时的占比来说已经是比较高的了, 但对于单片机这类课程要进行较全面系统的实践训练是远不够的, 只能安排少学时的验证性实验, 同时也给出了参考程序和实验步骤。这样虽然加快了实验周期, 但学生独立思考能力、动手实践能力和创新能力得不到有效的锻炼。同样随着单片机技术的发展, 串行通讯及低功耗串行器件在微控制器中的广泛应用, 要求掌握的内容也在增加和变化, 38学时的课堂理论学时也是不够的。在课程总学时确定的情况下, 调整实验与理论之间的学时分配也很困难。
其次, 理论教学限定了实验时间的灵活性和内容的扩展性。对于混编课程, 课堂理论教学和实验教学最终给出一个总成绩, 理论和实验各占一部分, 两者在时间上就存在制约。一般是课堂教学结束, 实验也基本上要完成, 否则将会影响考试的时间安排和成绩的评定。这样就造成实验周期较短且相对集中, 在这段时间实验室的负荷非常高, 实验的时间安排非常紧密, 灵活性受到很大的限制, 甚至影响正常的实验开展。
为了加强单片机课程的教学, 特别是加强实验教学, 将原单片机原理及应用混编课程改为单片机原理与接口技术理论课 (学时48) 和实验课 (学时24) , 两门在形式上完全独立的课程。这不仅仅是学时数和内容的增加, 而且使得课堂理论教学和实验教学能够根据各自的不同特点和差异, 改革完善各自的教学模式及教学方法, 有助于实验教学改革, 改变实验长期作为课堂理论教学辅助地位的状况, 实现理论教学和实践教学两条腿走路。
二、单片机课堂理论教学模式及方法探索
对初学者来讲单片机的内容抽象, 同时需要一定的电子技术知识支撑, 对知识综合性、实践性要求都比较高, 学生总感觉内容零散难以构成系统应用。因此在大力加强实践教学的同时, 对单片机课堂理论教学的模式及方法等许多方面同样需要改革和探索。
(一) 模块及层次化的教学内容组合
单片机常规教学一般都是按照教材的先后顺序讲授单片机的硬件结构、指令系统, 汇编语言程序设计方法和技巧、定时计数器及中断系统、串行口通讯, 单片机的扩展、人机和机电接口应用等, 知识点较多, 前后知识有机联系弱, 难以构成完整系统性的概念。为此, 从系统角度出发将单片机内容划分为硬件结构、软件程序、外部扩展、应用实例等四大模块, 每个内容模块中又划分有不同的知识层次子模块。[7]如硬件结构模块划分为单片机核心基础层 (包括寄存器、存储器结构、端口等) 和片内功能层子模块 (包括中断、定时器、串口等) ;软件程序模块包括指令基础子模块和基础程序设计子模块等。在课程讲授的开始就让学生对单片机三大模块的关系有初步的感受, 并在后期交叉讲授过程中不断强化认识, 建立知识与系统的概念。
如何建立软硬件之间的联系对理解单片机是非常重要的, 教学中要加强软硬件模块之间联系的讲解。指令是编程的基础, 但一条条指令的讲解又是非常枯燥的事情, 因此要求学生强化课下的指令记忆, 课堂上着重讲解典型指令、指令对比以及和硬件存储关系等。如传送指令MOV、MOVX和MOVC的区别和对应存储空间的位置;堆栈指令PUSH、POP对指针的影响及调整初始指针的原因;比较指令CJNE和减法指令SUB实现同样功能的编程等;对于功能部件及扩展器件则加强软件与硬件结合的讲解, 如何实现接口的编程。这样使学生逐步建立单片机软硬件系统结合的方法。
(二) 适当引入虚拟仿真教学
单片机的广泛应用使得其软件的虚拟仿真技术也得到了迅猛的发展。Keil软件是单片机开发软件, 它支持包括51系列等流行单片机的宏汇编及C语言的程序编译、连接及仿真调试等;Proteus软件电路设计和分析软件, 可以进行硬件电路原理图设计、PCB电路板布线及电路仿真, 还可以结合单片机的软件实现软硬件的联合仿真。因此通过Keil软件环境中编写单片机程序, Proteus软件环境中设计相应的单片机硬件电路, 然后通过两个软件的关联就可以模拟将程序加载到单片机中进行仿真了。[8]
在单片机的课堂教学中适当引入Keil和Proteus软件, 用它们编写软件、设计电路和虚拟仿真, 不仅可以培养学生严谨仔细地编写指令和设计硬件电路的态度, 还可以使枯燥的单片机学习变得直观、形象和生动, 激发学生学习的兴趣和主动性, 提高教学的效果。当然, 软件仿真和单片机的实际系统还是有差异的, 只是验证其逻辑关系。但在单片机应用系统的开发过程中先在PC电脑上进行软硬件结合的虚拟仿真, 不仅可以缩短开发时间, 节约硬件成本, 而且使开发的初期过程变得简单、直观, 对于既要学习单片机并不需要进行实物开发的广大学生来说更是很好的学习软件。
(三) 一个应用实例贯穿教学始终
学生对单片机比较困惑的是相关的内容学完后认识还是比较零散, 不知道该如何应用。老师在讲授过程中, 不同的章节也会举一些局部的应用实例, 各个实例仅仅是局部详细的, 但缺乏整体性, 不同章节例题很少有关联性, 老师感觉基本应用都讲解了, 但学生仍难以有效建立整体系统应用的观念。
为了强化学生单片机系统应用的理解, 在教学的开始就提出一个具体的应用实例, 并贯穿整个课堂教学活动中。例如温度对学生来说是一个很熟悉的, 因此就提出单片机温度测量系统设计的实例, 可以是教室的、宿舍的温度测量, 给出实时温度显示, 并模拟给出控制信号 (模拟空调电机控制) 、超限报警等。教师还可将相关的内容分散到各个章节中介绍, 最后构成一个完整的系统。在讲解软件程序设计时, 介绍如何根据已知数 (模拟采集的温度数据) 通过查找比较编程来确定温度;在讲解中断及定时器时, 介绍如何用定时中断的方法进行定时温度信号的采样;在讲解键盘及显示时, 如何设定温度值, 显示键盘功能及数据, 然后再返回显示实时温度等接口编程;在讲解A/D时, 以AD590集成温度传感器讲解电压与温度的关系 (输出电压可以用电位器模拟) , A/D转换后的数字量对应关系;在讲解D/A时, 讲如何输出电压或电流信号, 以模拟控制调节空调电机。然后进行问题实例总结, 给出完整的软件编程和硬件电路, 并进行Keil和Proteus软件的仿真。这样学生比较容易将单片机的知识点串成一个有机的系统, 有效掌握设计的基本方法。
三、单片机独立实验教学模式改革
独立开设单片机实验课程的学时数大大增加了, 实验内容的系统性得到了充分的保证, 可以使学生对单片机的存储器结构、汇编程序编写设计、定时/计数器和中断应用、并行/串行通讯方式、A/D和D/A转换、键盘和显示、系统实际应用等方面得到较为完整系统的训练。与原来的单片机课内实验的模式相比优势是显见的, 更能反映学生实验的本质特点。独立课程的实验使得实验在时间安排上更宽泛和灵活了, 不再受课堂教学的严格束缚, 实验时间可以安排在整个学期内。学生选做实验项目的自由度大大提高了, 前期有充足的时间对实验内容进行预习和软件仿真, 有助于学生自主实验的开展, 实行开放式的实验教学[9], 也促进实验教学管理模式及方法的改革。
单片机的实验教学中除开发系统的使用及基本编程操作实验进行集中指导之外, 大多数实验是学生以实验小组为单位自由与实验室联系, 自主地决定实验时间。不再按课堂教学时间, 而是按上、下午及晚上三个单元安排实验, 这样使学生有充足的时间进行实验操作、分析, 同时也考虑到学生快慢层次上的差异。
在单片机实验独立开设课程之前, 实验的学时少且实验的时间跨度有限, 实验内容一般都是由指导教师安排的, 学生主动选择实验内容的机会很少。而独立开设实验课程后, 大大增加了选修实验的内容, 实验安排上指定实验和选做实验的学时数基本上各占50%左右。这样即能够保障学生对单片机主要内容实践的基本要求, 又能让学生可以根据自己的兴趣选择不同的实验内容, 培养自主实验的意识和主动探究知识的动力。
四、结束语
单片机的理论教学和实验教学分别独立开课, 使得理论和实验的教学内容得到了加强。特别是独立实验课的开设, 除了实验内容更加系统化, 时间更加灵活, 提高学生做实验的主动性和兴趣, 还有效提升了实验教学的地位, 有利于加强学生对实验教学的重视。教学课堂采用软件仿真和系统的实例, 使得枯燥呆板的指令、电路变得生动形象, 有效提高学生单片机知识的综合和实际应用能力。单片机课程的教学改革虽然也取得了较好的效果, 但对于这类实践性要求很强的课程, 需要进一步加强实验和实验室教学, 改变传统的课堂与实验的认识, 深化高等教育的改革。
参考文献
[1]胡晶晶, 李娟.虚实结合的单片机实践教学探讨[J].赤峰学院学报 (自然科学版) , 2013 (4) :206-208.
[2]李朝青, 刘艳玲.单片机原理及接口技术 (第4版) [M].北京:北京航空航天大学出版社, 2013.
[3]姜宁, 樊延虎.单片机教学改革与实践[J].延安大学学报 (自然科学版) , 2011 (1) :45-46.
[4]张江印.高校单片机教学模式的研究[J].实验室研究与探索, 2011 (9) :103-106.
[5]陈向奎, 李元臣.单片机教学的思考与探索[J].洛阳师范学院学报, 2012 (5) :84-86.
[6]汪万维.单片机课程教学改革探讨[J].武汉大学学报 (理学版) , 2012 (S2) :95-97.
[7]朱敏杰, 罗珩, 余亚东.改革单片机教学培养应用型人才[J].实验室研究与探索, 2012 (2) :144-147.
[8]马华玲.Proteus+keil在单片机教学中的应用[J].高等函授学报 (自然科学版) , 2012 (4) :26-27.
[9]王晓岗, 张星, 李静, 等.开放实验教学管理研究[J].实验技术与管理, 2012 (4) :155-157.