开篇:润墨网以专业的文秘视角,为您筛选了十篇范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!
摘要:本文总结了我院在单片机C语言教学中的探索,包括在教学中精选了“变量定义、函数定义、混合编程”为C语言主要内容,以“变量定义、专用指针定义、C51汇编函数格式”为重点展开教学,并且紧密结合单片机概念和应用,编写了相关的习题和实验题目。实践表明,讲授C语言明显提高了学生的编程能力和教学效果。
关键词:单片机教学;C语言;内容选取;讲授方法;习题和实验
中图分类号:G642 文献标识码:B
1引言
近几年随着单片机和Keil C等开发工具的发展,我们教师在单片机项目开发中都采用C语言编写程序。与汇编语言相比,C语言有诸多优势,为了把单片机C语言编程方法和经验传授给学生,作者结合多年来讲授单片机和C语言的教学心得,以及从事单片机项目开发的经验,将单片机C语言部分写成小册子,补充到单片机教学中。后来组织教师动手编写了C语言版的“单片机原理及应用”讲义,讲义经过试用修改后,由中国水利水电出版社出版发行,其书名为《单片机原理及应用(C语言版)》。在教学中,我们精选C语言的内容,并对一些内容的讲解方法进行了深入地研究,把C语言的一些概念从开始就引入到单片机中,以C语言为主来讲授MCS-51单片机,并且举例和编程都用C语言,试用效果比用汇编语言好,学生更容易掌握用C语言编写单片机程序。
C语言引入单片机教学中是最近几年的事情,因此其内容的选取、一些概念的讲授方法、与之相适应的习题和实验等,都不够完善成熟,为了推进单片机C语言教学,提高单片机的教学水平,将我们在教学中的试验和探索进行总结,形成文字,与同行交流和探讨。
2单片机C语言内容的选取
由于国内把C语言引入单片机教学中的时间比较短,单片机教材中C语言内容差别很大。欲搞好单片机C语言教学,首先需要研究在单片机教学中C语言的内容,进行恰当地选取,从而用较小的篇幅、较少的学时数,使学生较轻松地学习和掌握单片机C语言的内容,实现用C语言熟练编写单片机程序。
摘 要 C语言不同于一般的计算机语言,相比于简单的机器语言,C语言数据库里函数计算公式更多,整体的编译功能性更强,整体的对数据处理的所需时间更短,编译过程效率更高。文章首先介绍单片机C语言的编程优点,然后对单片机C语言的编程问题进行分析和探讨。
关键词 单片机;计算机语言;C语言
中图分类号:TP315 文献标识码:A 文章编号:1671-7597(2013)22-0055-01
单片机是一个小型的电脑系统,它具备完成一项某项任务的功能,有的甚至可以完成多项功能,这在工业控制以及智能开发上有巨大用途。单片机系统的实现是建立在大规模集成电路技术发展成熟的基础之上,它将中央处理器CPU,数据存储ROM,负责信息传输的线路和I/O接口整合到一起,放在集成电路板上,完成电脑系统的制作。至于C语言,就是一种特定的机器语言,能帮助我们编译计算机能够识别的指令,而且整个编译过程不需要依靠计算机硬件的应用程序,非常的简单可行。
1 单片机C语言的编程优点
1)单片机因为是集成电路系统,能在一个很小的原件上完成较为复杂的操作反应,运行简单,价格便宜,还能支持C语言的编译。今天我们所提到的单片机C语言是C语言的一种,它能为单片机提供更多的数据类型,帮助用户分析遇到的问题,并且针对问题做出专业性处理。整体流程如下:命令以单片机C语言的形式下达,然后通过传输接口传到单片机的存储器上,CPU在从存储器上提取信息,进行计算并发出指令,发出的指令在通过接口传到给执行机器,如此完成整个动作。整个过程没有异步过程,而且提供标准函数库,程序员不需要熟记单片机的指令库就可以完成整个编译过程。
2)C语言作为一种高级语言,能直接用于操控机器,而不需要软硬件的驱动程序,为软件的开发提供了可靠的保障,C语言的应用极大的增加的程序编译员的工作效率,给开发者更多的时间跟精力去专心研究编译程序的功能,不用在分精力在硬件与软件的契合方面。但是单片机C语言占用系统量较大,对一般的单片机来说,CPU直接读取的存储是有限的,用C语言进行编译,很容易将原本简单的编译信息写成多条信息,这就增加了直接存储的负荷,导致单片机直接存储不够用或者栈溢出等问题。
2 单片机C语言的编程问题分析
高职单片机C语言程序相当于单片机的灵魂。没有程序的单片机只是一架空壳。只有拥有了程序,单片机才能将控制的无限魅力散发出来。不论是单片机系统开发企业、单片机爱好者,还是单片机教学,单片机程序设计都以C语言作为了主要开发工具。其因有三:(1)C语言作为一种高级的编程语言,更符合设计者的思维习惯。(2)使用C语言编程可以将设计者从单片机复杂的硬件结构中解脱出来。(3)C语言更贴近职业环境。因此,单片机的C语言教学便成了单片机教学中一个至关重要的环节。
要想完成程序设计,需要稳固的C语言基础知识和灵活的逻辑思维。而稳固的C语言基础知识要依赖英语基础。灵活的逻辑思维要有数学基础。英语、数学恰恰是高职学生薄弱的地方。这给单片机的C语言教学带来了不小的阻碍。那么,怎样在薄弱英语和数学基础上,提高单片C语言教学效果便值得研究和探讨一番了。
一、学――软、硬穿插
传统的单片机C语言教学中,往往是先脱离单片机学习C语言程序设计。学生普遍反映该课程的语法知识较多,理解和记忆都不太容易,即使记住了语法知识也不能很好地利用C语言进行单片机小型系统的开发。因此,我们以具体项目为基础将C语言知识穿插在整个单片机硬件教学中。比如,讲解完最小系统后,给学生一个项目《点亮LED灯》。之所以选择这个项目是因为它简单,上手快。它能让学生带着轻松的心情走入单片机应用之门。利用此次设计主要是给学生灌输C语言的基本结构,从而让学生体会单片机的控制意义。之后可以在跑马灯中穿插for语句知识;在按键设计可以讲if、switch语句;在数码管显示中学会一维数组等。在软硬件穿插学习过程中,教师应选择什么项目,项目中应准备哪些C语言知识,教师应仔细考量。项目中包含的C语言知识不用面面俱到,应以实用、够用为度。
二、先读后改――被动变主动
在学之后,学生有了单片机的应用经历,也累积了的一些C语言知识。但是由于英语知识薄弱,C语言关键字、格式记不住。程序设计的逻辑思维累积不够。学生独立设计程序还没办法实施。总是以老师讲,学生做的模式上课,学生的积极性调动不起来。怎么将学生被动接受变成主动学习?
继学之后,采用先读后改的教学方式。读――读程序。设计项目后,由学生上网搜集参考程序,然后读懂参考程序。以这样的方式来完成项目,一来可以锻炼学生信息收集,和信息筛选的能力,这也是我们希望学生能有拥有的一种能力。二来在读程序的过程中可以强化在学的过程中建立起来的C语言知识的模糊记忆。三来在读的过程可以学习一些新颖设计思路。这些设计思路不再拘泥于任课教师,可以激发学生程序设计的创新思维。
读懂程序之后就可以进行程序改造了。网上搜集的程序往往不完全符合自己的设计要求。这样就要求学生在读懂程序的基础上,进行二次改造,变成自己的成果。
摘 要: 单片机的开发已经在目前的计算机技术中取得了阶段性的成果,在其开发应用中,高级计算机语言的引入成为当下流行的趋势之一。本文主要对单片机、C语言二者相互结合以及C语言作用于单片机的开发产生的效果和作用作出分析和讨论,并从C语言的优点入手详细论述了C语言运用于单片机开发的具体步骤。
关键词: C语言;单片机;开发;应用
作为一种智能化工具,单片机的开发在传统上来说更倾向于使用汇编语言,而高级语言一直使用的甚少。但面对目前计算机领域技术发展的最新环境,汇编语言对于单片机开发来说已经不是最适合的编程语言了。从长远来看,将类似于C语言这样的高级计算机语言运用于单片机开发的技术虽然目前尚未成熟,但却是单片机开发技术更为完善和发展的大势所趋。
1 单片机的开发
近代计算机技术发展的突出特点是微电子技术的蓬勃兴起,作为微电子技术发展的代表,单片机逐渐被应用于生活的各个领域。它的出现使近代计算机技术向前迈进了一大步,更从系统分支上使计算机形成了两大系统分支:通用系统和嵌入系统。在现代电子系统中,单片机有其无可比拟的优越性:成本低、芯片体积小、性能好,因此,单片机的适用领域也非常广泛。在我们如今的生活中,单片机技术已成功被渗入到仪器仪表、家用电器、汽车机械等领域,是智能化工具的代表。
1.1 单片机开发的特征
目前单片机的开发主要具有以下特征:“扩展的串行方式、广泛的运用在片程序储存器技术、全盘CMOS化、8位机的主导地位、逐步使用C语言”[1]。上述特征概括性的展示了单片机技术目前的发展状况,其中,C语言的使用已经开始成为单片机技术开发的主要语言。
1.2 单片机开发的语言
摘 要: 在中职课程中单片机属于硬件教学,C语言是软件教学,如何将二者结合起来,让学生更好更快地掌握单片机的结构和工作原理,更熟悉掌握C语言的简单语法应用。作者根据多年单片机教学实践和体会讨论如何在中职学校单片机课程中引入C语言教学。
关键词: 单片机 C语言 中职教育
很多中职学校已经在电子专业开设了单片机这门课程,在教学过程中都会使用汇编语言教学,但一些中职学生掌握单片机这门课程的难度较大。课堂枯燥无味,汇编语言难于理解,缺乏动手能力,对本来学习基础就比较薄弱的中职生来讲更是雪上加霜。那么如何让单片机课堂更加灵动呢?结合多年单片机教学经验,我认为,中职学校单片机教学可以选择C语言作为编程语言进行单片机教学。
一、在单片机课程中利用C语言教学的优点
C语言作为一种非常方便的语言得到广泛支持,很多硬件开发都用C语言编程,如各种单片机、DSP、ASM等。C语言程序本身不依赖于机器硬件系统,基本上不做修改或仅做简单的修改就可将程序从不同的系统移植过来直接使用。单片机的C51编程与用汇编ASM-51编程相比,有如下几点优点:
1.对单片机的指令系统不要求有任何了解,就可以用C语言直接编程操作单片机。
2.寄存器分配、不同存储器的寻址及数据类型等细节完全由编译器自动管理。
3.程序有规范的结构,可分成不同的函数,使程序结构化。
摘要:本文结合8051介绍单片机C语言的优越性,论述了C语言实现单片机数码管闪烁效果的程序设计。虽然使用8051可以在C语言程序中嵌入汇编代码,但是复杂度明显提高。实验证明,只要合理地运用C语言,在实际应用中就可以达到与汇编语言相近的精度。
Abstract: Combining 8051, the paper introduces the advantages of C-language and the programming design of C-language's relization of MCU digital blink. Though 8051 could embed assembly code at C-language programming, the complicity is obviously improved. The practice proves that if we use C-language resonablely, the equal precision with assembler language could be got at practice.
关键词:单片机;C语言;应用
Key words: MCU; C-language; application
中图分类号:TP31 文献标识码:A文章编号:1006-4311(2010)36-0146-01
1问题的提出
将C向MCU(俗称单片机)8051上的移植始于20世纪80年代的中后期。客观上讲,C向8051 MCU移植的难点不少。经过Keil/Franklin、Archmeades、IAR、BSO/Tasking等公司艰若不懈的努力,终于于20世纪90年代开始而趋成熟,成为专业化的MCU高级语言了。过去长期困扰人们的所谓“高级语言产生代码太长,运行速度太慢,因此不适合单片机使用”的致使缺点已被大幅度地克服。
2单片机C语言的优越性
摘要:《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语言指针的声明格式,其格式为:
类型标识符[存储区类型]
指针变量名[指针变量存储区类型]
单片机C语言的指针的定义比普通C语言指针的定义多两个部分:存储区类型是指指针变量所指向的数据的存储区,可以是所有的数据存储类型;指针变量存储区类型是指指针变量的存放区域的数据,可以是data、ldata、xdata或pdata如下声明:
摘要:针对电气信息类专业“C语言程序设计”课程教学目标不明确,与“单片机原理与接口技术”课程脱节较严重等现状,尝试在“C语言程序设计”教学中融入“单片机原理与接口技术”的内容,通过优化教学内容、构建实验环境、分阶段融合等措施实施教学改革。实际教学效果证明,课程融合后学生学习积极性提高,学习目标明确,为学生尽早参加创新活动提供了条件。
关键词:C语言;单片机;融合;教学改革
作者简介:陈景波(1978-),男,江苏常熟人,常熟理工学院电气与自动化工程学院,副教授;陈飞(1978-),女,浙江宁波人,常熟理工学院电气与自动化工程学院,副教授。(江苏 常熟 215500)
基金项目:本文系常熟理工学院教学研究项目(项目编号:JX1101286)的研究成果。
中图分类号:G642.0 文献标识码:A 文章编号:1007-0079(2013)26-0071-02
“C语言程序设计”(以下简称“C语言”)和“单片机原理与接口技术”(以下简称“单片机”)都是电气信息类专业的重要课程,这两门课程实践性非常强,学习效果直接影响到学生就业的核心竞争力。“C语言”课程教学中关于任务驱动教学法、项目教学法的研究已经较多,在一定程度上可以激发学生学习兴趣,提高教学质量。但在电气信息类专业的“C语言”课程教学中,应该针对专业的特点,结合后续课程融入“单片机”教学内容,有针对性地进行现场教学、案例教学,可以更有效地提升教学效果,本文针对这一问题进行探讨。
一、“C语言”和“单片机”教学现状分析
目前的教学之中,两门课程的脱节较严重,“C语言”作为基础课程,往往在大一就开设,而“单片机”作为专业课程,要在“模拟电子技术”和“数字电子技术”课程之后才开设。两门课程教学时间相隔较长,往往导致学生在学习单片机的C语言程序设计时,基本忘记了C语言的基本编程方法。在讲授C语言时,电气信息类专业大多也是以谭浩强老师的《C程序设计》为教材,除了介绍语言的数据类型、控制语句、数组、指针外,还对函数、结构体、文件进行讲解。整个教学过程中,过分注重语句、语法的细节和程序设计技巧的讲授,对如何分析和解决实际问题讲得不够,从而导致学生没有明确的学习目的,更缺少学习的兴趣。即使开展项目教学法,项目的选择也是一些关于学生成绩处理、方程求解等方面。虽然在一定程度上激发了学生的学习兴趣,但这些项目与专业应用结合得不是非常紧密,学生的学习积极性难以得到充分提高。
摘 要:《C语言程序设计基础》(以下简称“C语言”)与《单片机原理及应用》(以下简称“单片机”)是中职电子及相关专业中,十分重要的两门课程,但长期以来的教学效果却很差,尽管很多针对这两门课的教改探索一直在进行,但C语言与单片机难学难教的状况并没有根本改变。阐述了另外一种教改的方法,将两门课程相互渗透,进行整合式教学,在实际教学中,取得良好的效果。
关键词:C语言;单片机;中职;整合
一、C语言与单片机课程在中职学校电子及相关专业中的重要地位
C语言是一种被广泛使用的计算机程序设计语言,在中职学校引入C语言课程,不但能使学生掌握一种基础的编程语言,还为学生发展能力和进一步学习打下基础。
传统的电子装置,只能使用复杂的模拟电路或分立的集成电路来实现,这样的产品不仅体积大,且成本高,控制的精度也不高,适应性更差。有了单片机后,可实现很多复杂的功能。而学好单片机可让学生在电子行业内找到一个比较好的工作。所以,单片机课程,也常被称为“饭碗”课程。
二、中职学校“C语言”与“单片机”课程教学方式现状分析
目前,中职学校中“C语言”与“单片机”课程的教学是采用完全割离的方式进行的,一般在第二学期开设“C语言”,在第四学期开设“单片机”。
在讲授“C语言”时,通常以TurboC 2.0为蓝本,除了介绍“C语言”的数据类型、控制语句、数组、指针外,还对函数、结构体甚至文件进行详细地介绍。整个教学过程中,过分注重语句、语法的细节和程序设计技巧的讲授,对如何分析和解决实际问题讲得不够。从而没有明确的学习目的,更缺少学习的兴趣。