单片机实验:汇编语言编程与P3、P1口应用

需积分: 9 1 下载量 150 浏览量 更新于2024-08-16 收藏 1.39MB PPT 举报
"实验程序-单片机原理及应用实验" 这个实验是关于单片机原理及应用的,主要针对机械与电子工程学院的学生,由指导教师李晋阳负责。实验中使用了汇编语言编程,并在8031单片机上进行实践。实验的目的是让学生熟悉单片机的使用,包括汇编语言编程、接口技术和实际操作。 实验教材为《单片机原理及其接口技术实验》,作者为丁筱铃等人,出版于山东农业大学。实验课程共安排了9个学时的上机时间,地点位于机电学院机房,按照教学日历进行。学生需要独立完成实验内容,通过上机调试,并且每次实验后要撰写实验报告。三次无故缺席上机或在上机时间上网都将被视为不合格。 实验内容分为多个部分,首先是汇编语言软件调试实验,旨在让学生掌握汇编语言设计和调试,熟悉键盘操作。实验任务是将7000H到70FFH的内存区域清零。实验流程包括设置初始寄存器R0为00,然后逐个将00写入指定地址,直到R0等于FF。学生需要使用单片机开发环境进行程序加载、设置PC起始地址、运行和检查内存内容。 第二个实验是8031单片机的P3和P1口应用。实验目的是让学生了解P3和P1口的使用以及延时程序的编写。实验任务是通过P3.3口接收外部脉冲,每次接收到脉冲时,P1口的输出值按十六进制增加。P1口则用于驱动8个发光二极管,实现特定的显示效果。 实验程序中,程序起始于0000H,跳转到ST标签处执行。首先设置堆栈指针SP为60H,然后清零累加器A。在KK标签处,设置P3.3为高电平,如果P3.3仍然为高,则调用DL10MS延时子程序,等待一段时间。如果P3.3变为低电平,再次调用延时子程序,然后递增A并将其值移动到P1口,再跳回到KK标签,重复此过程。 DL10MS延时子程序通过循环计数实现,使用R6和R7两个寄存器,内部包含空操作(NOP)来延时。当R6和R7计数完毕后,子程序返回。 这个实验涵盖了单片机基础操作、接口编程、输入/输出控制以及延时函数的编写,旨在提升学生的实践能力和对单片机系统的理解。