标题:分支程序设计实验实验报告
实验名称:分支程序设计实验
专业班级:光电1106
姓名:刘轮
学号:U201115096
联系方式:15527059435
一、任务要求:
本次实验要求熟练掌握KeilC环境下汇编语言程序的调试方法,加深对汇编语言指令、机器码、寻址方式等基本内容的理解,掌握分支程序和简单程序的设计与调试方法,了解并行IO口的使用。具体要求包括:
1. 将8位符号数X存储在外部RAM单元中,按指定方式计算后的结果Y也存储在外部RAM单元中,并且按要求编写程序。
2. 利用51系列单片机设计一个24小时制电子时钟,其中时、分、秒数值分别通过P0、P1、P2端口输出,以压缩BCD码的形式表示。利用P3.0端口控制开始和停止计时。
提高部分(选做):
a. 实现4位十进制加减1计数,其中千位和百位由P1口输出,十位和个位由P2口输出。利用P3.7状态选择加减计数方式。
b. 利用P3口低四位状态控制开始和停止计数,控制方式自定。
二、设计思路:
1. 分支程序设计
本次实验的主要设计思路是通过KeilC环境下汇编语言程序,首先处理将8位符号数X存入外部RAM单元中,并按指定方式对其进行计算,然后将结果Y也存储在外部RAM单元中。其次,利用51系列单片机设计一个24小时制电子时钟,时、分、秒数值分别通过P0、P1、P2端口输出,并利用P3.0端口控制开始和停止计时。在提高部分的选做要求中,还包括实现4位十进制加减1计数和利用P3口低四位状态控制开始和停止计数等内容。
三、实施步骤:
1. 分支程序设计
在处理8位符号数X存入外部RAM单元中时,首先要了解外部RAM单元的存储结构和工作原理,然后通过KeilC环境下的汇编语言程序编写将X存入RAM的代码。在计算后的结果Y存储在外部RAM单元中时,需要对计算的方式进行理解并设计相应的程序代码。
在设计24小时制电子时钟时,需要首先分析时、分、秒数值在P0、P1、P2端口输出的压缩BCD码的表示方式,然后编写相应的程序代码实现时钟的设计。同时,通过P3.0端口控制开始和停止计时的代码也需要相应的设计和实现。
在完成基本任务要求后,针对提高部分的选做要求,需要分析4位十进制加减1计数的实现方式,并根据P3.7状态选择加减计数方式的需求,设计实现相应的程序代码。同时,利用P3口低四位状态控制开始和停止计数的控制方式也需要自定,并对应编写程序代码实现此功能。
四、实验结果与分析:
通过对实验设计思路和实施过程的分析,我们顺利完成了实验任务要求,并针对提高部分的选做要求也进行了相应的设计和实现。在实验过程中,我们深入掌握了KeilC环境下汇编语言程序的调试方法,并加深了对汇编语言指令、机器码、寻址方式等基本内容的理解。通过分支程序设计实验,我们对分支程序和简单程序的设计与调试方法有了更深入的认识,也加深了对并行IO口的使用的了解。
五、存在问题与改进方向:
在实验过程中,我们也遇到了一些问题,例如在设计24小时制电子时钟时需要考虑时、分、秒数值的输出以及P3.0端口控制开始和停止计时等方面的问题。针对存在的问题,我们需要进一步加强对相关知识的学习和理解,以便更好地完成实验设计。
在今后的实验过程中,我们还需要继续加强对汇编语言程序的调试方法和相关基本内容的理解,不断提高实验设计和实施能力,同时也要注重对并行IO口的使用和控制方式的学习,以便更好地应用于实际的电子设计中。
六、总结:
通过本次实验,我们对分支程序设计有了更深入的理解,同时也加强了对KeilC环境下汇编语言程序的调试方法的掌握。实验中的设计思路和实施步骤也让我们更加熟悉了汇编语言程序的设计和编写过程。在今后的学习和实验中,我们将继续努力,不断提高实验水平,为将来的电子设计工作打下坚实的基础。