黄交宏

摘 要: 针对传统的高职C语言和单片机课程分开教学带来的内容枯燥、知识融合度差、教学效率低的不足,探讨了以智能车为载体,运用“教、学、做”一体化方法有效融合两门课程的教学改革方案。实践表明:融合后的教学方案,激发了高职学生的C语言学习热情,教学效率高,加深了学生对单片机应用的理解,达到了良好的教学效果。

关键词: 高职教育 C语言 单片机 融合教学 智能车

引言

随着电子技术的飞速发展,采用C语言开发的单片机控制类产品占据了大量市场。单片机产品的设计、生产、调试和维修岗位需要大量高职人才。因此,C语言课程和单片机应用课程成为应用电子、电气自动化、计算机控制技术等工科专业的主干课程。这些课程的实践性要求较高,对高职学生有一定难度。因此,开展高职院校C语言和单片机课程的教学改革成为高职教学研究的热点。根据高职学生的特点和岗位需求开展教学工作,对学生更快地适应工作岗位有重要的现实意义。笔者结合多年C语言和单片机的教学经验,对高职的C语言和单片机的融合教学进行探讨。

1.传统教学的不足

1.1知识遗忘率高。

国内高职院校电子电气类专业的单片机教学大多选用汇编语言或者C语言开发单片机应用系统。以51单片机为主流的汇编语言,指令数量多,不方便记忆。因此,越来越多的高职院校转向C语言开发工具的单片机教学。根据传统的高职教学方案,C语言课程和单片机课程开设在不同学期,C语言是单片机的先修课程。为了构建相对完整的知识体系,学生在学习完C语言之后才开始学习单片机,时间相隔长达半年之久。这种做法导致知识遗忘率较高,迫使一些教师把复习C语言作为单片机课程的教学内容之一,以此强化教学效果。由于总学时有限,单片机本体的教学内容相对减少,导致学生对单片机学得不深、学得不透。

1.2内容枯燥,实践少。

在C语言的机房教学过程中,主要的输入输出设备是键盘和屏幕,以简单计算为主的教学内容相对枯燥,表现形式单一。学生很容易把C语言单纯理解为计算机专业课,与所学的电子电气专业无关。这种对C语言主要功能的认识误区,会降低学习兴趣,削弱单片机开发的语言基础。C教学实践表明:电类专业的高职学生很难深入理解指针和数组的应用,对C语言的嵌入式开发功能理解不透,导致先修课程基础不牢固。进入单片机学习阶段以后,薄弱的C语言基础将会妨碍单片机的教学效果。同时,单片机特有的寄存器C定义和特殊位指令还需要补充学习。

传统的单片机教学以理论教学为主,按照“硬件封装—寄存器功能—软件流程—外围接口”的顺序,强调和追求完整的单片机理论体系结构。由于缺乏合适的实践载体,因此大量专业术语的枯燥讲解使学生上课时昏昏沉沉,似懂非懂。过多的理论灌输使很多学生放弃了单片机课程的学习。这种“重理论、轻实践”的教学模式培养出的学生,很难快速适应今后的单片机工作岗位。

1.3理实脱节,创新少。

传统的单片机课程大多数采用实验箱进行实践教学[1],完成验证性的实验。这种实践模式跟单片机的实际产品有很大差异,教学效果不理想。不少“95后”的学生功利心强,为了早点完成实验,过度追求实验结果,忽略了单片机硬件电路装调、软件调试测试方面的能力提高。当全部课程结束的时候,很多同学对单片机产品开发、装调的全过程不了解,对单片机仿真器的仿真方法(尤其是硬件仿真)掌握不到位。这种教学过程理实脱节的现象,抑制了学生创新能力的发挥。

2.融合教学的设计

针对上述问题,我们探索把C语言和单片机的知识有效融合,推进教学改革,开展项目教学,采用“教、学、做”一体化的融合教学,强化教学效果,更好地体现高职高专的教学特色和教学理念。

教学改革方案的总体思路是:以具有吸引力的项目载体为主线,把C语言和单片机课程融合,开设“C语言与单片机”课程。在高职教学过程中,采用“教、学、做”一体化授课,提高学生动手实践能力。以够用为原则,适当精简C语言的教学内容,降低教学深度。适度增加单片机应用的自主创新环节,鼓励学生思考,提高应用创新能力。

2.1项目载体。

合适的项目载体有利于实现高职项目化教学[2],促进学生技能的培养。选择“贴近生活”、“通俗易懂”的项目载体,是提高学生学习兴趣的有效手段。在本教学方案设计中,我们选用的项目载体是:单片机智能车。智能车属于机电一体化的作品,体积小,重量轻,实施难度适合高职高专的教学水平。项目载体的主要功能是采用AT89S52单片机控制车轮伺服电机,实现智能车的运动控制。在光电传感器的配合下,单片机控制小车进行循迹运动。在超声传感器的支持下,单片机控制小车实现“避障”功能。

2.2具体方案。

“C语言与单片机”融合课程总计60学时,其中实践30学时,理实比为1:1。教学全过程以单片机智能车为核心,以学生为主体,教师起引导作用。学生通过智能车的制作与调试提高动手实践能力,通过思考和提问激发创新思维。整体教学方案可以分成六个模块,简述如下:

(1)课程导入和智能车综述

在这个教学模块中,教师首先讲授单片机的典型应用、历史沿革、主流分支和前沿技术,使学生了解课程的教学目标和对应工作岗位,浅显了解单片机产品。其次,教师演示装调好的智能车实物,学生能正确理解智能车的主要功能,提高学习兴趣。实践环节安排的内容是单片机智能车的结构件安装。在教师的指导下,学生根据产品套件说明书的要求,使用螺丝刀完成车架、车轮、电机、电沲盒等结构件的安装和调试。在装调完毕以后,教师补充讲解智能车应用场合和综述,学生对项目载体有了更加清晰的认识。

(2)控制板的硬件设计与装调

首先,学生完成智能车单片机控制电路板的安装、焊接和硬件调试。其次,教师讲解单片机最小系统(包含:单片机、时钟电路、复位电路)的电路结构和工作原理。学生在明确单片机IO接口使用方法之后,简单了解车轮伺服电机的驱动电路工作原理。通过“讲练结合”的教学方法,学生得到了单片机产品的硬件设计、安装、调试的全过程体验,掌握了电路组成和原理,提高了单片机硬件装调的实践能力。

(3)简单运动的开发调试

本教学模块主要完成智能小车C51的IO接口控制,实现伺服车轮的前进功能。教师在简要介绍51单片机系统的软硬件开发环境之后,把教学重点转入C语言。通过LED亮灯的样例程序,完成C语言的概述导入。在本模块教学中,主要涉及的C51知识点有:数据类型、运算符与表达式;C51特殊功能寄存器的C定义;51的位类型与位运算;顺序结构程序设计。在操作方面,学生须掌握KEILμVision软件开发平台的使用方法,包括代码编辑、编译、下载和仿真调试。

(4)复杂运动的开发调试

本教学模块的主要功能是:通过C51控制小车的伺服车轮,完成后退、转圈、加减速、转向等复杂运动功能。在这一阶段,学生可以通过项目载体的调试,结合51单片机的特点,完成C语言中选择结构程序、循环结构程序的学习。在此基础上,教师引导学生尝试进行程序优化,教会学生数组的使用、函数的调用技巧。

(5)人机接口模块的开发调试

在智能小车的单片机控制板上,增加数码显示和触须接口,可以完成小车运动计时和触碰避障功能。在教学过程中,通过“先做后讲”的方式提高学习兴趣能够取得更加理想的教学效果。学生通过实践环节观察单片机人机接口的电路结构,通过C51编程与调试直接体验“软件去抖动”、“LED字形码编程”等应用技巧。

(6)避障模块的开发调试

避障模块装调是智能小车项目载体的综合教学环节。在C语言应用部分,侧重指针、结构体编程和开发。在单片机方面,须掌握“中断”的概念及其应用方法、串行接口的调试与编程。避障模块采用了红外反射传感器,融合了传感器应用[3]、模拟信号调理等方面知识。因此,开发调试智能小车的避障模块,能加深学生对单片机产品总体框架的理解,培养他们的单片机综合应用能力和开发能力。教学实践表明:部分优秀学生在这一阶段能优化和创新避障算法程序,提升小车的智能化水平,学生的产品创新意识得到进一步强化。

以上六个模块的教学方案以智能小车装调为核心,包含了传统C语言课程和单片机课程的主要知识点。智能小车体积小,重量轻,易于携带,便于各种教学方法的灵活运用[4]。比如:我们把课堂教学与课外教学紧密结合,组织“城院巧匠杯智能小车”竞赛,激发学生学习热情,丰富课余生活,提高学生的单片机综合应用能力和创新能力。“C语言与单片机”融合课程采用模块计分的评价考核方式,前五个模块各占总分的15%,第六模块占25%。在考核方案中,重视学生的过程体验,把团队协作、职业素养作为评价的重要组成部分,提高学生综合职业素质。

结语

高职传统的C语言课程和单片机课程分开教学,知识遗忘率高,教学效率低,融合度差,理实不能有效结合,不利于创新型人才的培养。针对上述不足,本文探讨了以单片机智能车为项目载体的C语言与单片机融合教学设计,给出了六模块教学的具体方案。教学实践表明:采用“教、学、做”一体化融合两门课程的教学改革方案,方便运用各种教学方法,学以致用,有效激发高职学生的学习热情,有助于创新能力和职业素质的培养,达到良好的教学效果。

参考文献:

[1]冯惠秋,吕宁.《单片机基础及应用》课程实践模式探索[J].职业教育研究,2013(6):123-124.

[2]焦玉全,朱燕祥.单片机原理及应用课程项目化教学探索[J].读与写(教育教学刊),2013(7):29-30.

[3]李潇雯.智能小车设计中传感器的应用[J].太原大学教育学院学报,2015(2):96-99.

[4]余永华.单片机课程理实一体化教学模式改革[J].读与写(上,下旬),2015(3):314.