首页 > 文章中心 > 单片机开发

单片机开发

前言:想要写出一篇令人眼前一亮的文章吗?我们特意为您整理了5篇单片机开发范文,相信会为您的写作带来帮助,发现更多的写作思路和灵感。

单片机开发

单片机开发范文第1篇

关键词 单片机开发;仿真技术;应用;电子琴系统;软硬件协同仿真

中图分类号TP39 文献标识码A 文章编号 1674-6708(2011)56-0180-01

0 引言

目前,单片机正以高集成度、高可靠性,体积小、控制功能强,低电压、低功耗,便于生产便携式产品、性价比高等优点广泛应用于人们生活的各个领域。现如今,单片机的开发应用越来越受到重视。在单片机的开发应用中最突出的就是仿真技术,在开发过程中使用软硬件协同仿真技术,模拟整个系统,能够达到降低设计风险,节省开发时间和费用的目的。

1 单片机仿真技术综述

单片机是采用超大规模集成电路技术把中央处理器、随机存储器、只读存储器、定时器等功能集成到一块硅片上而构成的功能完善的高集成计算机系统。现如今它的开发应用已引起人们的高度关注和重视。虽然单片机技术的发展极大地推动了电子、计算机、通信等行业的飞速发展,成为当前科研和教学中的热门技术。但是在单片机开发过程中,由于原理设计完成后需要反复调制电路,往往会增加单片机的开发成本,成为推广单片机研发的最大障碍。

近年来,计算机仿真技术已取得了突飞猛进的发展,这在一定程度上,也促成了单片机仿真技术。计算机仿真技术是一个多学科综合技术,基于计算机的工具,通过建立模型来模拟,数据处理分析,核查程序,使用真实的测试环境系统的动态仿真模型。它具有高效、安全、受环境约束较少的特点。而软硬件的协同仿真计算机仿真技术作为一个非常独特的应用程序的分支,近年来得到迅速发展。它主要是在最终硬件没有准备好之前就进行软件和硬件的协同验证。可以通过软件和硬件的协同仿真技术的使用对虚拟模型进行早期调试,并提供了一个虚拟平台软件调试,从而对整个系统包括硬件在内,进行功能验证,为准备硬件平台大大节省了时间。

可以说,软硬件协同仿真技术的出现为单片机开发应用提供了一个很好的发展平台,具有十分重要的推广价值。

2 仿真技术在单片机开发中的应用分析

目前,软件和硬件协同仿真技术对于低级别的模拟研究还比较完善,一般的模式是软件调试环境、微处理器模型和硬件协同仿真RTL描述。在正常情况下,软件环境和硬件环境有其自身的控制接口,通过一个总线周期由处理器和硬件交互发起的系列软件。笔者在这里以电子琴的开发为例,介绍了软硬件协同仿真技术在电子琴系统中的应用。主要是采用伟福单片机仿真器模拟电子琴,以实现单片机软硬件同步仿真。

2.1 系统总体设计

在电子琴系统中,仿真板作为硬件仿真和调试界面,单片机仿真软件负责系统执行、单步执行、监控断点、内存和寄存器数据返回给硬件仿真板时产生和捕获、内部功能模块的运行等功能。电子琴系统的设计应包括AT89S51单片机、矩阵键盘、音频模块和显示模块。其主要目的是在该系统的硬件和软件设计的前期验证其正确性和性能效率。

2.2 AT89S51单片机设计

AT89S51单片机,其中有40个引脚,4K字节闪存芯片上的程序存储器,128字节的随机存取数据存储器,32个外部双向口,五个中断优先级嵌套中断,两个16位可编程定时计数器,两个全双工串行通信端口,WDT电路,片上时钟振荡器,低功耗、高性能的8位芯片。芯片兼容标准MCS- 51指令集和80C51引脚结构,使用高密度,非易失性内存技术,可为许多嵌入式控制应用提供具有成本效益的解决方案。

2.3 矩阵式键盘结构设计

由于电子琴系统的按键数量较多,所以在本系统中将按键排列成矩阵形式。与直接连接式键盘结构相比,虽然矩阵式键盘结构要复杂些,识别方式也要复杂些,但它却可以提高端口利用率。每个键的行和列,行线和列线通过电阻器的功率连接,每个键的状态将成为数字“0”和“1”。输出端行线,没有按下按钮时,产量高,意味着没有键按下列线输入连接到芯片,一旦按下一个键,在输入端电压低,这种阅读状态输入线可以告诉一个键是否被按下,能够大大提高系统的性能。

2.4 音频模块及显示模块设计

AT89S51的定时器使用音频脉冲,每个反向输出脉冲的时间,到时候再反向,因此产生了各种不同频率的脉冲信号后,蜂鸣器发挥出来,我们可以形成一个优美的音乐,因而就形成了电子琴系统的音频模块。另外,将AT89S51单片机的P2端口的P2.0~P2.7连接到一共阴数码管a-h的引脚上,可以实现电子琴系统的显示模块,能够在数码管上循环显示数字0~9。

总之,单片机仿真技术由于考虑到软件的实际情况,模拟运行验证可以更真实的应用环境,系统设计更容易早期发现问题,避免设计错误,克服芯片的开发成本高的缺点。模拟整个系统的软件,可以降低设计风险,同时节省了开发时间和开发成本,在运行过程中,硬件连接和硬件仿真器是同出一辙。

3 结论

综上所述,软硬件协同仿真技术的使用,微控制器硬件将能够不仅不需要模拟的全部功能,而且还能提高一个成功的系统设计信心。也就是说,软硬件协同仿真技术可以方便系统设计调整,可以在设计前期评估性能,方便软硬件的检测。可以说它在单片机开发中表现出来的卓越的仿真能力使其成为当前最好的仿真工具之一,由此可见在单片机开发中仿真技术是一个十分值得推广的技术。可以预言,随着科学技术的不断发展和计算机仿真技术的日益完善,单片机仿真技术定将得到更加广泛的应用,最终实现单片机开发应用的最大效益。

参考文献

[1]王卫东,孙福玉.浅谈计算机仿真技术[J].赤峰学院学报,2006(2).

[2]刘娜,孙美英,赵英.如何提高单片机开发水平[J].科技信息(机械与电子),2007(21).

单片机开发范文第2篇

【关键词】AT89S52;单片机;开发板

0.引言

现状之下,单片机技术有着极其广泛的运用,例如:工业控制、军事设施以及航空航天技术等方面都能够运用到。然而单片机开发板的设计也具有一定的要求的,因此对单片机开发板进行设计,能够实现很多的功能,例如:跑马灯、数码管显示、液晶显示以及电路扩展等[1]。鉴于此,本课题对“基于AT89S52的单片机开发板”进行研究具有尤为深远的重要意义。

1.基于AT89S52的单片机开发板系统分析

1.1 单片机开发板的系统分析

以设计的基本要求为依据,结合各个方面的因素,将AT89S52单片机当作主控器,电路的重要组成模块有蜂鸣器、液晶显示以及矩阵键盘等。在考虑到程序效率的提升,对ISP进行了设计,使用时只需要直接烧录芯片[2]。另外,想要让扩展功能得到方便,便需要对所有的I/O口进行开放。

图1 单片机开发系统框图

1.2 开发环境与软件应用

在51单片机系列中,KeilC51是最受欢迎的开发软件。它能够支持多方面的功能,例如:汇编、C语言开发以及软件仿真等。并且,用户群也相当庞大,资料也相当丰富。本设计便运用该软件进行编程和编译,进而形成HEX文件,最后运用ISP进行电路下载,再将其烧录至单片机上进行运行,其烧录的方式是直接性的。

1.3 基于开发板典型模块电路的设计

基于开发板典型模块电路的设计包括了主机电路、四位数码管显示电路以及液晶显示电路。

(1)主机电路

MCS-51单片机具有十分广泛的运用,并且教材极其丰富,是单片机进行学习的最佳选择。AT89S52单片机则在软件与硬件方面对MCS-51单片机进行了兼容。因此,AT89S52单片机具有更加强大的功能,其擦写次数大约为一千次。因此,在本设计中,对于主机电路的控制,便使用了AT89S52单片机。主机电路在构成最小系统中的主要组成部分有振荡,还有复位电路等。

(2)四位数码管显示电路

数码管是一种显示器件,并且在单片机应用系统中能够将其广泛运用。基于内部电路的连接,一共分为两种,分别是共阴极、共阳极。它的内部的组成成分是发光二极管。共阴极数码管与共阳极数码管,普遍上可理解为:每一个数码管中的八个方管二极管的阴极均连接在一起的,为共阴极数码管;每一个数码管中的八个方管二极管的阳极均连接在一起的,为共阳极数码管。

(3)液晶显示电路

基于现如今工业设计的主要发展趋势,大致上是朝向低功耗与高性价比等方向发展的。并且,由于目前对环境提出了很高的要求,所以特别注重低碳生活。故此,在设计上,所运用到的显示电路也需要使用到低功耗的显示设备,而液晶显示电路则具备了低功耗的特点。现状之下,单片机常常运用到的液晶显示电路大致上有LCM1602、LCM12864以及LCM12232 等。在本次设计当中,所运用到的液晶显示模块为LCM1602电路。它和单片机接口具有非常简单的特点,只需要把LCM1602中的供电电路连接上,其他数据、控制口之间和单片机的并行I/O相连接,在此基础上,充分利用单片机编程对液晶显示的字符进行控制。

对于数码管,它和单片机的接口具有较为方便的特点,所以只需要把单片机的八位并行I/O口和数码管的段码引脚进行连接便可。基于八位并行I/O口输出的不同的断码,数码管就能够显示出不相同的数字[3]。但在连接数码管比较多的情况之下,便需要运用到动态扫描,进而将其连接至数码管内。本次设计所使用的到数码管有四个,为了能够节省对I/O口的使用,便需要对I/O口进行拓展,拓展所运用到的为HC573芯片。该芯片主要是基于程序,对不同的数码管进行控制,进而显示出不同的数字。另外,为了让数码管显示具有明亮醒目的优势,便可以采用共阳极数码管,也可以采用成本比较低的三极管用来当作驱动电路。

2.基于单片机开发板软件设计的建议

刚入门的学者而言,对开发的流程以及开发的环境进行充分了解是非常有必要的,对本课题在设计过程中所提供的硬件从模块至系统进行充分了解,进而对单片机进行认知与开发。基于硬件,想要让单片机开发板的器件能够进行工作,便需要软件编程的充分支持。在本课题的设计中,所运用到的编译软件为KeilC51,运用到的计算机语言为C语言。鉴于此,笔者建议,对于初学者,需要对上述知识进行充分掌握,进而方可进行单片机开发板开发试验。

3.结语

本课题所涉及到的设计中,单片机开发板还有非常多的电路,因为课题篇幅的局限性,所以无法将其整体性地进行介绍。但是,所有的电路模块大致上都是具备I/O资源、稳压电路以及抗干扰电路的特点的。在进行开发实验时,这种开发板可在工作中实现准确、稳定的优势。并且运用于实际,也非常具有价值。

参考文献

[1]周丽荣.基于AT89S52的单片机开发板设计[J].科学之友,2011,11(25):12-15.

单片机开发范文第3篇

论文摘要:目前单片机渗透到我们生活的各个领域,本文介绍了单片机的应用并且根据自己的一些经验谈了单片机应用过程中应该掌握的几个技巧。

目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,广泛使用的各种智能IC卡等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。

一、单片机的特点应用

单片机的特点主要有 :高集成度,体积小,高可靠性 ;控制功能强;低电压,低功耗,便于生产便携式产品 ;易扩展;优异的性能价格比。目前,单片机的应用领域 主要包括:办公自动化设备;单片机在机电一体化中的应用;在实时过程控制中的应用;单片机在日常生活及家用电器领域的应用;在各类仪器仪表中引入单片机,使仪器仪表智能化,提高测试的自动化程度和精度,简化仪器仪表的硬件结构,提高其性能价格比;在计算机网络和通信领域中的应用;商业营销设备;单片机在医用设备领域中的应用;汽车电子产品;航空航天系统和国防军事、尖端武器等领域,单片机的应用更是不言而喻。

二、单片机开发中的几个基本技巧

在单片机应用开发中,代码的使用效率问题、单片机抗干扰性和可靠性等问题仍困扰着。现归纳出单片机开发中应掌握的几个基本技巧。

1、如何减少程序中的bug。对于如何减少程序的bug,应该先考虑系统运行中应考虑的超范围管理参数如下。物理参数:这些参数主要是系统的输入参数,它包括激励参数、采集处理中的运行参数和处理结束的结果参数。资源参数:这些参数主要是系统中的电路、器件、功能单元的资源,如记忆体容量、存储单元长度、堆叠深度。应用参数:这些应用参数常表现为一些单片机、功能单元的应用条件。过程参数:指系统运行中的有序变化的参数。

2、如何提高C语言编程代码的效率。用C语言进行单片机程序设计是单片机开发与应用的必然趋势。如果使用C编程时,要达到最高的效率,最好熟悉所使用的C编译器。先试验一下每条C语言编译以后对应的汇编语言的语句行数,这样就可以很明确的知道效率。在今后编程的时候,使用编译效率最高的语句。各家的C编译器都会有一定的差异,故编译效率也会有所不同,优秀的嵌入式系统C编译器代码长度和执行时间仅比以汇编语言编写的同样功能程度长5-20%。对于复杂而开发时间紧的项目时,可以采用C语言,但前提是要求你对该MCU系统的C语言和C编译器非常熟悉,特别要注意该C编译系统所能支持的数据类型和算法。虽然C语言是最普遍的一种高级语言,但由于不同的MCU厂家其C语言编译系统是有所差别的,特别是在一些特殊功能模块的操作上。所以如果对这些特性不了解,那么调试起来问题就会很多,反而导致执行效率低于汇编语言。

3、如何解决单片机的抗干扰性问题。防止干扰最有效的方法是去除干扰源、隔断干扰路径,但往往很难做到,所以只能看单片机抗干扰能力够不够强了。在提高硬件系统抗干扰能力的同时,软件抗干扰以其设计灵活、节省硬件资源、可靠性好越来越受到重视。单片机干扰最常见的现象就是复位;至于程序跑飞,其实也可以用软件陷阱和看门狗将程序拉回到复位状态;所以单片机软件抗干扰最重要的是处理好复位状态。一般单片机都会有一些标志寄存器,可以用来判断复位原因;另外你也可以自己在RAM中埋一些标志。在每次程序复位时,通过判断这些标志,可以判断出不同的复位原因;还可以根据不同的标志直接跳到相应的程序。这样可以使程序运行有连续性,用户在使用时也不会察觉到程序被重新复位过。

4、如何测试单片机系统的可靠性。当一个单片机系统设计完成,对于不同的单片机系统产品会有不同的测试项目和方法,但是有一些是必须测试的:测试单片机软件功能的完善性;上电、掉电测试;老化测试;ESD和EFT等测试。有时候,我们还可以模拟人为使用中,可能发生的破坏情况。例如用人体或者衣服织物故意摩擦单片机系统的接触端口,由此测试抗静电的能力。用大功率电钻靠近单片机系统工作,由此测试抗电磁干扰能力等。

综上所述,单片机已成为计算机发展和应用的一个重要方面,单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法。从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。此外在开发和应用过程中我们更要掌握技巧,提高效率,以便于发挥它更加广阔的用途。

参考文献:

[1]何立民.MCS-51系列单片机应用系统设计系统配置与接口技术.北京:北京 航空航天大学出版社,1990

单片机开发范文第4篇

关键词:模块化;单片机;实验装置

单片机课程是电气自动化专业的一门重要专业课,具有很强的综合性与实践性,能较好地培养学生解决实际工程问题的能力,因此需要一种实用性强的单片机实验装置。在传统的单片机实验教学中,普遍采用单片机实验箱,实验箱将各种单元电路设计在一块大印刷电路板上。它的优点是结构简单、技术成熟。其缺点主要有:(1)电路连接线很多,学生容易接错;(2)实验电路固定,难以升级和更新,无法满足新技术、新实验的要求;(3)灵活性和扩展性差,不利于培养学生的综合实验能力和创新能力。

针对实验箱的缺点,结合电气自动化专业特点,笔者设计了一种新型的模块化单片机实验装置,既能满足单片机课程的实验教学和课程设计要求,又能满足大学生课外创新活动的需要。该实验装置主要由单片机最小系统模块、基本模块、A/D和D/A转换模块、电机驱动模块、继电器控制模块等组成。

1 单片机最小系统模块

单片机最小系统模块是单片机系统的核心模块,主要由3部分组成:电源部分、单片机最小系统电路和下载电路。为方便起见,电源部分采用USB供电和外部电源供电2种方式。单片机最小系统部分(如图1所示)。由单片机、电源、复位电路、时钟电路、存储器选择电路组成。为便于单片机芯片的插入和卸载,该模块采用锁紧卡座设计;复位电路包括上电复位和手动复位2种方式;时钟电路的晶振部分采用排针插座,便于使用者更换不同频率的晶振。

为了降低开发成本,该模块选用STC单片机,其内部集成了ISP在线下载模块,配合下载电路即具有在线下载程序的功能,下载电路如图2所示。在下载电路中,采用PL2303芯片及其电路实现USB-UART的电平转换。

2 基本模块

基本模块是单片机系统的基本功能实现模块,主要包括LED灯电路、数码管电路、液晶显示电路、独立按键电路和矩阵键盘电路。LED灯电路由8个LED灯组成。数码管电路采用4位数码管,为简化电路,采用动态扫描方式,提供了4根位选线和8根段选线。液晶显示部分包括1602液晶显示电路和12864液晶显示电路,2个显示电路共用数据口,使用时选用不同的插座。独立按键电路采用4个按键,每个按键都提供了独立的接口。矩阵键盘电路实现4×4共16个按键的矩阵。

3 A/D和D/A转换模块

A/D转换模块如图3所示,该模块采用ADC0832芯片。ADC0832芯片是一种8位分辨率、双通道A/D转换芯片,其最高分辨可达256级,能够满足一般的模拟量转换要求。芯片的模拟电压输入范围是0~5 V。芯片转换时间仅为32 μs,数据转换误差小,转换速度快、稳定性强。

D/A转换模块如图4所示,该模块采用TLC5615芯片。TLC5615芯片是具有3线串行总线接口、10位CMOS电压输出型的数模转换器,芯片工作电压为+5 V,转换后最大输出模拟电压是基准电压值的两倍,输出电压和基准电压极性相同。

4 电机驱动模块

步进电机驱动电路如图5所示。单片机的输出引脚驱动能力很小,而驱动步进电机需要较大电流,所以笔者采用ULN2003芯片放大驱动电流。通过单片机引脚输出的脉冲序列和方向控制信号,被直接送入ULN2003芯片进行功率放大,达到步进电机所需的驱动电流和电压时,驱动步进电机工作。

5 继电器控制模块

继电器控制电路如图6所示。单片机的一个输出引脚经过电阻与三极管T1基极相连,电流通过三极管放大后,驱动控制继电器。通过三极管的基极电平可以控制继电器的开和关。当单片机引脚输出高电平,三极管T1截止,继电器不工作;反之,当单片机引脚输出低电平,三极管T1导通,继电器得电吸合。

6 结束语

模块化单片机实验装置中的各个模块独立分开,学生可以根据实验需要自由选择模块构建单片机系统,还可以自行设计其他的扩展功能模块,与现有模块一起使用构建新的单片机系统,具有很好的灵活性、开放性和可扩展性。该单片机实验装置投入应用以来,大大提高了学生的单片机系统应用开发能力和创新能力。

参考文献

[1] 董李江.多模块单片机实验系统设计[J].中小企业管理与科技,2011(16):237-238.

[2] 王君,裴喜平,朱翔.“单片机原理及应用”教学实验装置的开发[J].实验技术与管理,2008,25(1):52-53.

单片机开发范文第5篇

论文摘要:“C程序设计”课程是电子类专业基础必修课,主要是为单片机编程服务,该课程的教学效果直接影响到后续单片机课程的学习。本文结合单片机系统开发的特点,探讨了C程序设计教学方法,为后续单片机课程的学习打下基础。

随着微电子技术的发展和广泛应用,基于单片机上的系统开发,C语言作为一种高级的编程语言,越来越受到人们的关注。现在,无论是嵌入式系统开发企业还是电子设计竞赛、毕业设计等,一般都以C语言为主要开发工具。结合单片机的系统资源,用C语言开发符合实际工程需要的单片机系统,对于编程者来说就有重要的意义。

1.C在单片机教学中的地位

C语言作为一种结构化的程序设计语言,它是程序开发工具中使用最广泛一门编程语言。C语言具有很强的功能性、结构性、可移植性。用C语言编写程序比汇编更符合人们的思考习惯,程序开发者可以摆脱与硬件不必要的接触,更专心地考虑程序的功能和算法而不是考虑一些细节问题,这样就减少了开发和调试的时间。由于它具有良好的程序结构,适用于模块化程序设计,因此采用C语言设计单片机应用系统程序时,采用结构化的、自顶向下、逐步求精的程序设计方法,将功能模块化,由不同的模块完成不同的功能。这样可使整个应用系统程序结构清晰,易于调试和维护。

2.单片机教学现状

单片机技术是现代电子工程领域一门飞速发展的技术,是现代电子技术中的一项不可缺少的重要技术。随着技术的不断进步和日益普及,单片机技术已渗透到各个领域,影响着我们的日常生活和工作。因此电子技术及相关专业的学生学习单片机技术越来越成为社会发展的需求。当前,各大高校的电子、计算机类专业均开设单片机课程。

《单片机》是我院电子系一门实践性极强的专业主干课程,是我校电子系重点建设课程之一,是本专业学生的必修课程。为了提高我系单片机教学效果,我们对单片机教学进行了大胆改革,使用C语言开发单片机,且课程的设计打破了学科体系的框架,将单片机和C语言的相关知识和技能按“项目”进行整合,并将《C程序设计》课程列为电子类专业核心基础课程之一。因此,《C程序设计》课程教学效果的好坏,将直接影响学生后续专业课程的学习。

从近几年我系《C程序设计》课程的教学效果来看,学生普遍反映该课程的学习比较困难,课程的语法知识较多,理解和记忆都不太容易,即使记住了语法知识也不能灵活应用;不知道学习C语言究竟有何用处,学完C后不能很好地利用C进行单片机小型系统的开发,缺乏知识的灵活应用能力。因此,根据以往单片机教学所得经验,我觉得教师有必要在《C程序设计》课程的教学过程中在以下几个方面引起足够的重视,并在教学中加以改进,为后续单片机课程的学习打下坚实的基础。

3.《C程序设计》课程教学方法探索

3.1上好每堂课,激发学生的学习兴趣

语言程序设计教学被认为是一种需要师生双方改进的一门课程,因为大多数语言教材中通常先给出一般的语法格式,然后逐步讲解语法要点,再给出实例。这种顺序灌输会使学生失去学习的兴趣,所以我认为在课堂教学环节应采取以学生为主体、以教师为主导的教学模式,要求学生自己先看有关知识点,并识记。教师采取精讲实例,在这过程中引出相关知识点,然后再举一类似实例让学生自己分析,巩固知识点。教师应把主要精力放在算法的分析和各语句语法的具体应用上,同时培养学生自学能力,采取互动机制,迫使学生主动学习。

3.2注重演示,强化实验,提高实践操作能力

因为授课对象是一年级新生,所以教师多用通俗易懂的语言进行讲解,多举实例,使学生容易理解和消化。在教学过程中,尽量采用讲解、演示方法,如在讲解经典算法后,按照理论方法所述,用DEV C++软件进行编程演示,从而加深学生对教学内容的理解。

在教学过程中,教师应将理论知识与实验内容进行整合,根据教学内容并结合实际应用设置实验题目,让每个学生独立完成。遇到学生不能解决的问题,教师应利用多媒体进行演示解决问题的过程,从而加深学生对教学内容的理解并提高实践操作能力。  3.3培养良好的编程风格

3.3.1优化程序

由于在许多工业测控领域中的嵌入式系统都采用单片机开发,它们所需要的计算和控制工作日趋复杂,其中软件的设计是最复杂和困难的,工作量大,特别是对于控制系统,设计人员需要考虑单片机的软硬件资源分配,但是单片机系统是一种资源十分有限的系统。这主要表现在CPU和片内结构简单、程序存储器资源的不足。因此在用C语言进行单片机开发时,如何使用好这些有限的资源就显得十分重要。虽然C语言具有许多的优点,但是生成的代码相对要长,基本多占用存储空间20%—50%。因而,在“C程序设计”课程教学中,教师不仅要教会学生如何编写程序,而且应在教学过程中向学生灌输优化代码的思想,让学生从大一开始就有开发项目的一些经验。

3.3.2合理选用数据类型

C语言在程序开发中提供了的丰富的数据类型,尤其是关于用户界面开发和一些动画与图像技术的实现。但是在开发单片机系统时,我们要按照实际需要,合理地选用数据类型。C语言中有Char等少数的数据类型是机器语言直接支持的数据类型,用此类数据类型的语句所生成的代码较短,而其它的数据类型如整型、浮点型等数据要有一定的内部程序或内部函数的支持,相对来说较复杂的数据类型的语句生成的代码也复杂,不利于转化成单片机的代码。因此,在“C程序设计“教学过程中,要向学生适当说明选择合适数据类型的好处,并尽可能地减少程序中使用的数据类型的种类,为以后学生的单片机学习打好基础。

3.3.3灌输模块化程序设计思想

在普通微型计算机上进行C语言程序开发设计时,只需考虑程序功能实现,而不必考虑程序代码的长短。但是在单片机上进行C语言程序设计就必须考虑系统的硬件资源,要求设计的软件程序结构是合理、紧凑和高效的。同一任务,有时用主程序完成是合理的,但有时需子程序效率最高,占用资源最少;有时并不是程序的算法越简单、长度越短越好,由于有一些算法要调用一些内部的子程序和函数,生成的机器代码质量反而较低。不同的算法对程序代码效率影响很大。因此,在进行“C程序设计”教学时,教师应适当向学生灌输模块化程序设计的思想,在不影响程序功能实现的情况下可以采用一些优化算法,并且把程序分成若干个功能独立的模块,为学生今后的单片机项目开发做好铺垫。

4.结语

单片机系统采用C语言开发与设计,极大地促进了单片机在生产、生活各个领域的应用,提高了程序开发效率。因而,C语言学习效果的好坏,对今后单片机课程的学习具有深远的影响。除了讲解C语言的基本语法外,更重要的是改善教学方法,利用各种方法培养学生的学习兴趣,并向学生灌输良好的编程风格与编程方法,为今后的单片机课程的学习打下良好的基础。

参考文献

[1]向艳.“C程序设计”课程教学体系和模式探讨[J].计算机教育,2010,(3):112-114.

[2]董蕴宝,潘旭君.浅谈C语言在单片机中的程序设计[J].科技信息,2009,(13):59-67.

[3]张洪静.电类专业C语言教学探讨[J].电脑知识与技术,2010,(29):8280-8281.

[4]林益平,赵福建.单片机C语言课程教学的探索与实践[J].电气电子教学学报,2007,(2):104-106.