- 1、本文档共32页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6讲 完成一个流水灯项目 流水灯设计 ? 本讲任务: ? 分别用位输出操作、移位操作、循环移位操作完成3个典 型流水灯的设计。 ?掌握下列C语言知识点: ?宏定义、函数和函数调用、循环结构、while语句、关系 运算和逻辑值 ? 掌握流程图绘制。 ? 完成闪烁灯的设计。 ? 如 何 完 成 函 数 调 用。 完成一个典型流水灯的设计 程序就是人的思想的反映,编程最重要的就是你的编程思路,有什么样的思路就会编出什么样的程序。 先看上一讲的点一个发光管程序: 1、思路分析。流程图是整理我们思路的好工具,同时也能保证若干年以后你还能轻易看懂自己编写的程序。 2、程序讲解(这个程序是利用了位输出操作) 。 宏定义 函数和函数调用 如何熄灭发光管 循环结构,while语句详解、关系运算和逻辑值 如何改变流水灯流动的速度 了解一下延时函数 ? 学过汇编你就会知道,每条指令都占一定的时间(或者机 器周期)的,如果你让机器什么都不做,即空指令的话, 机器就会延时,然后你在计算好每次延时到底有多长,外 面套一个循环(或者多重循环),根据你想要的延时时间 即可计算出来循环的次数 ,延时函数基本上都是这种原 理,它的参数就是用来控制循环次数的。 怎样编写精确的延时函数 实现延时通常有两种方法:一种是硬件延时,要用到定时器/计数器,这种方法可以提高CPU的工作效率,也能做到精确延时;另一种是软件延时,这种方法主要采用循环体进行。 ? 1 使用定时器/计数器实现精确延时 ? 2 软件延时与时间计算 ? 在很多情况下,定时器/计数器经常被用作其他用途,这时候就只能用软件方法延时。下面介绍几种软件延时的方法。 ? 2.1 短暂延时 ? 2.2 在C51中嵌套汇编程序段实现延时 ? 2.3 使用示波器确定延时时间 ? 2.4 使用反汇编工具计算延时时间 认识一个For 循环语句 ? For (表达式1;表达式2;表达式3) { 语句(内部可为空)} 执行过程: 1.求解一次表达式1. 2.求解表达式2,若其值为真(非0 即为真),则执行 for中语句。然后执行第3步。否则结束for 语句,直接跳出,不再执行第3步。 3.求解表达式3. 4.跳到第2步重复执行。 一个简单的延时函数 只需要了解一下,不需要记住,学会调用它就可以了。 ? /*------------------------------------------------ ? 延时函数,含有输入参数 unsigned int t,无返回值 ? unsigned int 是定义无符号整形变量,其值的范围是 ? 0~65535 ? ------------------------------------------------*/ ? void Delay(unsigned int t) ? { ? while(--t); ? } 了解一下实验板初始化 ? 初始化就是把变量赋为默认值,把控件设为默认状态,把没准备的准备好。 但是如果是整个系统初始化那就不一样了。在汇编语言中,为变量分配空间时,初始化过的变量的初值位于可执行文件代码段数据后,会占用一定空间,不必要的初始化会造成磁盘空间的浪费。在C语言等高级语言中,为每一个变量赋初值被视为良好的编程习惯,有助于减少出现Bugs的可能性。因此,是否对不必要的变量初始化依情况而定。 宏定义 #号是预处理指令,用#开头。 #define ON (新的名称 ) 1(原来的名称) 作用:在程序书写时可用新的名称代替原来的名称书写,以达到简化或直观的效果。编译器在预处理的时候,自动将新的名称还原为原来的名称。 ? 书写位置:源程序开头,函数的外面 3个流水灯程序框图 开始详细讲解流水灯项目开发 设计目的 ? 从实际工程应用出发,在理论和实践上掌握流水灯系统的基本组成,工作原理。对设计流水灯有一个完整的概念,使设计出来的流水灯达到本设计任务书的技术要求。 8位流水灯开发过程 ? 一、任务描述:这次开发的目的是什么 (如要实现什么功能,应用在什么地方,对性能、功耗、实时性等有什么要求) ? 任何一个应用单片机开发的产品,从客户提出要求到完成方案设计,再到产品样机的调试,直至正式投入试运行,这个过程称为单片机应用系统得开发。单片机应用系统开发过程所用的设备统称为开发工具。由于单片机的软件资源有限,并且自身没有调试能力,因此必须配备相应的开发工具来排除开发过程中的软件错误,生成目标程序。 ? 本任务通过左移亮灯电路来讲解单片机系统开发设计时电路原理图的设计方法和步骤。通过本任务的学习,掌握单片机应用电路和程序的开发过程。 二、任务分析 ? 根据这次开发的目的展开分析,要用到什么模块,而且每个模块可能会用许多选择,这就要根据价钱
您可能关注的文档
最近下载
- 智慧大厅指挥中心整体建设方案.pptx
- 2.1六上科学《我们的地球模型》教学课件.ppt VIP
- 职业生涯发展展示 (修改版).pptx
- 建筑工程承包施工合同纠纷代理词(原告方).docx
- 电力拖动自动控制系统——运动控制系统第5版阮毅、陈伯时课后习题解答答案.docx
- (2024更新)国开电大《小学语文教学研究》形考任务1答案.pdf VIP
- 2023年华北电力大学(北京)计算机科学与技术专业《计算机网络》科目期末试卷B(有答案).docx VIP
- 大学思政课件中国梦.pptx
- 部编版小学道德与法治五年级上册第四单元测试卷含答案(共2套).pdf VIP
- 落实全面从严治党方面存在的问题及整改措施【10篇】.docx VIP
文档评论(0)