单片机第二次试验报告材料——分支程序设计.pdfVIP

  • 0
  • 0
  • 约5.8千字
  • 约 6页
  • 2020-07-09 发布于天津
  • 举报

单片机第二次试验报告材料——分支程序设计.pdf

实用标准文档 《微机实验》报告 实验名称 分支程序设计实验 专业班级 姓名 学号 序号 联系方式 一、任务要求 熟练掌握 KeilC 环境下汇编语言程序的调试方法,加深对汇编语 言指令、机器码、 寻址方式等基本内容的理解,掌握分支程序和简单 程序的设计与调试方法,了解并行 IO 口的使用。 1. 设有 8bits 符号数 X 存于外部 RAM 单元,按以下方式计算后 的结果 Y 也存于外部 RAM 单元,请按要求编写程序。 X 2 当X 40 Y X / 2 当20 X 40 X 当X 20 2. 利用 51 系列单片机设计一个 24 小时制电子时钟,电子时钟 的时、分、秒数值分别通过 P0 、P1 、P2 端口输出(以压缩 BCD 码 的形式)。P3.0 为低电平时开始计时,为高电平时停止计时。 提高部分(选做) : a. 实现 4 位十进制加、减 1 计数,千位、百位由 P1 口输出;十位、 个位由 P2 口输出。利用 P3.7 状态选择加、减计数方式。 b. 利用 P3 口低四位状态控制开始和停止计数,控制方式自定。 精彩文案 实用标准文档 二、设计思路 1.分段函数设计 对于第一个任务,相当于设计一个分段函数程序,根据变量 X 的值所处的区间进行相应的计算。 由学过的知识知道, 可利用比较转 移指令 CJNE 来判断 X 是否等于临界值 20,40 ,若不等,再根据执行 CJNE 指令后的进位位 CY 的值来判断 X 与临界值的的大小关系,易 知 CY=0 则 X 大于临界值, CY=1 则 X 小于临界值;如此,再进行 相应的计算。另外,除法计算中可能产生余数,商和余数应该分开存 储,若乘方运算结果大于 255 ,高八位与低八位应分开存储。 2. 24 小时制时钟程序 本程序须可以构建两部分循环。 首先构建一个三重循环实现 “一 秒延时”,循环体利用 NOP 指令(单字节指令, 1 μs )经多次循环达 到延时一秒的效果。再利用已经构建好的“一秒延时”部分,设计计 时系统的三重循环,秒( 0-59 )、分(0-59 )、时(0-23 )。需要注意 的是,在小时、分、秒达到 59 时,下一次应该为零。程序运行时修 改 P3.0 的值可以实现暂停和继续的功能。 3.加一减一程序 先初始化 P1 和 P2 ,然后当 P3 低四位均为 0 作为开始计数的 标志,每次计数中插一个延时程序。 P3.7 为 0 时进行加 1 计数:先 把低 2 位从 P2 中取出至 A ,对 A 进行 ADD 加一计数并进行十进制 修正,然后存进 P2 ;再把高 2 位从 P1 取出至 A ,对 A 进行 ADDC 的加进位操作并十进行进制修正,然后存进 P1 。P3.7 为 1 时进行减 精彩文案 实用标准文档 一计数:只需改用 ADD 指令加上 1 的补码即可, 高 2 位在第二位为 99 时进行同样的操作,最后分别用

文档评论(0)

1亿VIP精品文档

相关文档