欢迎来到天天文库
浏览记录
ID:5997253
大小:29.00 KB
页数:7页
时间:2017-12-30
《基于流程图编程单片机软件系统开发》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、基于流程图编程单片机软件系统开发 摘要:针对学生在单片机学习中自主设计能力比较弱的特点,本文开发了一款基于流程图编程的单片机软件系统。该系统使用形象化的模块,采用自顶向下的方法设计流程图,流程图设计完毕,程序相应编写完成。该方法形象直观,易于理解,编程人员可专注于程序的逻辑关系,从而发挥更大的创造力。关键词:单片机;流程图;编程中图分类号:TP319SoftwareDevelopmentofSingleChipComputerbasedonFlowChartProgrammingCHENRuisen(DepartmentofInformation,XiamenOceanVoca
2、tionalCollege,XiamenFujian361012,China)Abstract:AccordingtothecharacteristicsthattheindependentdesignabilityofstudentsisweakinlearningSCM,asoftwareofSCMbasedonflowchartprogrammingisdeveloped.Thesystemusesvisualizationmodules,andthemethodoftop-downisusedinthedesignofflowchart.Inthissystem,when
3、thedesignoftheflowchartiscompleted,the7correspondingprogramhasbeenwritten.Thismethodisvisual,andeasytounderstand,theprogrammerscanfocusonthelogicalrelationship,andthusplayagreatercreativity.Keywords:SingleChipComputer;FlowChart;Programming0引言“单片机”是一门理论性和应用性都较强的课程,也是相关专业的核心课程。该课程偏重于工程思维,其任务是利用
4、单片机技术和各种芯片,设计实用的电路系统,编写相关的应用程序。现今常用的单片机编程语言主要有C51等,编程时需要输入复杂的程序代码,编写的程序还需要符合特定的语法规定,这往往增加了编程难度,是学生学习单片机的难点之一。针对单片机教学中“强化实践,重在应用”的办学方针,本文设计了一款基于流程图编程的单片机软件开发系统。该系统采用EDA中“自顶向下”[1]的设计方法设计程序流程图,程序流程图由基本编程模块连接而成。流程图设计完毕,程序相应编写完成,该方法有利于重点关注寻求解决问题的方法,从而开发出更富有创造性的产品[2]。1系统工作原理7单片机中的程序流程图用于描述程序内部各种问题的
5、解决方法、思路或算法,常使用各种图形、符号、有向线段等来表示程序设计的过程。一般情况下,根据要完成的程序功能写出总流程图,基于总流程图即将整个程序划分成几个主要的功能模块,再针对每个功能模块绘制基本流程图。流程图中使用的各种形态符号只表示某种处理的描述并没有实际编程意义,主要是为程序编写发挥导引性作用。系统对流程图的图形和符号等进行了相应的改造和简化,系统中的流程图只包括两部分:(1)表示相应操作的框(模块)系统设计了很多模块库,比如显示模块库,判断模块库,传感器模块库等。每个模块库又包含很多子模块,如判断模块库包含次数循环模块,永循环模块,条件循环模块,条件判断循环模块等,模块
6、组织结构如图1所示。模块类似于Matlab软件中各种工具箱的仿真模块,每个模块均相当于一个子函数,在流程图中添加一个模块即相当于调用一个子函数。各个模块提供一些属性以供需要时进行设置,设置后将改变模块的功能,图2为延时子模块的属性设置框及相应的子函数,只要在属性设置框中输入不同的数字,就可以得到不同的延时时间。系统中的模块库是一个开放库,可以随时增加。voiddelayms(uchart){ucharx,y;for(x=t;x>0;x--)7for(y=110;y>0;y--);}(2)带箭头的线(指定程序的执行顺序)系统中的模块暂时只用C51来编写。由于C51中的变量分为局部变
7、量和全局变量,这将有利于模块的独立性。用于进行模块之间传递参数的变量为全局变量,各个模块内部用到的变量则全部利用局部变量,如此模块变量就不会相互影响。系统还提供了一个全局变量模块,在该模块中可以定义一些全局变量。系统中每一个模块都可以完成一定的功能。只要依循清晰的思路连接这些模块,就可以很快地完成一个程序的代码。2流程图到C51源程序的实时转换为了得到可编译下载的程序,系统可以将流程图自动转换为C51源程序,类似于plc中的梯形图和指令表的自动转换[3-4]。编程人员可以直接对源
此文档下载收益归作者所有