杨立 张乐 李霞
摘 要:文章對C语言在电子科学与技术专业和自动化专业中的应用进行调查、研究,以专业能力培养为目标,在“C语言程序设计”课程中引入单片机开发案例,主要从教学内容调整、案例设计、开发环境选取、考核方法改进4个方面对“C语言程序设计”课程的教学进行改革。通过改革,能更好地发挥学生主体作用,调动学生学习的兴趣,为专业课的学习奠定好基础。
关键词:C语言;单片机;专业应用;教学改革
计算机技术不断发展、广泛应用,大学计算机基础课程的教学体系也随着时代的发展发生了重大演变,由“三个层次”到“1+X”的课程体系,再到“宽专融”的课程体系。新课程体系不仅要考虑计算机教学的基础性,更要兼顾不同专业的人才培养目标,尤其要根据专业的特点培养学生使用计算机来解决专业问题的能力[1]。
C语言是单片机、DSP和ARM等嵌入式系统的编程基础,在电子科学与技术、机械电子工程、机械设计制造及其自动化等专业中的应用非常广泛,因此在“C语言程序设计”课程教学中引入单片机开发案例,能有效加深电子科学与技术、自动化等专业的学生对C语言程序算法、基础知识的理解,对后续专业课程的学习、毕业设计乃至日后从事的工作都有着重要的作用[2]。
1 教学现状
近年来,为了提高学生的计算机应用能力和实践能力,运城学院对计算机基础课程的教学内容和教学方法进行了积极的研究和探索,“C语言程序设计”课程的教学中还存在以下主要问题。
1.1 教学进度编排脱节
运城学院专业课程与通识教育课程是分开编排的。“C语言程序设计”课程作为理工类非计算机专业学生的通识教育课程,在大二第一学期开设,而“单片机”作为专业课程,要在“C语言程序设计”课程之后的第二个学期才开设,导致学生所学习的“C语言程序设计”对单片机学习基本起不到帮助。
1.2 学生对C语言在专业中的作用缺乏认识
经调查,大部分学生学习“C语言程序设计”课程的目的是应付期末考试或通过计算机等级考试。虽然教师在教学中一再强调“C语言程序设计”课程在专业课学习中的重要性,但由于教学内容和教学案例没有和专业应用相结合,学生的学习非常被动,无法调动其学习兴趣和主动性,导致教学效果低下,对后续专业课程的学习起不到多大的帮助作用。
1.3 教学目标和内容脱离专业
目前,运城学院所有专业的“C语言程序设计”课程教学大纲都是统一的,对C语言在专业中的应用缺乏定位,没有考虑专业的不同而制定不同的教学目标。
市面上“C语言程序设计”课程的教材大多是以培养学生程序设计思维、编写简短程序解决简单问题为目的,与专业应用严重脱节,不能很好地适应电子科学与技术专业、自动化专业学生对于程序设计的知识需求。
2 教学改革主要内容
本文主要从调整教学内容、设计单片机开发案例、选取开发环境、改进考核方法4个方面进行改革,在“C语言程序设计”课程的教学中融入单片机应用案例,服务于专业课程的学习,有效调动学生学习的主动性,培养学生在专业领域方面的实践能力[3-4]。
2.1 结合专业需求,重整教学内容
根据教学大纲,结合专业需求,对“C语言程序设计”课程的教学内容有针对性地进行重新整合,将该门课程融合到电子科学与技术专业、自动化专业的单片机编程教学模块体系中。
一方面,要带着问题去学,学用结合,根据案例应用对课程内容的讲解顺序进行调整,用任务驱动教学法来设置知识点的讲解顺序。例如,将无参自定义函数的讲解提前到顺序结构部分讲解,应用printf函数和无参自定义函数设计系统主菜单界面显示程序;将字符数组的基本知识、字符串输入输出等函数提前到选择结构部分讲解,结合选择结构的if语句来设计用户身份验证程序。
另一方面,对原有的教学内容进行删减或增加,调整相关内容的学时。例如,在电子科学与技术专业、自动化专业的教学中,删减单片机编程中很少涉及的知识点,如“文件”等,增加单片机的基础知识,对单片机的基本功能、常用引脚、结构,Keil开发环境及外部软件资源,包括寄存器库函数reg51.h,C51的库函数等知识点。
重组后的课程内容主要包括程序设计基础、程序设计流程控制、函数及其应用、数组与字符串处理、指针及其应用、扩展数据类型和专业应用7个模块。其中,前面5个模块是C语言的编程基础,后面2个模块需要根据“C语言程序设计”课程的知识在电子科学与技术专业、自动化专业中应用的特点,结合专业的需求,在教学内容上进行了调整。
2.2 设计应用案例,激发学习兴趣
依据电子科学与技术专业、自动化专业需求,设计和开发与专业需求相结合的应用案例,将该课程的学习和学生的专业知识联系起来,加强专业应用性,更好地服务于专业应用领域,切实提高学生应用计算机技术解决专业问题的能力。
引用单片机开发案例的目的是让学生明确学习C语言的目的,激发学习兴趣,提高教学效果。因此设计单片机案例时,选取一些对单片机工作原理和内部结构要求比较简单的案例。例如,结合“动态数码管显示”程序,讲解循环语句和switch语句的应用;结合“蜂鸣器的设计”程序,讲解函数的定义和调用;结合“独立按键”程序,讲解循环结构程序设计的使用;结合“LED流水灯”程序,讲解位运算的使用等。教师通过讲解与专业贴近的应用案例,不仅可以激发学生学习“C语言程序设计”的兴趣,而且可以更加明确“C语言程序设计”的功能和特点,更好地为专业应用服务。
2.3 结合专业特点,选用开发环境
目前,运城学院“C语言程序设计”课程的教学中采用Visual C++开发环境,但是不同领域的专业都有其各自的特点,程序进行编译时,针对的对象互不相同,编译架构也有所不同。针对电子科学与技术专业、自动化专业的“C语言程序设计”课程,在单片机设计开发项目时,采用兼容单片机的C语言开发环境—KeilC51,针对STC系列单片机采用STC-ISP烧录软件下载编程[5]。
2.4 完善考核方案,增加應用能力考核
为了全面地对“C语言程序设计”课程进行考核,考核方案中增加单片机设计开发项目,其中,单片机设计开发项目占平时考核的25%。该项目部分在进行考核时,学生可以自己根据对C语言程序的掌握情况,从两类考核方案中做出选择,修改已有项目的功能、设计开发新的项目,最后按照所选项目的难易程度和学生最终的完成情况,给出该部分的成绩,真正将“C语言程序设计”课程的考核和学生专业应用结合起来,考核学生在专业方面的计算机应用能力[5]。
3 结语
本方法在运城学院电子科学与技术专业1502和1602班、自动化专业1506班的“C语言程序设计”课程中进行了实践。实践结果证明:在该课程中采用与专业结合的教学案例和实践项目,从专业应用角度出发设计理论教学和实验案例,大大激发了学生的学习兴趣,提高了课堂教学效果和学生的动手实践能力,基本上达到了本课程的应用技术型人才培养目标。本文的经验可以推广到其他理工类专业“C语言程序设计”课程的教学中。
[参考文献]
[1]李霞.基于专业应用的C语言程序设计课程教学研究[J].计算机时代,2019(2):99-101.
[2]伞宏力.电子信息工程专业C语言程序设计课程教学改革建议[J].教育教学论坛,2019(4):145-146.
[3]廖秋香,姚高华,邹木春,等.C语言中融入单片机部分内容的教学改革探讨[J].高教学刊,2016(8):141-142.
[4]李杰,杨文耀,曾令刚,等.电类专业《C语言程序设计》课程教学改革探索[J].电子世界,2018(21):57,59.
[5]杨立.电子科学与技术专业C语言课程教学改革[J].无线互联科技,2016(14):94-95.
Abstract:This paper investigates and studies the application of C language in electronic science and technology specialty and automation specialty. Aiming at the cultivation of professional ability, the single-chip microcomputer development case is introduced into the course of “C Language Programming”. The teaching of “C Language Programming” course is reformed from four aspects: the adjustment of teaching content, the design of case, the selection of development environment and the improvement of assessment method. The reform can give full play to the main role of students, mobilize students interest in learning, and lay a good foundation for the study of professional courses.
Key words:C language; single-chip microcomputer; professional application; teaching reform