《微机应用系统设计》实验指导

上传人:woxinch****an2018 文档编号:38969853 上传时间:2018-05-10 格式:DOC 页数:25 大小:1.76MB
返回 下载 相关 举报
《微机应用系统设计》实验指导_第1页
第1页 / 共25页
《微机应用系统设计》实验指导_第2页
第2页 / 共25页
《微机应用系统设计》实验指导_第3页
第3页 / 共25页
《微机应用系统设计》实验指导_第4页
第4页 / 共25页
《微机应用系统设计》实验指导_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《《微机应用系统设计》实验指导》由会员分享,可在线阅读,更多相关《《微机应用系统设计》实验指导(25页珍藏版)》请在金锄头文库上搜索。

1、第三部分第三部分 实验内容实验内容软件实验一软件实验一 仿真软件的使用及简单指令练习仿真软件的使用及简单指令练习实验目的实验目的: 了解 Dais-52PH+ 实验箱的组成结构,学习仿真软件使用方法;通过编写清零程序、拆 字和数据块传送等程序,掌握简单汇编语言设计和调试方法。 实验内容实验内容: 1 观察实验箱,了解 Dais-52PH+ 实验箱的结构,区分实验箱 8155、EPROM 编程电 路、38 译码器电路、液晶显示等功能模块,找出单片机数据总线、地址总线接口 及各类控制信号接口。 2 熟悉 dais-MCS51 仿真开发系统,通过编写简单的汇编语言程序学习仿真软件的使 用。观察编译工

2、具、调试工具、调试窗口、寄存器窗口、 存储器窗口的内容及使 用方法。 实验框图实验框图: 软件实验分为三个子程序,分别是清零程序、拆字程序和数据块传送程序。 清零程序流程图:编写程序实现将数据存储单元 2000H-20FFH 单元内容清零。思考:(1)如果将数据存储单元 2000H-20FFH 单元内容改写为 FFH,该如何实现?(2)如果将数据存储单元 3000H-30FFH 单元内容改写为 00H,该如何实现?(3)在数据传送过程中,地址总线和数据总线上的数据分别是什么? 拆字程序流程图:编写程序将 2000H 存储单元中内容拆分,高位送 2001H 低位, 低位送 2002H 低位,20

3、01H、2002H 高位清零。2思考:(?1)如果将 2001H 存储单元的低位和 2002H 单元的低位合并放在 2003H 单元, 其中 2001H 存储单元的低位放在 2003H 单元低位,2002H 单元的低位放在 2003H 单元高 位,该如何编写程序? 数据块传送子程序流程图:把 1000H10FFH 区域内的数据逐个搬到从 2000H 单 元开始的区域中。思考:(1)如何用断点方式调试上述程序? (2)如何察看某个数据单元内容?实验步骤:实验步骤: 1 分别根据上述 3 个实验要求和流程图编写汇编语言程序。 2 编译、改错,直到编译通过。 3 装载程序后,用单步或连续方式运行程序

4、,并检查数据存储单元和存储器中相应3数据在执行程序前后内容变化。 4 根据思考题出的问题,改变程序后,再观察。 5 撰写实验报告。 实验要求:实验要求: 1 根据要求,写出实验程序。并对程序中关键语句写出注释。 2 分析实验结果。并写出思考题答案。 需要的仪器设备:需要的仪器设备: 1 PC 机一台; 2 单片机教学实验系统一套。包括 Dais-52PH+ 实验箱一个和 DaisMCS51 仿真软件 一套。4软件实验二软件实验二 二进制到二进制到 BCD 的转换的转换实验目的实验目的 了解如何将二进制数转换成BCD码,掌握简单的数制转换算法。将二进制到BCD转换程 序写成子程序,了解主程序调用

5、子程序的过程。 实验内容实验内容将累加器ACC内容拆为三个BCD码,存入内部数据缓冲区20H开始的三个存储单元中。 实验框图实验框图开始给出要转换二进制数将数除以 100,得百位 数保存百位数将余数再除以 10,得十位数保存十位数余数为个位数,保存个位数结束思考:(1)如何将二进制码转换成ASCII码? (2)程序调用过程中,如果需要保护某些寄存器的内容,应如何处理?具体怎么 实现?(3)子程序中如果没有RET语言,会出现什么问题? 实验原理实验原理 1BCD码原理 BCD码是用二进制数来表示十进制数的表示方法。BCD有两种形式,压缩的BCD码和非 压缩的BCD码。常用压缩的BCD码,它是一种

6、用四位二进制数表示十进制数。首先是用四 位二制数表示个数,然后用四位二进制数表示十位, 然后百位.。又称8421码。 比如:251需要三个四位二进制数表示。 1表示为0001;5表示为0101;2表示为0010. 最后251的BCD数据表示为0010 0101 0001. 2二进制数转换BCD码5二进制数转换BCD码非常简单,将要转换数先除以100,得BCD码百位,再将余数除以 10,得BCD码十位,余数为个位。 实验步骤实验步骤: 1 根据实验要求和给定流程图编写程序; 2 编译、改错,直到编译通过。 3 装载程序后,用单步或连续方式运行程序,并检查 ACC 和存储单元 20H22H 内 容

7、。 4 改变累加器 ACC 数值,运行程序后再观察。 5 撰写实验报告并分析实验结果。并对思考题做出解答。6软件实验三、多分支及循环程序的设计软件实验三、多分支及循环程序的设计实验目的实验目的 了解简单分支和多分支及循环程序结构及实现方法。通过这个实验,学习汇编语言中 分支程序及循环程序的设计方法。 实验内容实验内容 1 在内部数据存储器32H单元的数据段中存有一无符号数数据块,长度在31H单元, 求出数据块中最大值,并存入30H单元中。 2 2 在20H中分次送入00,01,02,03,每次运行程序后,观察数码管上数字循环状态。实验框图实验框图开始取数据块长度R1A 内容清零数据块首地址R0

8、A 与 R0 内容比较,将大值AR1 减 1 R1 为 0?R0 加 1YNA(30H )结束循环程序流程图7开始(20H)送 AA+ 散转首址0 字循环1 字循环2 字循环3 字循环多分支程序流程思考:常用的多分支程序设计方法有哪些?你采取的是那种方法,有什么优点?还可以如 何实现? 实验原理:实验原理:分支程序根据不同的条件转向执行不同的程序段,又称为条件分支程序。分为简单分 支程序和多路分支程序两种。对于条件比较简单,所分支路不多(一般对判断条件,有yes或no)时,称为简单分支 程序,在程序中常常见到。根据某变量的内容,分别转入处理程序0,处理程序1,处理程序N。这种类型的分支 称为多

9、路分支程序,又称为散转程序。 实验步骤实验步骤 1 根据实验要求和给定流程图编写程序。 2 编译、改错,直到编译通过。 3 设定 20H、31H 及相应数据值。 4 装载程序后,用单步或连续方式运行程序,并检查 ACC 和存储单元 30H 内容。 5 循环程序和多分支程序建议采用断点方式调试程序。 6 撰写实验报告并分析实验结果。并对思考题做出解答。8软件实验四软件实验四 单字节和双字节加法程序设计单字节和双字节加法程序设计实验目的实验目的: 熟悉 MCS-51 加减乘除运算类指令的使用方法,掌握单字节和双字节加法运算程序 设计和调试方法。 实验内容:实验内容: 1 要求存放在从 40H 开始

10、的 RAM 单元中的多个单字节数相加,和为双字节,存放 在寄存器 R3,R4 中。单字节数的个数放在 R2 中。 2 双字节数存放在从 40H 开始的 RAM 单元中的多个双字节数相加,和为双字节, 存放在寄存器 R3,R4 中。双字节数的个数放在 R2 中。 实验框图:实验框图: 双字节加法程序流程图:开始n 送 R2两个加数相加和低字节送 R3,高字节送 R4循环次数 n 减 1n 为 0?YN结束实验步骤:实验步骤: 1 根据实验要求和给定流程图编写程序。 2 编译、改错,直到编译通过。 3 设定 R2 及 40H 开始数据存储单元数据值。 4 装载程序后,用单步或连续方式运行程序,并检

11、查 R3、R4 内容。 5 撰写实验报告并分析实验结果。9硬件实验一硬件实验一 I/O 接口实验接口实验实验目的实验目的: 熟悉实验系统,重点了解实验箱的组成结构和各个功能模块,了解单片机 I/O 接口特 点、掌握关于 I/O 接口的编程方法并编写软件延时程序。 实验内容:实验内容: 1.P1 口循环点灯:P1 口准双向口,每一位都可独立地定义为输出/输入。P1 作为输 出口,接 8 只发光二极管,编写程序,使发光二极管循环点亮。 2.P1 口用作输入输出接口:P1.0、P1.1 用作输入口,分别接拨动开关 S0、S1; P1.2,P1.3 作输出口,接两个发光二极管,编写程序读取开关状态并将

12、此状态在 发光二极管上显示。 注意:本实验中延时子程序采用指令循环来实现,机器周期(12/6MHz)*指令所需机器周期 数*循环次数,在系统时间允许的情况下可以采用此方法。 实验电路及连线:实验电路及连线:P1.0 - LED0 P1.0 - S0P1.1 - LED1 P1.1 - S1P1.2 - LED2 P1.2 - LED2P1.3 - LED3 P1.3 - LED3P1.4 - LED4P1.5 - LED5P1.6 - LED6P1.7 - LED7 实验 1 P1 口循环点灯 实验 2 P1 口输入输出 实验说明:实验说明: 1、 P1 口是准双向口。它作为输出口时与一般的双

13、向口使用方法相同。由准双向口结构可 知当 P1 口用作输入口时必须先对它置“1” 。否则读入的数据是错误的。 2、 延时子程序的延时计算问题 子程序 Delay:MOV R7,#200 DEL1:MOV R6, #123 NOP DEL2:DJNZ R6,DEL2DJNZ R7,DEL1 RET 查指令表可知执行 MOV 指令需用 1 个机器周期,DJNZ 指令需用 2 个机器周期, 在 12MHz 晶振时,一个机器周期时间长度为 1s,所以该段程序执行时间为: 11 12 12322002150usms 10程序框图:程序框图:P1 口循环点灯 P1 口输入输出 思考题(1)改变延时常数,使

14、发光二极管闪亮时间改变。 (2)修改程序,使发光二极管闪亮移位方向改变。实验步骤:实验步骤: 1 根据实验要求设计流程图并编写程序。 2 将实验箱断电后,按照实验电路图连线。 3输入源文件,编译、直至编译通过。 4 在确保 PC 机与实验机之间连接正常的情况下,装载程序,用单步或连续方式运行程 序,观察发光二极管闪亮移位情况。 5 撰写实验报告并分析实验结果。实验中的注意事项实验中的注意事项 1 用导线进行电路连线时,应将实验箱的电断开并防止短路。 2 注意拉直导线裸露部分防止相互短接。开始延时设置初始值数据输出左移一位开始读入 P1.0 口值将读入的值输出到 P1.3P1.0、P1.1 置

15、1将读入的值输出到 P1.2读入 P1.0 口值11硬件实验二硬件实验二 简单简单 I/O 口扩展实验口扩展实验用用 74LS244 缓冲输入、缓冲输入、74LS273 锁存输出锁存输出实验目的:实验目的: 了解CPU 常用的简单接口扩展的方法;学习利用74LS244,74LS273完成I/O接口的扩 展。掌握用74LS244进行数据读入,用74LS273进行数据输出的方法。 实验内容:实验内容: 1利用实验箱上8个逻辑电平开关作为74LS245的输入,输入不同的数据值,在LED 显示器显示不同的数值。 2将8个逻辑电平量通过74LS273输出,控制8个LED灯。 实验电路及连线:实验电路及连线:实验原理:实验原理: 单片

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号