ZY15MCU12BD实验指导书Word格式.docx

上传人:b****3 文档编号:18410853 上传时间:2022-12-16 格式:DOCX 页数:78 大小:1.65MB
下载 相关 举报
ZY15MCU12BD实验指导书Word格式.docx_第1页
第1页 / 共78页
ZY15MCU12BD实验指导书Word格式.docx_第2页
第2页 / 共78页
ZY15MCU12BD实验指导书Word格式.docx_第3页
第3页 / 共78页
ZY15MCU12BD实验指导书Word格式.docx_第4页
第4页 / 共78页
ZY15MCU12BD实验指导书Word格式.docx_第5页
第5页 / 共78页
点击查看更多>>
下载资源
资源描述

ZY15MCU12BD实验指导书Word格式.docx

《ZY15MCU12BD实验指导书Word格式.docx》由会员分享,可在线阅读,更多相关《ZY15MCU12BD实验指导书Word格式.docx(78页珍藏版)》请在冰豆网上搜索。

ZY15MCU12BD实验指导书Word格式.docx

有关实验的程序设计将在后章节中详细讨论,有关实验原理图请参见图1-2~图1—14。

在该实验箱中给出了各硬件模块中的常用信号,这些信号供线选法产生片选信号或单片机的I/O应用实验所用。

“51单元”模块中34个插口为单片机的功能端口;

几个主要模块都有“D0~D7”八个数据端口,当用到该模块时均要与“P00~P07”相连;

KK0~KK7为8个开关输出端,随开关状态变化;

0809的EOC,供温度、压力输出信号测量用;

SA、SB、SC、SD为步进马达驱动器输入端,做步进马达实验时应作适当的连接;

CKMOT电机转速输出信号,在示范程序中接P32;

L0~L7为8个发光二极管的驱动器输入端,当输入端为低电平时,发光管亮,供8031的P1口等应用实验用。

图1-2单片机实验箱各接口电路地址分布示意图(译码法)

 

图1-3单片机模块部分

图1-4压力测量电路(电子称原理)

图1-5温度测量电路

图1-6ADC0809电路

图1-7DAC0832及直流电机电路

图1-8串转并实验原理图

图1-9开关和指示灯电路图

第二章MCS-51单片机应用实验

本章内容安排了软件实验、接口和系统扩展实验及应用实验。

若用实验箱内置仿真器,在进行实验之前必须详细了解实验箱内置仿真器的使用及软件操作(见附录:

KeilC516.02使用说明);

若选用其它仿真器,则同样要掌握仿真器的性能及基本操作方法。

一、实验步骤

1、详细参阅所选仿真器的使用说明书。

2、将实验箱、仿真器、PC机连接好。

3、打开实验箱及PC机电源,运行仿真器软件,调入范例,将所做实验相关连线接好(具体连接详见各实验项目)。

4、汇编、调试实验程序,观察结果,排除故障,直到所有软、硬件正确为止。

二、实验示范方法

1、使用选定的仿真器与PC机连接,并使仿真器进入仿真状态。

2、将提供的光盘上相应的实验程序文件装载入仿真RAM。

3、从起始地址开始连续运行,对照相应实验要求进行操作。

三、实验注意点

1、当使用实验箱内置仿真器时,实验前要确定将K10拨至B端,使89C58处在仿真状态;

若在实验中用到P13口,等程序经过仿真运行后,再将其拨至上端做正常的I/O口用。

(详见附录“KeilC516.02使用说明”末尾的“IAP编程操作”)

2、使用的是另外配置的其它仿真器,则要确定使K10拨至A端。

3、在每一个实验开始前需要将KC拨到上端。

第一部分软件实验

实验一定时器实验

一、实验目的

1、了解定时器的工作原理。

2、学会设计定时器实现秒计数。

二、实验设备

ZY15MCU12BD实验箱,连接线若干,串口线,PC机。

三、实验内容

1、源文件的名称为“ZYT0.ASM”。

2、“P00~P07”与“U7D0~U7D7”用八根线分别相连。

3、编写并调试一个程序,用定时器T0定时中断控制软件计数器计数,使计数器从0开始以1秒的速度十进制加1计数,显示器实时地显示其计数值。

四、实验程序参考框图如下图2-1所示

图2-1定时器T0计数程序流程

五、调试方法

1、断点设在BK1,检查显示缓冲器、工作单元、中断寄存器、定时器寄存器初值是否正确。

2、断点设在BK2,从开始全速运行,应碰到断点,即进入定时器中断服务程序,如碰不到BK2,回到

(1)检查初始化程序正确性,检查中断入口(000BH)的指令正确与否。

3、从开始运行到BK3,然后单步运行程序,检查3EH~39H的十进制计数程序正确性。

4、全速运行程序,调节定时器T0初值或方式,调节软件(控制1秒)计数器(RAM单元)初值,使显示器以1秒速率十进制加1。

实验二电子钟实验

1、电子钟的工作原理。

2、学会编程实现电子钟。

1、源文件的名称为“ZYCLOC.ASM”。

2、将“P00~P07”与“U7D0~U7D7”用八根线分别相连。

3、编写并调试一个实验程序,其功能为从单片机实验箱上的键盘输入一个时间初值

(时、分、秒各两位),用T0产生250μs定时中断,在中断服务程序中对T0的中断次数进行计数,每当计数到400次,即1秒,对实时钟计数。

四、实验程序参考框图如图2-2所示

图2-2电子钟实验参考程序框图(其中显示子程序、T0中断子程序略)

1、采用单步进入方式调试。

2、全速断点方式进行调试,分别将断点设在不同的子程序入口如T0中断等,碰到断

点后检查程序执行的结果。

若有错误,则再单步运行时钟计数子程序和数据转换子程序。

3、在程序基本达到功能后,调节定时器T0初值,使时钟走时精确。

实验三整数十六进制转十进制实验

1、了解整数十六进制转十进制的原理。

2、学会编程实现进制转换。

1、源文件的名称为“ZYBTD.ASM”。

3、编写并调试一个十六进制转换为十进制数的程序,其功能为从ZY15MCU12BD型的实验箱键盘上输入四位十六进制数,转换为6位十进制数并在实验箱的显示器上显示出来。

四、实验程序参考框图如图2-3所示

图2-3十六进制转十进制程序流程

注:

框图中延时1秒是为了看清显示器上显示的十六进制数和BCD码结果

1、全速运行至BK1,检查40H,41H,3BH~3EH内容是否为键入的数据。

2、从BK1全速运行至BK2,再从BK2运行到BK3,检查3AH~3EH的BCD码正确与否?

如有错从BK2单步运行到BK3,检查程序运行结果。

3、全速运行程序,每输入4位十六进制数,显示6位BCD码,用一组数据测试其程序

的正确性。

实验四查表实验

1、了解编程中查表的原理。

2、学会编写查表程序。

1、源文件的名称为“ZYTAB.ASM”。

3、编写并调试一个查表程序,其功能为读键盘输入的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-4所示

图2-4查表实验流程

1、断点设在BK1,按0~F键后,进入断点地址,检查ACC内容是否与键值正确对应。

2、断点设在BK2,程序运行至断点,检查ACC内容是否为键值对应跳转入口地址高位。

3、断点设在BK3,程序运行至断点,检查ACC内容是否为键值对应跳转入口地址低位。

4、程序连续运行,按键0~F,即在显示器上显示出相应散转地址。

若有错误,应改用单步或断点分段调试,排除软件错误,直到正确为止。

实验五两个四位十六进制数乘法实验

学会使用汇编语言编写两个四位十六进制乘法的程序。

三、实验原理

算法:

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位。

则不难看出,对它们进行错位相加,即按下列排序:

acHacL

adHadL

bcHbcL

+bdHbdL

并按列求和,用三次8位数加法和三次带进位加法便可以得到4字节的乘积。

其等同于:

R5R4×

R3R2=R4×

R2+R5×

R2×

28+R4×

R3×

28+R5×

216

四、实验内容

1、源文件的名称为“ZYMUL.ASM”。

2、将“P00~P07”与“U7D0~U7D7”用八根线分别相连。

3、编写并调试一个两个四位十六进制数相乘的实验,且显示结果也为十六进制数,其

功能为从单片机原理实验箱的键盘上连续两次输入四位十六进制数,从而得到八位十六进制数,其中,如果两数的有效数字都为四位或有一个为四位,另一个为三位,由于实验箱上只有六只数码管,那么其积的高两位将溢出,数码管只显示低六位有效数字。

当然,用户也可以自己编写乘法子程序,那么在编写子程序之前,应了解到第一位输入的四位十六进制数将存放在50H(高两位)、51H单元里,第二次输入的四位十六进制数存放在52H、53H单元里,用户在编写时只需直接调用50H~53H地址里的数据,而且计算结果必须存放在54H~57H(最高位)四个字节里,否则,用户同时还需要改动子程序如DEAL子程序等。

用户若要编写显示子程序、中断子程序,则必须先了解接口地址,如8279的命令口地址为5EFFH等。

1、单步执行到乘法子程序,检查50H~53H内容是否为键入的两个十六进制数。

2、单步进入执行完乘法子程序,检查54H~57H的计算结果是否正确。

3、全速运行程序,连续输入两组数据,检验实验结果正确与否(可以连续输入)。

实验六两个四位BCD数乘法实验

学会使用汇编语言编写两个四位BCD数乘法的程序。

四位BCD数相乘的算法与十六进制算法完全不同。

十六进制算法主要用乘法指令,并把乘的结果错位和进位相加便可得到。

而BCD码数的相乘则主要用移位和交换指令,并在移位的同时进行十进制调整,从而使另一个乘数不断自加来得到乘积结果。

1、源文件的名称为“ZYBCDMUL.ASM”。

3、编写并调试一个两个四位BCD数相乘的实验,且显示结果为BCD数,其功能为从单

片机原理实验箱的键盘上连续两次输入四位的BCD数,从而得到七位十进制数,同样,乘积如果有七位有效数字,则其最高位将溢出,数码管只显示低六位有效数字。

当然,用户完全可以自己编写乘法子程序,那么在编写子程序之前,应了解第一次输入的四位BCD码将存放在50H(高两位)、51H单元里,第二次输入的四位BCD码存放在52H、53H单元里,而计算结果要求存放在54H~57H(最高位)四个字节里,用户若要编写显示子程序、中断子程序,则必须先了解接口地址,如8279的命令口地址为5FFFH,传感器地址为5EFFH等。

五、实验程序参考框图如图2—5所示

图2-5两个四位BCD数乘法流程框图

六、调试方法

1、单步执行到乘法子程序,检查50H~53H内容是否为键入的两个BCD数。

2、单步进入执行完乘法子程序,检查54H~57H的计算结果是否正确。

3、全速运行程序,连续输入两组数据,检验实验结果正确与否(可以连续输入)。

实验七阶乘实验

学会使用汇编语言编写阶乘算法的程序。

此实验的算法原理类似BCD码乘法实验,也是利用BCD码的自加从而达到实验目的,不同的是其自加的次数在不断的自减1,直至自减次数为零。

1、源文件的名称为“ZYFAC.ASM”。

3、编写并调试一个在单片机实验箱的键盘上任意输入一个数,从而输出其阶乘运算结

果的程序,其输出结果为十进制数。

用户可以直接调用提供的参考子程序,也可以自己编写阶乘子程序。

五、实验程序参考框图略(类似BCD乘法实验框图)

1、可以用单步进入方式执行程序,也可以在子程序中设置断点,或者用光标执行方式,检查27H地址里的数据是否正确。

2、在单步执行阶乘子程序,检查54H~57H地址里的运算结果是否正确。

3、全速运行程序,输入任意一个数,键盘在延时一段时间后显示阶乘的结果(可以连续输入和运算)。

实验八两个四位十六进制除法实验

学会使用汇编语言编写两个四位十六进制除法的程序。

设在R7R6中存入被除数,在R5R4中存入除数,R3R2中存入余数。

则在先清零的情况下,不断地把R7R6中内容逐位移入R3R2,每移一次后,和R5R4的内容进行比较,若R3R2中的内容大于R5R4中的内容,则商上1;

否则商上0。

以此循环16次后得出商和余数。

得到余数后,判断余数乘2后是否大于除数,若大于除数则商再加1(即四舍五入),否则不加。

1、源文件的名称为“ZYDIY.ASM”。

3、编写一个在单片机实验箱上连续输入两个四位十六进制数,从而在数码管上显示其

商(经过四舍五入后的四位十六进制数)的实验程序。

用户可直接调用参考程序,也可以自己编写程序,但要注意被除数、除数、商及余数的存储地址。

五、实验程序参考框图如图2-6所示

图2-6两个16位无符号整数除法流程框图

1、可以用单步执行方式调试该除法程序,其中第一步执行过程同四位十六进制乘法实验。

即查看存储地址里的值是否与输入的键值相等。

2、运行除法子程序后,再次查看存储地址里的值,检查结果是否正确。

3、全速执行程序,连续不断的输入键值,每两次输出一个运算结果,并检查结果是否正确。

实验九排序实验

学会使用汇编语言编写排序算法的程序。

为了把六个单元中的数按从小到大的顺序排列,可从50H单元开始,两数逐次进行比较,保存小数取出大数,且只要有地址单元内容的互换就置位标志。

多次循环后,若两次比较后不再出现有单元互换的情况,就说明从50H~55H单元中的数已全部从小到大排列完毕。

1、源文件的名称为“ZYORDER.ASM”。

3、编写并调试一个连续输入六个数,从而在数码管上从小到大的顺序输出显示的程

序,用户可直接调用提供的参考程序,也可以自己编写程序,同样须注意数据存储的地址对各子程序必须匹配。

五、实验程序参考框图如图2-7所示

图2-7数据排序程序流程图

1、此步骤类似于BCD乘法实验,即检查存储地址里的值是否与输入的键值相等。

2、单步执行完排序子程序,检查运算结果是否正确。

3、全速执行程序,连续输入数据,每输入六个数后将按从小到大的顺序在数码管上显示出来。

实验十广告灯实验

学会使用控制I/O端口。

此实验为纯软件实验,程序比较简单,主要是一个对外界各种场合的动态广告灯模拟的查表程序,因此就不多作介绍。

1、源文件的名称为“ZYADV.ASM”。

2、编写并调试一个模仿外界广告灯的程序,此实验的自由度比较大,用户可以随便编

写一个从P1口输出的程序,发光二极管已经经过驱动,只需用户编好程序后,把“L0~L7”分别与“P10~P17”相连即可,在运行程序后将K10拨至上端,此实验做完后,再将K10拨回至下端。

1、单步执行程序,观察程序能否进入表格首地址。

2、单步执行程序,观察发光二极管L0~L7的变化。

3、全速执行程序,观察发光二极管的变化,并注意程序将循环下去。

第二部分I/O接口和系统扩展实验

本节编排了5个软硬件实验,其目的是对MCS—51的P1口、P3口的应用方法加深了解,利用ZY15MCU12BD型实验箱上的资源,掌握MCS—51系统扩展的原理,扩展系统的硬件调试方法,以及根据应用系统的配置,初步了解相应软件的编写和调试。

实验十一P1口应用实验

学会控制单片机的P1端口。

1、源文件的名称为“ZYP1.ASM”。

2、将实验板上的指示灯“L0~L3”接到“P10~P13”,开关“KK0~KK3”接到“P14~

P17”(注:

在运行程序后将K10拨至上端;

此实验做完后,再将K10拨回至下端)。

3、编写并调试一个实验程序,其功能为:

K3K2K1K0L3L2L1L0

0000全亮

0001全暗

0010一灯亮其余灯暗并左环移

0011一灯亮其余灯暗并右环移

0100一灯暗其余灯亮并左环移

0101一灯暗其余灯亮并右环移

1XXX显示开关状态Ki为0,Li亮

(1)设40H单元作为标志单元,(40)=0时开关状态无变化,(40)=FFH时开关状态发生了变化。

(2)设41H单元作为开关状态缓冲器,读入开头状态和41H内容比较,相同时开关状态无变化,不同时有变化。

(3)42H存放当前指示灯状态。

四、实验程序参考框图如图2-8所示

1、根据准双向口特性,对P1口写使灯L3~L0状态随写入P13~P10的内容变化,读

P1口的高4位,读出内容应随开关状态变化而变化。

如不对,则断开开关K0~K3的接线,测量K0~K3的电平是否随开关状态而变化。

2、从开始运行至BK1,检查A的内容是否对应于开关状态,接着单步运行程序,检查是否转到相应入口使L0~L3状态产生相应的变化。

3、全速运行至BK2,再检查A的内容是否和开关状态一致;

如不对则检查前面对P1口操作指令。

4、全速运行程序实现所要求的功能。

实验十二P1口、P3口应用实验-—三层楼电梯控制器模拟实验

1、学会控制单片机的P1和P3端口。

2、了解电梯的工作原理。

在实验板上“L0~L7”接“P10~P17”,“KK1~KK4”接P32~P35”,利用键盘

和显示器组成控制器输入输出设备。

编写并调试一个控制程序,实现电梯的上行、下行、开门、关门控制和状态的显示(注:

1.请示信号:

键盘1、2、3号键作为电梯内请求至1、2、3楼的按键,20号按键、21号按键作为电梯内请求关门、开门的请求键,16、17、18、19号键作为一层上楼、二层上下楼、三层下楼请求键。

2.开关量输入信号:

K1、K2、K3作为一层、二层、三层楼面定位开关信号,低电平时表示到达相应楼面,K4作为电梯门上有阻挡传感器信号。

3.状态指示信号:

L2、L3、L4、L5作为电梯外面请求上下楼状态指示。

L0、L1作为电梯上下行指示,L6、L7模拟电梯开门、关门动作。

4.楼层请示:

实验仿真器上最高位显示器LED6(对应于3EH),显示电梯当前所在楼面,低3位LED3~LED1(对应于3BH~39H)显示请求至3、2、1楼的信号。

四、实

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 书信模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1