1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,微机原理与接口技术(单片机)实验,实验三调整为以下内容(原大纲中内容改为以后选做),(1),子程序设计,(2),八路跑马灯实验,可根据学生掌握的情况由指导老师选择全作或作部分,1、通过实验学会汇编语言子程序的设计和调用。,2、熟悉,XLISP,系列 单片机综合仿真试验仪的组成和使用方法。,3,、学会应用,XLISP,仿真试验和,keil-uvision2,集成调试软件进行仿真实验。掌握仿真实验的步骤并能得到正确的实验结果。,MOV SP,#30H;,设置,SP,指向,30H,LOOP:MOV A,R0 ;,
2、取数,寄存器,A,作入口参数,ACALL SORT,;,调用求平方子程序,ADD A,R2 ;,累加平方和,MOV R2,A,INC R0 ;,修改指针,DJNZ R7,LOOP ;,未完,继续,SJMP EN,SORT:MOV DPTR,#,TAB,;,子程序查平方表,MOVC,A,A+DPTR,RET ;,返主程序,TAB:DB 0,1,4,9,16,DB 25,36,49,64,81,EN:SJMP$,END,要求观察子程序的调用过程和堆栈与指针,SP,的变化。,二、,八路跑马灯实验,1,、实验步骤,实验程序编写的方法和软件的实验使用已在前面的实验中学习过了,这里我们介绍一下如何在线仿真
3、以测试你的程序是否达到了预期目标,.,1),使用,USB,线,和,串口线,将综合仿真仪与微型计算机连接起来,(,使用,XL2000,综合仿真仪的同学需将,JP33,电源开关按下,);,2),在综合仿真仪上,将,JP13,和,JP14,两个,232/USB,通信选择方式端口的跳线帽跳至,232,的方式,使用,8P,的连接线将,JP44,(CPU,的,P1,口,),与,JP32,相连,;,3),将,JP17,的开关压下,选择仿真模式,;,6),单击,”,目标,”,输入仿真器的频率,:,12,(MHz);,8),在,”,调试,”,菜单中,选择如下功能,并点击,”,设置,”,进行,右图设置,注意你使
4、用,的是那个串口,(Com1,还,是其它的,可以查看,设备管理器,);,9),全部确定后,对程序进行编译,并生成相应的,HEX,文件后,进行调试,(,红色的,d,),;,如出现错误报告,要求连上仿真,仪时,请检查有无连接,USB,线和串,口线,并按下仿真仪上的复位键,;,10),进入调试窗口,连接上相关的连接线,点击,”,全速运行,”,即可观查仿真结果,;,11),退出仿真时,按下仿真仪上的复位键就会自动退到编辑模式下,修改完毕程序并编译后,再按下,”,调试,”,即可进入仿真模式,;,2,、参考程序,org 0000h ;,开始,ajmp loop,org 0030h ;,到,0030h,处避
5、开,00-30,的敏感地址,Loop:mov p1,#0ffh;,关闭所有灯,clr p1.0 ;,点亮灯,lcall delay ;,调延时子程序,clr p1.1 ;,点亮灯,lcall delay,clr p1.2 ;,点亮灯,lcall delay,clr p1.3 ;,点亮灯,lcall delay,clr p1.4 ;,点亮灯,lcall delay,clr p1.5 ;,点亮灯,lcall delay,clr p1.6 ;,点亮灯,lcall delay,clr p1.7 ;,点亮灯,lcall delay,AJMP LOOP;,到最开始,loop,处重新运行,delay:mov r5,#20 ;,延时子程序,d1:mov r6,#40,d2:mov r7,#248,djnz r7,$,djnz r6,d2,djnz r5,d1,ret,3,、自编程序,(1),修改延时子程序,改变延时时间,观察结果,(,2,),修改程序,改变,跑马灯的跑马顺序,观察结果,