欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    微型计算机技术及应用.docx

    • 资源ID:14612193       资源大小:1.09MB        全文页数:19页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    微型计算机技术及应用.docx

    1、微型计算机技术及应用微型计算机技术及应用课程设计课程题目:跑马灯的设计与实现学 院 :物理电气信息学院 专 业:电子信息工程班 级:电子信息工程(1)班姓 名:刘丽丽12013241930 刘浩12013241979 李云鹏12013241932指导老师:李春树完成日期:2015年12月 7日跑马灯的设计与实现一 实验目的1.巩固和加深课堂所学知识;熟悉各种指令的应用及条件;2.深入了解与掌握8086微处理器、8255A、74ls154 和74LS273的工作原理3.通过走马灯的设计与制作,深入了解与掌握利用可编程8255A进行开关量控制的原理与方法。二 实验要求1产生6种彩灯(8位LED)的

    2、走马灯花样; 2键控(或拨码开关控制)发光实验。通过按下不同的开关来控制灯的不同的走向。三 实验内容1进行走马灯的系统电路设计,掌握基本原理;2利用PROTEUS软件画出电路原理图;3进行走马灯的控制程序设计(采用ASM语言);4.将程序导入8086中进行仿真,完成4种不同的走向。四 程序流程图 Y N五.设计原理与硬件电路1.功能分析 此次课程设计具体功能为: (1)采用不同的开关作为输入信号,8个LED灯作为输出信号。 (2)当按下不同的开关时(每次只能按下一个开关,不能同时按下多个开关)LED灯会出现不同的闪烁方式。当开关断开始,LED灯自动熄灭。 2.实验原理(系统连接图的设计) 82

    3、55A是一种通过可编程并行I/O接口芯片。广泛用于几乎所有系列的微机系统中,8255A具有三个带锁存或缓冲的数据端口,可与外设并行进行数据交换,8255A有多种操作方式,通用性较强,可为CPU与外设之间提供输入/输出通道。8255A和各端口内具有中断控制逻辑,在外设与CPU之间可用中断方式进行信息交换,使用条件传输方式时可用“联络”线进行控制。在实验中,我们运用8255为CPU与外设之间提供输入输出输出通道来实现对走马灯花样变换的控制。 8086微处理器,选择最小工作模式,所有的总线控制信号均由8086产生;8086CPU的地址数据总线AD15-AD0和地址状态总线A16/S3-A19/S6是

    4、复用的,必须通过地址锁存器把地址总线和数据总线分离。走马灯模拟电路原理如图1所示。模块包括8个LED彩灯、三个74LS273、一个74LS154和若干电阻及开关。用LED可以观测在不同按键输入下,走马灯花样的变化效果。如图1所示我们利用软件输入信号,通过8255端口扩展芯片和74LS273芯片,调节输出端口的电平变化,来控制共阴极的LED灯的亮与灭,实现走马灯花样变化。 图一接线说明:8255A共有三个8位端口,A口、B口和C口。在本电路中,B口8个输出管脚PB7-PB0分别接8个并联的LED彩灯反馈跑马灯的发光方式;A口8个管脚PA7-PA0分别接8个并联的开关控制选择走马灯的发光方式。3个

    5、74LS273的D0-D7接输入端,是信号的输入。74LS154是4线-16线的译码器,具有选片作用,ABCD四个端口是输出端口,分别接到74LS273的输入端,E1和E2是低电平有效。2锁存控制电路锁存控制电路电路如图2所示,在微控制器单元(MCU)中,寄存器是十分重要的资源。寄存器的主要作用是快速寄存算术逻辑运算单元(ALU)运算过程中的数据,其锁存功能利用74LS273来实现,74LS273是一种带清除功能的8D触发器, 1D8D为数据输入端,1Q8Q为数据输出端,正脉冲触发,低电平清除,常用作数据锁存器,地址锁存器。第一脚WR:主清除端,低电平触发,即当为低电平时,芯片被清除,输出全为

    6、0(低电平);CP(CLK):触发端,上升沿触发,即当CP从低到高电平时,D0D7的数据通过芯片,为0时将数据锁存,D0D7的数据不变。CPU向外部发出地址锁存允许信号,从而使74LS273锁存地址信号,在通过译码芯片74LS154控制接口芯片8255A,在此系统中充当一个桥梁的作用。这部分电路将相应信号传送给8255A的A0、A1和CS片选,进而CPU开始控制8255A从而驱动发光二极管显示不同的样式。如下图为仿真图中的锁存部分3)可编程并行通信接口芯片8255A 8255A的芯片引脚图如上图所示8255共有40个引脚,采用双列直插式封装,各引脚功能如下: D0-D7:三态双向数据线,与单片

    7、机数据总线连接,用来传送数据信息。CS:片选信号线,低电平有效,表示芯片被选中。RD:读出信号线,低电平有效,控制数据 的读出。WR:写入信号线,低电平有效,控制数据的写入。PA0-PA7:A口输入/输出线。PB0-PB7:B口输入/输出线。PC0-PC7:C口输入/输出线。RESET:复位信号线。A1、A0:地址线,用来选择8255内部端口。GND:地线。8255内部包括三个并行数据输入/输出端口,两个工作方式控制电路,一个读/写控制逻辑电路和8位总线缓冲器。各部分功能概括如下:(1)端口A、B、CA口:是一个8位数据输出锁存器/缓冲器和一个8位数据输入锁存器。B口:是一个8位数据输入/输出

    8、锁存器/缓冲器和一个8位数据输入锁存器。C口:是一个8位数据输出锁存器/缓冲器和一个8位数据输入缓冲器(输入不锁存)。(2)工作方式控制电路工作方式控制电路有两个,一个是A组控制电路,另一个是B组控制电路。A组控制电路用来控制A口和C口的上半部分(PC7-PC4)。B组控制电路用来控制B口和C口的下半部分(PC3-PC0)。(3)总线数据缓冲器总线数据缓冲器是一个三态双向8位缓冲器,作为8255与系统总线之间的接口,用来传送数据、指令、控制命令以及外部状态信息。(4)读/写控制逻辑电路读/写控制逻辑电路接受CPU发来的控制信号RD、WR、RESET、地址信号A1-A0等,然后根据控制信号的要求

    9、,将端口数据读出,发往CPU,或者将CPU送来的数据写入端口。8255A有3种基本的工作方式: 方式0:基本的输入输出方式(无条件);端口A、端口B、端口C均可使用; 方式1:选通的输入输出方式;(查询)端口A、端口B可以用。 方式2:双向的传输方式,只有端口A可以使用。方式0也叫基本输入/输出方式。这种方式,不需要应答联络信号,端口A、端口B和端口C的高4位及低4位都可以作为输入或输出端口。方式0的应用场合有无条件传送和查询传送2种; 故根据我们系统设计的要求,综上所述,选择8255A的A,B口为工作方式0,其中A口作为输入、B口作为输出。8255A的3种基本工作方式由方式控制字来决定,D7

    10、1(特征位)表明是设定方式选择控制字;D7=0,则表示是端口C按位置位/复位控制字。端口C分成高4位(PC7PC4)和低4位(PC3PC0),可分别设置成输入端口或输出端口;端口C的高4位与端口A配合组成A组,端口C的低4位与端口B配合组成B组。根据系统设计得出8255A的方式选择控制字,以及将A口设置为输入,B口设置为输出的PROTEUS仿真图如图所示: 74LS154 4线-16线译码器 将4个二进制编码输入译成16个彼独立的输出之一将数据从一个输入线分配到16个输出的任意一个而实现调节功能-将4个二进制编码输入译成16个彼独立的输出之一将数据从一个输入线分配到16个输出的任意一个而实现调

    11、节功能 原理:这种单片4线-16线译码器非常适合用于高性能的存储译码器。当两个选通输入G1和G2为低时,它可将4个二进制编码的输入译成16个互独立的输出之一。实现解调功能的办法是:用4个输入线写出输出线的地址,使得在一个选通输入为低时数据通过另一个选通输入。当任何一个选通是高时,所有输出都为高。6.软件及源程序 本次试验程序采用MASM 软件进行调试,如图为程序运行调试成功的截图7.实验源程序及注释DATA SEGMENT DATA ENDS CODE SEGMENT ASSUME CS:CODE ,DS:DATA START :MOV AX,DATA MOV DS,AX MOV AL,100

    12、10000B OUT 96H,AL A0: IN AL,90H ;将A口的值1111 1110给AL NOT AL ;将AL取反 0000 0001 MOV BL,AL ;将AL值给BL,BL值为0000 0001 CMP AL,1 ;AL 值与1比较 JNZ A3 ;不为0跳转 A2: MOV DL,AL ;将AL值给DL,DL为0000 0001 OUT 92H,AL ;将AL从B口输出 IN AL,90H ;将A口的值送给AL NOT AL ;对AL取反 CMP AL,BL ; 将AL,BL 比较 JNZ A0 ;不为0跳转 MOV CX,20000 A1: LOOP A1 ; CX减1

    13、,如不为0,则循环A1 MOV AL,DL ;将DL值给AL ROL AL,1 ;将AL值左移一位 JMP A2 ;跳转至 A2 A3: CMP AL,2 ;AL值与2比较 JNZ A6 ;不为0跳转 MOV AL,80H ;将80H值给AL A5: MOV DL,AL ;将AL值给DL OUT 92H,AL ;将AL值从B口输出 MOV CX,20000 A4: LOOP A4 ;CX减1,如不为0则循环A4 IN AL,90H ;将A口的值给AL NOT AL ;将AL取反 CMP AL,BL ;AL 与BL比较 JNZ A0 ;不为0跳转至A0 MOV AL,DL ;将DL值给AL RO

    14、R AL,1 ;AL值右移一位 JMP A5 ;跳转至A5 A6: CMP AL,4 ;AL与4比较 JNZ A9 ;不为0跳转 MOV AL, 05H ;将05H给AL A8: MOV DL,AL ;将DL值给AL OUT 92H,AL ;AL值从B口输出 MOV CX,50000 A7: LOOP A7 ;CX值减1,不为0循环A7 IN AL,90H ;将A口的值给AL NOT AL ;将AL 取反 CMP AL,BL ;将AL与BL比较 JNZ A0 ;不为0跳转 MOV AL,DL ;DL值给AL ROL AL,1 ;AL值左移一位 JMP A8 ;跳转至A8 A9: CMP AL,

    15、8 ;AL值与8比较 JNZ A12 ;不为0跳转 MOV AL,0A0H ;将0A0H值给AL A11: MOV DL,AL ;将AL值给DL OUT 92H,AL ;将AL从B口输出 MOV CX,50000 A10: LOOP A10 ;CX减1若不为0,则循环A10 IN AL,90H ;将A口值给AL NOT AL ;将AL取反 CMP AL,BL ;将AL于BL比较 JNZ A0 ;不为0跳转 MOV AL,DL ;将DL值给AL ROR AL,1 ;AL值右移一位 JMP A11 ;跳转至A11 A12: CMP AL,10H ;AL值与10H 比较 JNZ A17 ;不为0跳转

    16、 A16: MOV AL,18H ;将18H给AL A14: MOV DL,AL ;将AL值给DL OUT 92H,AL ;将AL值从B口输出 MOV CX,60000 A13: LOOP A13 ;CX减1,若不为0则循环A13 IN AL,90H ;将A口值给AL NOT AL ;将AL 取反 CMP AL,BL ;AL与BL 比较 JNZ A0 ;不为0跳转至A0 MOV AL,DL ;将DL值给AL CMP AL,81H ;AL值与81H比较 JZ A16 ;为0跳转至A16 AND AL,0F0H ;AL值与0F0H值取与所得值放在AL中 MOV CX,0 MOV CH,AL ;将A

    17、L值给CH ROL CH,1 ;将CH值左移一位 MOV AL,DL ;将DL值给AL AND AL,0FH ;将AL值与0FH取与所得值放入AL中 MOV CL,AL ;将AL值给CL ROR CL,1 ;将CL值右移一位 ADD CH,CL ;将CH与CL值相加所得值给CH MOV AL,CH ;将CH值给AL JMP A14 ;跳转至A14 A17: CMP AL,20H ;将AL值与20H比较 JNZ A0 ;不为0跳转 A19: MOV AL,81H ;将81H值给AL A20: MOV DL,AL ;将AL值给DL OUT 92H,AL ;将AL值从B口输出 MOV CX,5000

    18、0 A18: LOOP A18 ;CX减1若不为0,则循环A18 IN AL,90H ;将A口值给AL NOT AL ;将AL取反 CMP AL,BL ;AL与BL比较 JNZ A0 ;不为0跳转 MOV AL,DL ;将DL值给AL CMP AL,18H ;将AL与18H比较 JZ A19 ;为0跳转至A19 AND AL,0F0H ;将AL值与0F0H相与所得值给AL MOV CX,0 MOV CH,AL ;将AL值给CH ROR CH,1 ;将CH值右移一位 MOV AL,DL ;将DL值给AL AND AL,0FH ;将AL值与0FH相与所得值给AL MOV CL,AL ;将AL值给C

    19、L ROL CL,1 ;将CL值左移一位 ADD CH,CL ;将CH与CL值相加所得值给CH MOV AL,CH ;将CH 值给AL JMP A20 ;跳转至A20 RET CODE ENDS END START 8255A端口地址:由于8086的A1和A2与8255A的A0和A1形成错位连接,形成4个偶地址,即如下: 端口 地址 A1A0 A口 90H 1001 0 0 0 0 B口 92H 1001 0 0 1 0 C口 94H 1001 0 1 0 0 控制口 96H 1001 0 1 1 0七.课程设计过程中遇到的问题:1.在开始的PROTEUS系统结构连线中,由于对该软件接触较少,

    20、所以对它的元件库不太熟悉,因此走了很多弯路。2. 8255A的芯片选择信号引脚CS连接译码器的Q0端,接受来自译码器的一个输出的低电平,但是这个引脚却始终为高电平,导致8255A的读信号和写信号不能正常完成。在多次尝试后都不行,最后我将译码器的Q0端与8255A的CS端直接用导线连接起来却达到了效果。8.实验心得及体会 通过本次课程设计,我进一步的了解和掌握了各种理论知识,如MASM和PROTEUS软件的使用及汇编语言的程序设计,同时也更深刻的认识到8086,8255A等一些芯片的工作原理,加强了自己的动手能力,学会了如何用自己学的知识去处理一些实际问题,如何去处理一些常见的错误。通过自己动手

    21、完成这次试验我明白了,只有自己做出来的才是自己的。更加广泛的知道了一些芯片的功能和使用时的注意事项。 虽然这次课程设计成功完成了,但是在课程设计过程中,我也遇到了不少的问题。一开始,由于对PROTEUS软件不太熟悉,在硬件连接的过程中,走了不少弯路,在连线时,由于不下心将两根不同的线头连在了一起,最后的LED灯却怎么也达不到预期效果,多次调试都不能成功,最后计息检查了电路才发现了这个错误,可见,做任何事都要认真,仔细,要不然就会出现问题。在利用MASM软件调试的过程中,程序的出现了很多逻辑和语法错误,经过向同学请教,共同商讨,最终将程序调试成功。 这次课程设计使我明白了很多,首先做事要足够的细心和耐心,做实验不仅仅考验的是我们的理论知识,更加锻炼了我们的动手能力和心理素质,以及团结合作的能力, 总之,尽管我这次的课程设计成功了,但是仍然存在着不足,对书中的指令掌握的还不够好,自己的编程能力还很薄弱,需要以后不断的努力。


    注意事项

    本文(微型计算机技术及应用.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开