试验参考指导书样本_第1页
试验参考指导书样本_第2页
试验参考指导书样本_第3页
试验参考指导书样本_第4页
试验参考指导书样本_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单片机试验指导书试验一系统认识试验一、试验目标1、了解ZY15MCU12BC2单片机试验开发装置接线和安排。掌握试验箱内拨位开关KF,KC使用方法。2、经过实例程序编辑、编译、链接及调试,熟悉KeilC51软件使用方法和基础操作。3、教育学生珍惜试验装置,养成良好试验习惯。二、试验设备1、ZY15MCU12BC2单片机试验开发装置一台。2、PC机及相关软件。三、试验内容1、使用串行通讯电缆将试验开发装置和PC机相连。2、开启PC机及试验开发装置,开启KeilC51软件进入uVision2集成开发环境。确定拨位开关KF开关为A端,确定89C51处于仿真状态。在uVision2开发平台上建立并编辑示例程序:计算N个数求和程序。其中N个数分别放在片内RAM区50H到55H单元中,N=6,求和结果放在片内RAM区03H(高位)和04H(低位)单元中。题目:1)32H+41H+01H+56H+11H+03H=?2)95H+02H+02H+44H+48H+12H=?编译连接源程序。在KeiluVision2主菜单窗口进入DEBUG调试环境,打开存放器窗口输入数据至片内RAM区50H到55H单元中,全速运行程序,并检验程序运行结果,即观察在存放器窗口片内RAM区03H(高位)、04H(低位)单元中数据是否正确。试验结束,撤出接线,将一切整理复原。试验源程序 org 0000h ljmpmain org1000hmain: movr2,#06h mov r3,#00h movr4,#00h movr0,#50hl1: mova,r4 adda,@r0 movr4,a incr0 clra addca,r3 movr3,a djnzr2,l1 end试验二多字节十进制加法试验一、试验目标1、学习51运算指令使用方法及对标志位影响。2、学习循环程序编程方法。3、掌握51内部RAM和寄存器之间关系。二、试验设备ZY15MCU12BC2试验箱,连接线若干,串口线,PC机。三、试验内容1、编写多字节十进制加法程序,实现下式运算:4574+6728=11302要求:被加数在片内RAM区20H、21H单元;加数在片内RAM区30H、31H单元;结果在片内RAM区20H(最高位进位)、21H(高位)、22H(低位)单元。结果:20H=1,21H=13,22H=02;2、完成程序设计、编辑、编译、连接。四、调试方法进入DEBUG方法,打开存放器Memory1窗口,在窗口Address栏键入D:20H;点击鼠标右键,选择最终一项ModifyMemory,输入被加数;在窗口Address栏键入D:30H;点击鼠标右键,选择最终一项ModifyMemory,输入加数。(选作)整数十六进制转十进制试验一、试验目标1、了解整数十六进制转十进制原理。2、学会编程实现进制转换。二、试验设备ZY15MCU12BC2试验箱,连接线若干,串口线,PC机。三、试验内容1、源文件名称为“ZYBTD.ASM”。2、将“P00~P07”和“U7D0~U7D7”用八根线分别相连。3、编写并调试一个十六进制转换为十进制数程序,其功效为从ZY15MCU12BC2型试验箱键盘上输入四位十六进制数,转换为6位十进制数并在试验箱显示器上显示出来。四、试验程序参考框图图1所表示图1十六进制转十进制程序步骤注:框图中延时1秒是为了看清显示器上显示十六进制数和BCD码结果五、调试方法1、全速运行至BK1,检验40H,41H,3BH~3EH内容是否为键入数据。2、从BK1全速运行至BK2,再从BK2运行到BK3,检验3AH~3EHBCD码正确是否?如有错从BK2单步运行到BK3,检验程序运行结果。3、全速运行程序,每输入4位十六进制数,显示6位BCD码,用一组数据测试其程序正确性。

(选作)查表试验一、试验目标了解编程中查表原理。学会编写查表程序。二、试验设备ZY15MCU12BC2试验箱,连接线若干,串口线,PC机。三、试验内容源文件名称为“ZYTAB.ASM”。将“P00~P07”和“U7D0~U7D7”用八根线分别相连。编写并调试一个查表程序,其功效为读键盘输入0~F数字键,经过查表得到各键处理程序入口,并将入口地址在试验仿真器显示器上显示出来。数字键“0”——8000H数字键“1”——8200H数字键“2”——8400H数字键“3”——8600H数字键“4”——8800H数字键“5”——8A00H数字键“6”——8C00H数字键“7”——8E00H数字键“8”——9000H数字键“9”——9200H数字键“A”——9400H数字键“B”——9600H数字键“C”——9800H数字键“D”——9A00H数字键“E”——9C00H数字键“F”——9E00H四、试验程序参考框图图2所表示图2查表试验步骤五、调试方法断点设在BK1,按0~F键后,进入断点地址,检验ACC内容是否和键值正确对应。断点设在BK2,程序运行至断点,检验ACC内容是否为键值对应跳转入口地址高位。断点设在BK3,程序运行至断点,检验ACC内容是否为键值对应跳转入口地址低位。程序连续运行,按键0~F,即在显示器上显示出对应散转地址。若有错误,应改用单步或断点分段调试,排除软件错误,直到正确为止。(选作)两个四位十六进制数乘法试验一、试验目标学会使用汇编语言编写两个四位十六进制乘法程序。二、试验设备ZY15MCU12BC2试验箱,连接线若干,串口线,PC机。三、试验原理算法:MCS—51中有8位数乘法指令MUL,用它来实现双精度数相乘时,能够把被乘数(ab)和(cd)分别表示为(az+zb)和(cz+zd),其中a、b、c、d全部是8位数,a、c为高位,b、d为低位,z表示8位0。它们乘积用下式表示:(az+zb)(cz+zd)=aczz+zadz+zbcz+zzbd其中ac、ad、bc、bd为对应2个8位数乘积,占十六位,它们能够用四次乘法指令MUL求出。若把这十六位积表示为acH、acL、adH、adL、bcH、bcL和bdH、bdL,其中以H为后缀为积高8位,以L位后缀为积低8位。则不难看出,对它们进行错位相加,即按下列排序:acHacLadHadLbcHbcL+bdHbdL并按列求和,用三次8位数加法和三次带进位加法便能够得到4字节乘积。其等同于:R5R4×R3R2=R4×R2+R5×R2×28+R4×R3×28+R5×R3×216四、试验内容源文件名称为“ZYMUL.ASM”。将“P00~P07”和“U7D0~U7D7”用八根线分别相连。编写并调试一个两个四位十六进制数相乘试验,且显示结果也为十六进制数,其功效为从单片机原理试验箱键盘上连续两次输入四位十六进制数,从而得到八位十六进制数,其中,假如两数有效数字全部为四位或有一个为四位,另一个为三位,因为试验箱上只有六只数码管,那么其积高两位将溢出,数码管只显示低六位有效数字。当然,用户也能够自己编写乘法子程序,那么在编写子程序之前,应了解到第一位输入四位十六进制数将存放在50H(高两位)、51H单元里,第二次输入四位十六进制数存放在52H、53H单元里,用户在编写时只需直接调用50H~53H地址里数据,而且计算结果必需存放在54H~57H(最高位)四个字节里,不然,用户同时还需要改动子程序如DEAL子程序等。用户若要编写显示子程序、中止子程序,则必需先了解接口地址,如8279命令口地址为5EFFH等。五、调试方法1、单步实施到乘法子程序,检验50H~53H内容是否为键入两个十六进制数。2、单步进入实施完乘法子程序,检验54H~57H计算结果是否正确。3、全速运行程序,连续输入两组数据,检验试验结果正确是否(能够连续输入)。

(选作)两个四位BCD数乘法试验一、试验目标学会使用汇编语言编写两个四位BCD数乘法程序。二、试验设备ZY15MCU12BC2试验箱,连接线若干,串口线,PC机。三、试验原理四位BCD数相乘算法和十六进制算法完全不一样。十六进制算法关键用乘法指令,并把乘结果错位和进位相加便可得到。而BCD码数相乘则关键用移位和交换指令,并在移位同时进行十进制调整,从而使另一个乘数不停自加来得到乘积结果。四、试验内容源文件名称为“ZYBCDMUL.ASM”。将“P00~P07”和“U7D0~U7D7”用八根线分别相连。编写并调试一个两个四位BCD数相乘试验,且显示结果为BCD数,其功效为从单片机原理试验箱键盘上连续两次输入四位BCD数,从而得到七位十进制数,一样,乘积假如有七位有效数字,则其最高位将溢出,数码管只显示低六位有效数字。当然,用户完全能够自己编写乘法子程序,那么在编写子程序之前,应了解第一次输入四位BCD码将存放在50H(高两位)、51H单元里,第二次输入四位BCD码存放在52H、53H单元里,而计算结果要求存放在54H~57H(最高位)四个字节里,用户若要编写显示子程序、中止子程序,则必需先了解接口地址,如8279命令口地址为5FFFH,传感器地址为5EFFH等。五、试验程序参考框图图3所表示图3两个四位BCD数乘法步骤框图六、调试方法单步实施到乘法子程序,检验50H~53H内容是否为键入两个BCD数。单步进入实施完乘法子程序,检验54H~57H计算结果是否正确。全速运行程序,连续输入两组数据,检验试验结果正确是否(能够连续输入)。

(选作)阶乘试验一、试验目标学会使用汇编语言编写阶乘算法程序。二、试验设备ZY15MCU12BC2试验箱,连接线若干,串口线,PC机。三、试验原理此试验算法原理类似BCD码乘法试验,也是利用BCD码自加从而达成试验目标,不一样是其自加次数在不停自减1,直至自减次数为零。四、试验内容源文件名称为“ZYFAC.ASM”。将“P00~P07”和“U7D0~U7D7”用八根线分别相连。编写并调试一个在单片机试验箱键盘上任意输入一个数,从而输出其阶乘运算结果程序,其输出结果为十进制数。用户能够直接调用提供参考子程序,也能够自己编写阶乘子程序。五、试验程序参考框图略(类似BCD乘法试验框图)六、调试方法1、能够用单步进入方法实施程序,也能够在子程序中设置断点,或用光标实施方法,检验27H地址里数据是否正确。2、在单步实施阶乘子程序,检验54H~57H地址里运算结果是否正确。3、全速运行程序,输入任意一个数,键盘在延时一段时间后显示阶乘结果(能够连续输入和运算)。

(选作)两个四位十六进制除法试验一、试验目标学会使用汇编语言编写两个四位十六进制除法程序。二、试验设备ZY15MCU12BC2试验箱,连接线若干,串口线,PC机。三、试验原理设在R7R6中存入被除数,在R5R4中存入除数,R3R2中存入余数。则在先清零情况下,不停地把R7R6中内容逐位移入R3R2,每移一次后,和R5R4内容进行比较,若R3R2中内容大于R5R4中内容,则商上1;不然商上0。以此循环16次后得出商和余数。得到余数后,判定余数乘2后是否大于除数,若大于除数则商再加1(即四舍五入),不然不加。四、试验内容源文件名称为“ZYDIY.ASM”。将“P00~P07”和“U7D0~U7D7”用八根线分别相连。编写一个在单片机试验箱上连续输入两个四位十六进制数,从而在数码管上显示其商(经过四舍五入后四位十六进制数)试验程序。用户可直接调用参考程序,也能够自己编写程序,但要注意被除数、除数、商及余数存放地址。五、试验程序参考框图图4所表示图4两个16位无符号整数除法步骤框图六、调试方法1、能够用单步实施方法调试该除法程序,其中第一步实施过程同四位十六进制乘法试验。即查看存放地址里值是否和输入键值相等。2、运行除法子程序后,再次查看存放地址里值,检验结果是否正确。3、全速实施程序,连续不停输入键值,每两次输出一个运算结果,并检验结果是否正确。

(选作)排序试验一、试验目标学会使用汇编语言编写排序算法程序。二、试验设备ZY15MCU12BC2试验箱,连接线若干,串口线,PC机。三、试验原理为了把六个单元中数按从小到大次序排列,可从50H单元开始,两数逐次进行比较,保留小数取出大数,且只要有地址单元内容交换就置位标志。数次循环后,若两次比较后不再出现有单元交换情况,就说明从50H~55H单元中数已全部从小到大排列完成。四、试验内容源文件名称为“ZYORDER.ASM”。将“P00~P07”和“U7D0~U7D7”用八根线分别相连。编写并调试一个连续输入六个数,从而在数码管上从小到大次序输出显示程序,用户可直接调用提供参考程序,也能够自己编写程序,一样须注意数据存放地址对各子程序必需匹配。五、试验程序参考框图图5所表示图5数据排序程序步骤图六、调试方法此步骤类似于BCD乘法试验,即检验存放地址里值是否和输入键值相等。单步实施完排序子程序,检验运算结果是否正确。全速实施程序,连续输入数据,每输入六个数后将按从小到大次序在数码管上显示出来。试验三定时器试验一、试验目标了解定时器工作原理。学会设计定时器实现秒计数。二、试验设备ZY15MCU12BC2试验箱,连接线若干,串口线,PC机。三、试验内容源文件名称为“ZYT0.ASM”。“P00~P07”和“U7D0~U7D7”用八根线分别相连。编写并调试一个程序,用定时器T0定时中止控制软件计数器计数,使计数器从0开始以1秒速度十进制加1计数,显示器实时地显示其计数值。四、试验程序参考框图以下图6所表示图6定时器T0计数程序步骤五、调试方法1、断点设在BK1,检验显示缓冲器、工作单元、中止寄存器、定时器寄存器初值是否正确。2、断点设在BK2,从开始全速运行,应碰到断点,即进入定时器中止服务程序,如碰不到BK2,回到(1)检验初始化程序正确性,检验中止入口(000BH)指令正确是否。3、从开始运行到BK3,然后单步运行程序,检验3EH~39H十进制计数程序正确性。4、全速运行程序,调整定时器T0初值或方法,调整软件(控制1秒)计数器(RAM单元)初值,使显示器以1秒速率十进制加1。

试验四电子钟试验一、试验目标1、电子钟工作原理。2、学会编程实现电子钟。二、试验设备ZY15MCU12BC2试验箱,连接线若干,串口线,PC机。三、试验内容源文件名称为“ZYCLOC.ASM”。将“P00~P07”和“U7D0~U7D7”用八根线分别相连。编写并调试一个试验程序,其功效为从单片机试验箱上键盘输入一个时间初值(时、分、秒各两位),用T0产生250μs定时中止,在中止服务程序中对T0中止次数进行计数,每当计数到400次,即1秒,对实时钟计数。四、试验程序参考框图图7所表示图7电子钟试验参考程序框图(其中显示子程序、T0中止子程序略)五、调试方法采取单步进入方法调试。全速断点方法进行调试,分别将断点设在不一样子程序入口如T0中止等,碰到断点后检验程序实施结果。若有错误,则再单步运行时钟计数子程序和数据转换子程序。在程序基础达成功效后,调整定时器T0初值,使时钟走时正确。试验五广告灯试验一、试验目标学会使用控制I/O端口。二、试验设备ZY15MCU12BC2试验箱,连接线若干,串口线,PC机。三、试验原理此试验为纯软件试验,程序比较简单,关键是一个对外界多种场所动态广告灯模拟查表程序,所以就不多作介绍。四、试验内容源文件名称为“ZYADV.ASM”。编写并调试一个模拟外界广告灯程序,此试验自由度比较大,用户能够随便编写一个从P1口输出程序,发光二极管已经经过驱动,只需用户编好程序后,把“L0~L7”分别和“P10~P17”相连即可,在运行程序后将K10拨至上端,此试验做完后,再将K10拨回至下端。五、调试方法1、单步实施程序,观察程序能否进入表格首地址。2、单步实施程序,观察发光二极管L0~L7改变。3、全速实施程序,观察发光二极管改变,并注意程序将循环下去。试验六P1口应用试验一、试验目标学会控制单片机P1端口。二、试验设备ZY15MCU12BC2试验箱,连接线若干,串口线,PC机。三、试验内容源文件名称为“ZYP1.ASM”。将试验板上指示灯“L0~L3”接到“P10~P13”,开关“KK0~KK3”接到“P14~P17”(注:在运行程序后将K10拨至上端;此试验做完后,再将K10拨回至下端)。编写并调试一个试验程序,其功效为:K3K2K1K0L3L2L1L00000全亮0001全暗0010一灯亮其它灯暗并左环移0011一灯亮其它灯暗并右环移0100一灯暗其它灯亮并左环移0101一灯暗其它灯亮并右环移1XXX显示开关状态Ki为0,Li亮(1)设40H单元作为标志单元,(40)=0时开关状态无改变,(40)=FFH时开关状态发生了改变。(2)设41H单元作为开关状态缓冲器,读入开头状态和41H内容比较,相同时开关状态无改变,不一样时有改变。(3)42H存放目前指示灯状态。四、试验程序参考框图图8所表示五、调试方法依据准双向口特征,对P1口写使灯L3~L0状态随写入P13~P10内容改变,读P1口高4位,读出内容应随开关状态改变而改变。如不对,则断开开关K0~K3接线,测量K0~K3电平是否随开关状态而改变。2、从开始运行至BK1,检验A内容是否对应于开关状态,接着单步运行程序,检验是否转到对应入口使L0~L3状态产生对应改变。3、全速运行至BK2,再检验A内容是否和开关状态一致;如不对则检验前面对P1口操作指令。4、全速运行程序实现所要求功效。

(选作)P1口、P3口应用试验-—三层楼电梯控制器模拟试验一、试验目标学会控制单片机P1和P3端口。了解电梯工作原理。二、试验设备ZY15MCU12BC2试验箱,连

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论