基于单片机的“C语言”教学方法探讨
2014-09-11熊中刚,罗素莲
熊中刚,罗素莲
摘要:《C语言程序设计》课程是电子类专业的一门基础必修课,也是电子和电气类学生应该学习的第一门计算机语言。该课程的学习主要是为结合单片机的应用开发服务的。如何让一名《C语言程序设计》的初学者能够较好地理解并掌握设计中的基本思想和精髓,并且在掌握程序设计方法的同时结合单片机进行硬件和软件设计的应用开发是讲授这门课的重点所在,故本文结合单片机,以单片机系统为开发平台,探讨了《C语言程序设计》的教学方法,为学生以后能基于单片机进行硬件和软件的学习开发打下坚实的基础。
关键词:C语言程序设计;教学方法;单片机
中图分类号:G642.4 文献标志码:A 文章编号:1674-9324(2014)10-0066-02
一、引言
随着微电子技术的不断发展和广泛应用,计算机编程语言也越来越丰富,因而学生也被要求具有应对各种语言的学习应用能力,在掌握好C语言后,对于其它语言的学习则游刃有余。基于单片机进行应用系统开发,C语言作为一种高级的编程语言,无论是现在进行嵌入式系统开发的相关企业,还是当前的全国电子设计大赛等学生竞赛中,都越来越受到大家的关注,并将其作为一个主要语言开发工具。故本文提出的基于单片机的C语言教学方法,对结合单片机进行符合实际工程需求的硬件和软件开发的爱好者或学习者有很重要的意义。
二、教学对象
本学期本人所教授的主要课程之一是《C语言程序设计》,所面向的教学对象是大一新生,大多数同学由于在高中阶段很少接触电脑,对于语言的学习更是陌生,而且数学功底比较薄弱,同时,加上学习过程中大多数学生往往缺乏积极性和主动性,遇到困难不能刻苦钻研,往往选择放弃。因此,针对学生的基础情况,教学讲授的进度不能太快,教学的内容不能讲的太过深奥,而且教学方法要灵活多变,结合实际事物进行简单比喻来讲解,只有这样才能较为形象地教好C语言这门课。
三、C语言的应用地位
C语言是一门使用最广泛的程序开发工具编程语言,是极具发展前景的计算机高级语言。其作为一种结构化的程序设计语言,具有相当强的结构性、可移植性和功能性。通过采用C语言进行编程开发可以使众多开发者专心研究所设计程序要实现的功能及相关实现算法,从而有效减少开发和软件调试的时间。C程序设计具有良好的程序结构,对于模块化的程序设计非常适合,故通常会采用从上至下,追求逐步求精的结构化程序设计方法,来将所要实现的功能模块化,不同的功能通过不同的模块去完成。这样易于进行调试工作和方便快捷地管理好大型项目,从而最大限度地减少重复劳动。
四、单片机的应用教学现状
单片机的学习是我院电子类专业需要掌握的一门实践性非常强的专业课程,我院学生通过对其的实践性学习后,能够独立参加全国电子设计大赛,并能较好地完成比赛项目。为使我院的单片机教学效果更好,学生对该门课程掌握的更加牢靠,故需要对单片机的教学进行大胆改革,通过在C语言的课程教学上,结合单片机以及相关的硬件设计知识进行讲解。从我院电子专业开设C程序设计课程以来,通过学生所反映的情况是该门课程比较难学习,而且不知道他们在学完C语言后到底有什么用,能够应用到哪些地方,更不知道将自己的所学应用于单片机的开发中能不能实现目标。故根据以往教师的教学经验,并结合学生反映的情况考虑,本人觉得有必要作出这样的改进,在C语言的课程上,通过结合单片机及相关硬件设计知识来讲解C语言,并从以下几方面引起重视。
五、《C语言程序设计》的课堂教学
1.教学设计前的思考。《C语言程序设计》不仅是电子类专业理工科学生的一门计算机公共必修课程,而且C语言也是作为计算机等级考试(二级)的考试内容之一。C语言对于大部分刚进入大学的学生来说,也是一门比较难的计算机语言课程。要做好这门课程的教学设计,首先要对学生的具体情况有一定程度的了解。该课程通常的教学法是语法格式的讲解、语法要点的逐步讲解和通过例题对语法的应用讲解。这种机械的教学灌输思想枯燥无味,会使学生失去对该门课程的学习兴趣,所以,本人认为应该先要求学生课前对本堂课所要讲解的知识进行预习,并能识记有关知识点,将不理解之处画上记号,待课堂老师讲解时再认真听并理解所教授内容,这样通过教师为主导、学生为主体的方式学习,教师通过精讲相关的硬件设计实例,通过硬件设计所要实现的功能引出相关软件设计,进而将软件设计时所涉及到的相关C知识进行讲解,然后通过另一简单例子让学生自己去通过分析来巩固知识点。
2.结合多媒体的讲解,强化实验及实践能力。因为教师授课的主要对象是大学一年级新生,所以需要教师采用通俗易懂,并结合简单例子进行相关讲解,这样能够使学生容易理解和消化。教学过程中,采用多媒体,通过编程演示加深学生对运用的语法理解和深刻记忆。并把理论知识和硬软件的设计内容进行整合讲解,让每个学生独立完成实际应用实验题。
3.减少和消除学生对程序设计语言的排斥和畏惧感。本人在教学中会引导学生多读程序,在读的过程中领悟和提高。对于软件生存周期的设计、编码、调试、运行这几个阶段,本人可以通过C语言设计实例来体现,以培养学生编程中的工程思想。讲授课程时以提出问题、解决问题、深入拓展问题、再解决问题,对问题进行评价和优化设计的螺旋式滚动教学的方法,收到了不错的教学效果。
教学过程中,对于数组、指针等重要的知识点,则需要制作更生动的课件,提高学生的学习兴趣和主动性。例如,在讲解数组的冒泡法排序时,本人让7位同学分别拿着一个数据牌站到讲台,进行现场模拟气泡排序过程,通过第一次排序找到了该组中的最大值,经过第二次排序找到了次大值,通过现场的模拟以及班上同学的参与,使课堂更加丰富有趣,并且所有同学都能掌握气泡排序的过程。由于在教学中引入的现场模拟,使同学们更容易理解这些抽象的内容,更重要的是碰到类似的问题他们会触类旁通,从而慢慢培养出编程的兴趣。
六、实践培训操作
上机实验是学习程序设计语言的重要环节,自己编写的程序上机调试运行中,可能有很多想不到的错误,通过改正这些错误,可逐步提高自己对C语言语法的理解力。在课程的教学中,会进行阶段性的实训项目,将每一阶段的学习进行小结性的贯穿和提高。将相关的知识点融入到程序的编写中,从而巩固知识点并将琐碎的知识点做一个整合。暑假期间,对于电子爱好的学生进行集中培训,然后按照全国电子设计大赛的要求给大家几个题目做,这几个题目涵盖非常广的知识点,大家如果想编出程序就必须要找到课本的相应知识点进行复习,从而编出程序,学生普遍反映通过集中培训课的锻炼,他们的编程能力有了很大的提高,很多以前不懂的内容通过自己钻研也懂了,通过自己的努力以后也体会到了编出程序的喜悦感,可以说收到不错的成效。
七、结束语
C语言的教学重点是培养学生分析与解决问题的能力,这种能力的培养与学生的刻苦学习分不开,因此,在本人的课堂中会一再强调C语言不是看会的,也不是听会的,而是亲自动手实践练会的。基于单片机的C语言开发和设计,极大地促进了单片机在生产、生活各个领域的应用,提高了程序开发效率。因而,C语言学习效果的好坏,对今后单片机课程的学习具有深远的影响。
参考文献:
[1]向艳.C程序设计课程教学体系和模式探讨[J].计算机教育,2010,(3):112-114.
[2]谭浩强.C语言程序设计教程(第三版)[M].北京:清华大学出版社,2013.
[3]冯运仿.《C语言程序设计》课程教学模式的研究与实践.福建电脑,2012,(1).
[4]董蕴宝,潘旭军.浅谈C语言在单片机中的程序设计[10].科技信息,2009,(13):59-67.
[5]杨晶,李成楠.浅谈高职院校C语言教学课程教学的探索和思考.中国科教创新导刊,2012.endprint