实验一 汇编实验

实验一 汇编实验

ID:33205863

大小:206.12 KB

页数:4页

时间:2019-02-22

实验一 汇编实验_第1页
实验一 汇编实验_第2页
实验一 汇编实验_第3页
实验一 汇编实验_第4页
资源描述:

《实验一 汇编实验》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、实验一汇编实验一、实验目的①了解keil的运行环境,并掌握Keil软件的基本使用;②学习和掌握使用汇编语言编写程序;③学习单片机简单的I/O口的使用方法;④了解Proteus的运行和软件的基本使用。二、实验内容1、利用汇编语言编写程序,通过延时的方式由单片机I/O口产生一个方波,并由示波器观察输出方波的频率,并于理论计算值对比。2、本实验分为两个部分:仿真实验和操作实验。(1)仿真实验中,在Keil编程环境下新建工程,编辑代码,生成.hex文件。然后使用Proteus仿真软件画出对应的仿真电路图,并在proteus仿真环境中载入在Keil中生

2、成的.hex文件,再运行仿真软件,调试程序并观察实验结果,直到实现预见期效果。(2)操作实验中,通过仿真器将电脑和实验箱连接,在Keil软件中设置运行程序,在实验箱中可以看到实验要求的延迟效果,达到与仿真结果一致。三、实验原理1、本次实验要求设计的程序应该实现的功能是产生延迟效果。先对P1.0端口取反(CPL指令),然后调用延时子程序,再(DJMP指令)跳转到主程序处,主程序则形成一个无限循环。延时程序结束后返回主程序,如此无限循环,从而输出一个周期方波。2、实验流程图如下:3、仿真电路图如下:四、实验步骤1.在Keil环境中新建一个工程并且

3、对其进行保存。若是采用汇编语言编写程序,则保存文档时应该采用“*.asm”格式,若是采用C语言编写程序,则保存文档时应该采用“*.c”格式。2.在新建的空白文件中按照汇编语言的编辑格式编写汇编源代码,并且对所写的源代码进行调试并保存。3.编写完程序后,对汇编文件进一步的设置、运行成.hex文件,只有形成.hex文件,编写的源代码才能载入到Proteus仿真环境中进行实验验证。4.在Proteus仿真环境中,依据实验要求连接好仿真电路图。5.点击仿真电路图的AT89C51芯片,然后导入编写好的源代码。点击运行,即可在示波器中可以看到一个周期性方

4、波。五、实验结果(1)汇编源代码:ORG0000HLJMPMAINORG0100HMAIN:CPLP1.0,定义波形输出引脚CALLDelayJMPMAINDelay:DEL1:MOVR2,#500DEL2:MOVR1,#500DJNZR1,$DJNZR2,DEL2RETEND(2)连接的电路图:(3)示波器显示结果:(4)分析计算:已知本次实验外接晶振的频率为:12MHz,DJNZ指令占用了两个机器周期,而一个机器周期又等于晶振频率的十二分之一,故可得T=(500*2+2+1)*500=515000us六、实验心得:1.由于对汇编语言的编写

5、要求与格式不是很熟悉,所以有些不知道该从何入手去编写程序,经过查看单片机有关知识点与老师的指导,才有了头绪,最后才做出了实验。2.在老师的的指导下,不仅了解了keil与Proteus的运行环境,还学会,掌握了如何去使用Keil和Proteus这软件来完成实验任务。3.最后分析结果时,复习了已经生疏的知识点,重新掌握了晶振周期和其它周期的基本概念,并学会了如何去进行计算。4.老师给出的延时程序,由于延时的时间太短,在实验箱上实现的效果不明显,所以,在此将延时程序的时间进行了延长。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。