分支与循环程序设计实验 报告汇总.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验名称 分支与循环程序设计实验 指导教师 罗志祥 专业班级 光电 1406 姓名 段昳晖 学号 U2014***** 联系电话 137** 一、任务要求 设有 8bits 符号数 X 存于外部 RAM 单元,按以下方式计算后的结果 Y 也存于外部 RAM 单元, 请按要求编写完整程序。 利用 51 系列单片机设计一个 24 小时制电子时钟,电子时钟的时、分、秒数值分别通过 P0、P1、P2 端口输出(以压缩 BCD 码的形式)。为低电平时开始计时,为高电平时停止计时。设计 1s 延时子程序(延时误差小于 10us,晶振频率 12MHz)。 二、设计思路 设有 8bits 符号数 X 存于外部 RAM 单元,按以下方式计算后的结果 Y 也存于外部 RAM 单元, 请按要求编写完整程序。 将外部单元 1000H 中的 X,通过分支判断,分别执行不同的语句,三条语句分别为标记为 L1、L2、L3,先比较 X 与 64 的大小关系,再判断 X 与 10 的大小关系,主要利用比较转移指令CJNE,以及执行CJNE 指令后的进位位CY,进一步比较大小,分别跳转至对应语句。将结果存于外部单元的1001H 以及 1002H。 利用 51 系列单片机设计一个 24 小时制电子时钟,电子时钟的时、分、秒数值分别通过 P0、P1、P2 端口输出(以压缩 BCD 码的形式)。为低电平时开始计时,为高电平时停止计时。设计 1s 延时子程序(延时误差小于 10us,晶振频率 12MHz)。 主程序设计三层循环,分别对应时、分、秒,最内层安放一秒延时程序。利用 R0、R1、R2 计数, R3 保存分钟数、R4 保存小时数,最内层循环 60 次,中循环循环 1 次,中循环 60 秒,外循环循环 1 次,外循环循环 24 次,清零。其中对端口显示的秒数、分钟数、时间数,进行二进制修正。利用循环来设计延时程序,合理计算语句长度,以及循环次数。 程序运行时修正的值,可以实现暂停计数和继续的功能。提高部分(选做): 实现 4 位十进制加、减 1 计数,千位、百位由 P1 口输出;十位、个位由 P2 口输出。利用 状态选择加、减计数方式。 利用 P3 口低四位状态控制开始和停止计数,控制方式自定。 初始化 P1、P2,,计数循环中插入一秒延时程序。R1 存千百位、R2 存个十位,=0 时,进行加1 计数,取出R2 中的数存于 A,对A 加 1,同时进行十进制修正,存于P2,达到 99,则进位对千百位进行加 1。=1 时,进行减一操作,取出R1 中的数存于 A,对A 减 1,同时进行十进制修正,存于P1,达到 0,则对 P2,对 R2 进行减一。 计数循环前判断的值,当=1 时,开始计数,=0 时,原地循环,停止计数,直到=1,可以实现随时停止与开始。 三、资源分配 设有 8bits 符号数 X 存于外部 RAM 单元,按以下方式计算后的结果 Y 也存于外部 RAM 单元, 请按要求编写完整程序。 X 存于片外 1000H Y 存于片外 1001H、1002H 其中,求平方时,低位存于 1001H,,高位存于 1002H 除二时,商存于 1001H,,余数存于 1002H 利用 51 系列单片机设计一个 24 小时制电子时钟,电子时钟的时、分、秒数值分别通过 P0、P1、P2 端口输出(以压缩 BCD 码的形式)。为低电平时开始计时,为高电平时停止计时。设计 1s 延时子程序(延时误差小于 10us,晶振频率 12MHz)。 P0 输出小时数P1 输出分钟数P2 输出秒数 R0 小时循环计数R1 分钟循环计数R2 秒循环计数R3 保存分钟数R4 保存小时数 提高部分(选做): 实现 4 位十进制加、减 1 计数,千位、百位由 P1 口输出;十位、个位由 P2 口输出。利用状态选择加、减计数方式。 利用 P3 口低四位状态控制开始和停止计数,控制方式自定。P1 输出千百位 P2 输出个十位 计数开始与停止控制加 1 减 1 计数切换 R1 存千百位R2 存个十位 四、流程图 设有 8bits 符号数 X 存于外部 RAM 单元,按以下方式计算后的结果 Y 也存于外部 RAM 单元, 请按要求编写完整程序。 利用 51 系列单片机设计一个 24 小时制电子时钟,电子时钟的时、分、秒数值分别通过 P0、P1、P2 端口输出(以压缩 BCD 码的形式)。为低电平时开始计时,为高电平时停止计时。设计 1s 延时子程序(延时误差小于 10us,晶振频率 12MHz)。 提高部分(选做): 实现 4 位十进制加、减 1 计数,千位、百位由 P1 口输出;十位、个位由 P2 口输出。利用状态选择加、减计数方式。 利用 P3 口低四位状态控制开始和停止计数,控制方式自定。五、源代码

文档评论(0)

hao187 + 关注
官方认证
文档贡献者

该用户很懒,什么也没介绍

认证主体武汉豪锦宏商务信息咨询服务有限公司
IP属地上海
统一社会信用代码/组织机构代码
91420100MA4F3KHG8Q

1亿VIP精品文档

相关文档