APP下载

《C51程序设计》课程教学探讨

2014-08-15李永建王福元

科技视界 2014年32期
关键词:汇编语言C语言程序设计

李永建 王福元 王 军

(盐城工学院,江苏 盐城 224000)

1 课程的性质

本课程讲授单片机C51语言的基础知识,包括C51程序设计的基本语法、函数、数据结构等内容;然后介绍了单片机调试软件Keil C51的应用及其调试、仿真技巧;是工科院校计算机专业及非计算机专业广泛开设的一门的专业技术基础课。

2 课程的任务及教学目标

通过本课程的学习,学生应达到以下几方面的要求:

(1)掌握单片机C语言编程方面的基本概念,基础知识。(2)熟悉51系列单片机基本硬件结构及编程方法。(3)掌握51系列单片机C语言的指令和语法。(4)学习C51程序的编写方法,能够编制和调试简单常用的程序。(5)掌握51系列单片机的程序存储器、数据存储器、输入/输出口的C语言编程方法。(6)掌握51系列单片机的仿真技术及应用。(7)了解单片机C语言应用系统开发的基本方法。

本课程的教学目标如下:

通过本课程的学习,使本课程讲授了单片机的应用概述,单片机的内部结构及指令系统,单片机的程序设计,中断系统和定时器,串行口和系统的扩展,测试接口,80C51兼容单片机等,以培养学生应用单片机的能力,为今后学习复杂的工业控制系统打下基础。

本课程的应用性较强,与生产实际的联系紧密,安排适当的实验可以帮助学生理解教学内容,锻炼动手能力和综合设计能力。实验内容为:(1)单片机C51程序设计集成开发环境应用;(2)流水灯实验;(3)中断程序设计实验;(4)定时器/计数器程序设计实验等。

3 课程特点解析

我们先分析一下《C51程序设计》特点,如下:

首先,课程和以往单片机知识联系紧密,这就要求具有良好的单片机基础,很多同学学完一门课程后就扔掉一门课程,不重视课程间的联系,也不愿再重新复习原来知识,这时候,在讲解《C51程序设计》课程的时候就要把和单片机相关知识讲详细、讲透彻,让学生不在害怕忘记了单片机知识,无法继续学习《C51程序设计》课程;

其次,课程和C语言密切联系,这对课程的学习是好事,多数的同学都修过《C语言程序设计》这门课程,有的同学甚至通过C语言的计算机等级考试,因此,对有C语言很好的基础,减轻了《C51程序设计》课程的学习难度;但毕竟《C51程序设计》和《C语言程序设计》是有区别的,C51的学习跟依靠单片机知识,部分同学认为学好C语言再熟悉一下C51特有的语法就可以从事C51的编程了,事实上,很多从事单片机开发的技术人员都精通汇编和C51语言,因为很多时候C51程序需要反汇编并进行修改,以防止程序冗余和精简控制指令,因此,《C51程序设计》课程的学习,不仅仅学好C51本身,还有熟悉单片机最基本的汇编语言,才能使C51语言更好的适合单片机的应用开发。

目前,比较流行的单片机编程方法有3种:汇编、C语言和两种混合编程。下面对它们的优缺点进行归纳,供深入学习《C51程序设计》课程参考:

1)汇编的特点是最接近机器语言,控制语句最直接,对于单片机的控制效率最高,适合作精确控制的场合,常常用于底层驱动或控制算法的编程,缺点是与C语言相比不方便记忆,而且受寄存器等位数(51单片机的寄存器或存储器为8位)的限制,复杂算法的编程较困难;

2)C语言的特点是编程相对汇编语言简单,特别是适合一些复杂些的算法编程,但编译成机器代码冗余指令较多,从而导致占用程序存储器空间较多,而且冗余指令对控制产生影响,所以不适合做精确或实时性要求较高的场合;

3)混合编程是一种流行的方法,它结合汇编和C语言的优点。通常混合编程可采用两种方法,一种是汇编语句嵌入到C语言中,这种方法实现较容易,但控制功能还是不强;另一种方法是用汇编和C语言两个文件,用接口函数或接口寄存器进行两个函数的数据传递,最后进行联合编译形成一个机器代码。

4 课程教学分析

C51是单片机语言与C语言结合的一门语言,它具备了各自的优点,比如,可以控制单片机硬件,比汇编语言直观简洁。《C51程序设计》这门课程是C51语言的教学内容,因为这门课程具有单片机的特点和C语言的特点,所以这门课程的学习就离不开单片机硬件的支撑知识。首先,我们来谈谈如何进行《C51程序设计》的教学。

1)根据课程特点,围绕单片机基础进行教学

单片机是《C51程序设计》课程的基础,因此不能离开单片机的基础,在C51学习中遇到单片机知识不能回避,要进行简要的教学,比如归纳和总结C语言在单片机上的应用。

2)借鉴汇编语言知识,互补学习

学习知识不是孤立的学习,要全面学习,作为单片机的另一门语言-汇编语言,我们不能完全不理,要借鉴汇编的学习方法,体会汇编语言的优点,对比学习C51才能知己知彼,百战不殆。

3)重视编程训练,进行必要的强化训练。

编程是一门靠大量训练积累经验的技术,课程的学习离不开编程,因此除了教知识外,要进行一定的编程练习,巩固学习的知识。

5 课程教学经验

《C51程序设计》是一门理论性和实践性均较强的单片机应用课程,概念理解难、学习内容较多,目前学生学习吃了,难易吃透知识,给教学带来一定的难度,因为单纯的理论教学无法提高学生的学习积极性,此外,C51的学习对实践提出了很大的要求,要求学生要有较强的动手能力。为了改变教学出现的吃力现象,笔者在C51教学中探索出一套教学和实践一体化的应用方案。

1)以教学计划为前提,强化教学和实践一体化的基础

教学计划是教师教学的一盏明灯,是打造高效教学前提条件。因此,要制订出一套适合教学的好的计划。首先,充分考虑学生的知识水平和基础能力是教师在制定计划的前提条件,针对部分学生逻辑思维能力偏弱,学习习惯欠妥,教师要结合教学大纲的要求,对教学内容进行适当删减和调整。其次,教师还应充分考虑学校的教学仪器能否能满足日常教学需要,对教学有无特殊要求等。

2)以项目教学为母体,实事教学和实践一体化

《C51程序设计》课程教学是普通高等院校的教学难点,如果采用传统的教学方法,从单片机的基础知识讲起,过渡到单片机的结构与原理,然后深入到C51指令系统、定时与中断系统、扩展与接口技术等知识。通常情况下,在基础阶段就会有一批学生感觉所学知识过于枯燥和乏味;在进入第二阶段进行C51结构与原理学习时,会出现约1/3的学生无法参与到课堂中,更谈不上对知识的理解和掌握,以及能力的培养和提高。

项目教学法打破了传统教学的章节次序,把知识点按照教学需要整合起来,某个项目就可以涉及整本书的内容,也可以包括某个章节的内容,以最精简的方式达到教学效果的最优化。同时,采用项目教学法,可以从一开始就吸引学生注意力,提高学习兴趣,激发他们学习的主动性,进而提高教学效果。

6 小结

《C51程序设计》是基于单片机知识和应用的一门课程,单片机的软硬件基础对学好这门课程至关重要,因此,要充分重视知识的积累,并加强C51和单片机的融合,不放弃对汇编语言的应用,才能使《C51程序设计》得学习再进一个台阶。

《C51程序设计》课程是一门专业课程,有较强的实践要求,无论教和学都要从实践出发,要重视编程训练,同时不放松理论的学习,才能真正学好这门课程。

[1]唐颖,主编.单片机技术及C51程序设计[M].电子工业出版社,2014.

[2]侯殿友,主编.单片机C51程序设计[M].人民邮电出版社,2012.

猜你喜欢

汇编语言C语言程序设计
基于Visual Studio Code的C语言程序设计实践教学探索
高等学校计算机专业课程教学改革实践——以汇编语言与接口技术课程为例
汇编语言与C语言的混合程序设计技术研究
从细节入手,谈PLC程序设计技巧
基于C语言的计算机软件编程
提高《汇编语言程序设计》教学效率的思考与实践
高职高专院校C语言程序设计教学改革探索
PLC梯形图程序设计技巧及应用
试论汇编语言与C语言的混合程序设计技术
论子函数在C语言数据格式输出中的应用