程序设计(频率计).ppt

上传人:p** 文档编号:182927 上传时间:2023-03-30 格式:PPT 页数:35 大小:201KB
下载 相关 举报
程序设计(频率计).ppt_第1页
第1页 / 共35页
程序设计(频率计).ppt_第2页
第2页 / 共35页
程序设计(频率计).ppt_第3页
第3页 / 共35页
程序设计(频率计).ppt_第4页
第4页 / 共35页
程序设计(频率计).ppt_第5页
第5页 / 共35页
程序设计(频率计).ppt_第6页
第6页 / 共35页
程序设计(频率计).ppt_第7页
第7页 / 共35页
程序设计(频率计).ppt_第8页
第8页 / 共35页
程序设计(频率计).ppt_第9页
第9页 / 共35页
程序设计(频率计).ppt_第10页
第10页 / 共35页
亲,该文档总共35页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《程序设计(频率计).ppt》由会员分享,可在线阅读,更多相关《程序设计(频率计).ppt(35页珍藏版)》请在第壹文秘上搜索。

1、 基于单片机系统的基于单片机系统的 程序设计程序设计 一、程序设计步骤一、程序设计步骤 一说到程序设计,人们很往往想到的就是写代码,其实写代码只是整个程序设计过程中的一个微不足道的阶段而已。 那么一个完整的程序设计过程包括哪些步骤呢。1 、方案制定(立项)方案制定(立项) 一个项目的成败往往不是在最后一天体现,而是在第一天就被注定了,也就是说,方案的制定阶段直接关系项目的成败。因此,在这个阶段,我们要细致地做好准备工作。这些工作包括:1)制定技术开发要求2)制定实现方案3)评估整个项目开发需要的各方面 的资源4)评估并确定开发周期5)其它 在经过多方面的综合评估,确认方案可行,即可立项。 2、

2、 程序设计 程序设计阶段中包含了系统、程序、电路、机械结构等多方面的内容。由于我们现在只是单纯的讲程序,因此暂时先撇开其它;在这里程序员的主要任务是: 1)程序框架的规划2)各个模块功能的细分3)系统资源的分配4)算法的设计5)程序流程图的绘制3、代码编写 这个阶段就是我们平时所谓的“写程序”了。这个阶段要注意遵守编程规范;每个功能模块都要求用一段文字说明,要有写注释的习惯。同时还应遵循两个最高原则:1)向前兼容 许多有经验的程序员,都拥有自已的程序模块库。当他们需要设计一个新的程序时,只要直接从旧项目中抽取出成熟模块,移植到新项目中。七拼八凑的,就完成了新程序设计,大大提高了开发的速度。2)

3、相互兼容 对于一个团队来说,效率来自于分工合作。这时要奉行的最高原则就是“相互兼容”。 在团队中,统一的编程规范,团体的默契配合,才是成功的关键因素。4、程序调试 程序调试就是验证前面的工作,把程序调通。 调试阶段要做的两件重要事情:一是测试,就是要尽可能多地找出程序中的BUG;二是DEBUG,就是要解决那些BUG。5、程序维护 这个阶段是指推向市场或交付客户后,根据市场和客户的需求,进行升级维护,当然也包括进一步对隐性BUG的消除。 二、程序设计思路二、程序设计思路 对于新手来说,背熟了指令集并不代表你就会写程序了。就像我们普通人,即使认识了所有的汉字,但并不代表他就会写文章了。 如何把那一

4、条条指令汇集成程序,并顺利实现预期的要求呢,这就是我们下面将要讲到的程序设计思路。1、程序的基本结构 单片机程序都是为了实现某个特定的功能而定制的。因此每个程序的流程也不可能完全相同。但是写得多了,总还是有些规律可循的。事实上,大多数程序都可以套用这样一个基本流程结构:1)初始化程序 单片机上电复位后,从复位入口开始运行程序。这个时候应该对系统进行自检和初始化动作。系统初始化包括对I/O口、RAM(变量)、定时器、中断、显示、ADC以及其它功能模块的初始化。2)主程序循环体 初始化程序结束后,系统的工作环境已经建立起来了,这时就可以进入主程序。 主程序一般是一个循环体。在这里执行的是程序要实现

5、的具体功能,如输入检测、输出控制和人机界面等。这些语句可以直接写在主程序里,也可以写成子程序形式,由主程序进行调用。2、模块化的程序结构 在模块化的程序结构中,主程序仅仅是执行调度功能,负责轮流调用功能模块程序。主程序每循环一圈,所有的功能模块都被调用一次。 显然,采用了这种结构后,各个模块之间的相互独立性较强。我们可以像搭积木一样,很方便地增加或减少主程序调用的模块。3、模块的事件驱动机制 所谓事件驱动机制,就是给每个模块安排使能标志,通过使能标志来触发该模块代表的事件。也就是说在每次进入功能模块时,先判断条件是否满足,若满足则执行,否则则不执行。4、顺序调度机制和优先调度机制1)在主程序循

6、环中,如果各个模块没有优先级的区别则我们可以采取顺序调度机制。2)如果各个功能模块有优先级的区别,则我们需要采取优先调度机制。5、中断与前/后台的程序结构 我们把实时性要求更高的事件(比如:外部触发信号,或者通信)入在中断中(前台)响应,把实时性要求较低的任务(比如:按键扫描、显示刷新)交给主程序(后台)去调度。这样就形成了前/后台的程序结构模型。6、分时调度机制 在系统任务较多的时候,为了使实时性要求较高的任务能得到系统时间,我们可以尝试采用分时调度机制。7、多进程并行运行机制 多进程并行机制,就是把每个任务都看作是一个进程,该进程可以被分成多个阶段,每个阶段的执行时间较短。当该进程获得系统

7、的控制权后,每次只执行一个阶段,然后就将控制权交还给上级调度程序。待到下次重新获得系统控制权时,再执行一个阶段。8、基于状态机思路的程序调度机制 用状态寄存器来表示程序的工作状态。在调度程序中,根据系统当前工作状态和触发条件,综合分析,执行相应的动作,或迁移到新的状态。 这种基于状态机的程序调度机制,通常包含以下4个要素:1)现态 - 当前所处的工作状态;2)条件 - 触发动作或状态迁移的条件;3)动作 - 条件满足后执行的动作;4)次态 - 条件满足后要迁移的新状态。 以上介绍的,都是构建单片机程序框架的一些思路。通过将各种程序结构灵活应用,各种调度机制有机结合,就可以更有效的管理各个任务,

8、实现程序预期目标。 三、程序设计实例三、程序设计实例 题目:基于单片机系统的题目:基于单片机系统的简易频率计程序设计简易频率计程序设计1 、方案制定方案制定 1)制定技术开发要求 设计一基于51单片机的频率计程序,对外部接入频率信号进行测量,频率范围为0-65535HZ,采用红色数码管显示输入频率。 2)制定实现方案3)评估整个项目开发需要的各方面 的资源4)评估并确定开发周期5)其它 2、 程序设计 1)程序框架的规划 2)各个模块功能的细分 3)系统资源的分配 4)算法的设计 根据技术开发要求列出频率计的具体算法 5)程序流程图的绘制 上 电初 始 化 程 序计 数 器 计 计 数数 码 管 显 示 程 序图 1 主 程 序 流 程 图 开 始计 数 器 计 数定 时 器 开 启定 时 1S到 ?保 存 计 数 值 并 清 空 计 数 器是否返 回计 数 器 计 数 流 程 图3、代码编写4、程序调试

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > C/C++资料

copyright@ 2008-2023 1wenmi网站版权所有

经营许可证编号:宁ICP备2022001189号-1

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第壹文秘网,我们立即给予删除!