欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    合肥工业大学微机原理课程设计报告.doc

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

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

    合肥工业大学微机原理课程设计报告.doc

    合肥工业大学计算机与信息学院课程设计课 程:微机原理与接口技术设计专业班级:信息安全13-1班学 号:姓 名: 马骏一、设计题目及要求:利用 8259A中断,实现对8253多种计数初值的设定。设计要求:1. 在中断服务程序中设定8253的计数初值。2. 开关K1用于设定0.5秒方波的计数初值,K2用于设定1秒方波的计数初值,K3用于设定2秒方波的计数初值。3. 用8253的输出信号,控制一个发光二极管,以演示修改效果。二、设计思想: 使用8259芯片控制中断,在中断程序中对8253芯片初始化实现输出不同频率的方波,并且在中断程序中修改数码管缓存区的编码,以及控制8255输出频率的缓存区数值。三、功能流程图:四、 结果讨论:在试验开始时我们首先学会了如何连接试验箱及软件,如何下载程序,运行调试。我们还遇到8253芯片的cs无法和试验箱的5v电压相连的问题,通过请教老师知道连接试验箱的vcc接口处也是可以的。在需要知道138译码器为8259和8253分配地址时通过请教老师,我们知道了计算方法。我们还发现在试验中无法多次触发中断,一般中断两三次便不再响应中断,在老师的指导下我们在主循环中加入了数码管显示,在中断中修改数码管显示字符的编码,并且在数码管显示前首先关中断,在数码管显示,及8255输出之后开中断。但我们发现如果数码管显示和8255输出的延时过大时会出现抓不到中断的情况,于是我们适当调小延时,最后完美的解决了这一问题。附录:实验代码:CODE SEGMENTASSUME CS:CODE,DS:CODE,ES:CODEORG 3400HZXK EQU 0FFDCH ;显示管地址ZWK EQU 0FFDDHLED DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H ;无用 DB 88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,0DEH,0F3HBUF DB ?,?,?,?,?,? ;没用到的缓冲区PA EQU 0FFD8HPB EQU 0FFD9HPC EQU 0FFDAHPCTL EQU 0FFDBHLedBuf db 6 dup(?) ;显示缓冲OUTSEG equ 0ffdch ;显示管地址OUTBIT equ 0ffddhIN_KEY equ 0ffdeh ;没用到的键盘地址Port0 EQU 0FFE0H ;8259芯片的端口号 A0=0Port1 EQU 0FFE1H ;A0=1START:CALL F8259 ;8259初始化CALL F8255P0: CLI ;关中断MOV AX,OFFSET INT0 ;将中断程序地址装入中断向量表MOV BX,0020H ;08号中断 K1 IRQ0 中断地址MOV BX,AXMOV BX,0022H ;固定格式MOV AX,0000HMOV BX,AXSTI ;开中断P1: CLIMOV AX,OFFSET INT1MOV BX,0024H ;09号中断地址 K2 IRQ1MOV BX,AXMOV BX,0026HMOV AX,0000HMOV BX,AX;CALL F8259STIP2: CLIMOV AX,OFFSET INT2MOV BX,0028HMOV BX,AXMOV BX,002AHMOV AX,0000HMOV BX,AX; CALL F8259STICALL WP ;初始化显示“GOOD” ;循环程序运行P: CLI ; CALL DIS CALL PMARK call Disp ;显示函数 将缓冲区的编码输出到显像管地址 STI NOP ;时间停顿 NOP NOP NOP NOP NOP NOPJMP P;-F8255: MOV DX,PCTL MOV AL,90H OUT DX,AL RET;-PMARK: CLI mov dx,pb MOV AL,RUNLED ROL AL,01H MOV RUNLED,AL OUT DX,AL mov cx,RUNDELdelay2: nop CALL DISP loop delay2 STI RET;-F8259: MOV AL,1BH ;8259的初始化 icw1电平触发 调用间隔8 单片方式需要写入ICW4MOV DX,Port0OUT DX,AL ;输出到8259端口MOV AL,08H ; icw2 IRQ0 K1中断号08H IRQ1 K2 中断号09H .MOV DX,Port1OUT DX,ALMOV AL,01H ; icw4 非特殊完全嵌套 非缓冲 非自动结束 8086/8088模式OUT DX,ALMOV AL,0F8H ;屏蔽只留IR0,IR1,IR2。OCW1 从右向左每一位代表一个中断 屏蔽哪一位哪一位设为1OUT DX,ALRET;-INT0: CLICALL FB0STIMOV DX,Port0 ;8259端口地址MOV RUNDEL,10H;MOV AL,20HOUT DX,AL ;输出到8259 提示中断结束IRETINT1: CLICALL FB1STIMOV DX,Port0MOV RUNDEL,20H;MOV AL,20HOUT DX,ALIRETINT2: CLICALL FB2MOV DX,Port0MOV RUNDEL,30H;MOV AL,20HOUT DX,ALSTIIRET;-FB0: MOV DX,0FFEBH ;8253端口地址 8253初始化MOV AL,B ;控制字 计数器0 先低后高 方式三 二进制计数OUT DX,AL ;输出到8253端口MOV AL,10HMOV DX,0FFE8H ;第一个端口减3OUT DX,ALMOV AL,27H ;计数初值2710H 4.91MHZ T7OUT DX,ALcall WP1RET;-FB1:MOV DX,0FFEBHMOV AL,BOUT DX,ALMOV AL,20HMOV DX,0FFE8HOUT DX,ALMOV AL,4EH ;计数初值4E20HOUT DX,ALCALL WP2RETFB2: MOV DX,0FFEBHMOV AL,BOUT DX,ALMOV AL,40HMOV DX,0FFE8HOUT DX,ALMOV AL,9cH ;计数初值9c40HOUT DX,ALCALL WP3RET;-WP: ;向缓冲区写入待输出到显像管的编码 显示"Good" mov LedBuf+0,0c2h ;第一个显像管的编码G mov LedBuf+1,0a3h ;O mov LedBuf+2,0a3h ;O mov LedBuf+3,0a1h ;D mov LedBuf+4,0ffh ;不显示 mov LedBuf+5,0FFh ;不显示 RET ;函数返回;-;-WP1: mov LedBuf+0,0A4h ;显示"" mov LedBuf+1,0C0h mov LedBuf+2,0F9h mov LedBuf+3,0B0h mov LedBuf+4,82h mov LedBuf+5,90h RET;-;-WP2: ; MOV BUF,02H ;初始化显示“P.” ;MOV BUF+1,00H ; MOV BUF+2,01H ;MOV BUF+3,04H ;MOV BUF+4,01H ;MOV BUF+5,01H mov LedBuf+0,0A4h ;显示"" mov LedBuf+1,0C0h mov LedBuf+2,0F9h mov LedBuf+3,0B0h mov LedBuf+4,0F9h mov LedBuf+5,0F9h RET;-;-WP3: ; MOV BUF,02H ;初始化显示“P.” ;MOV BUF+1,00H ;MOV BUF+2,01H ;MOV BUF+3,05H ;MOV BUF+4,01H ;MOV BUF+5,01H mov LedBuf+0,0A4h ;显示"" mov LedBuf+1,0C0h mov LedBuf+2,0F9h mov LedBuf+3,0B0h mov LedBuf+4,0A4h mov LedBuf+5,0A4h RET;-Disp: PUSH CX mov bx,offset LEDBuf ;得到缓冲区的地址 mov cl,6 ;共6个八段管 循环计数 mov ah,b ;从左边开始显示DLoop: mov dx,OUTBIT ;显像管地址 mov al,0 ;关显示管代码 out dx,al ;关所有八段管 mov al,bx ;得到缓冲区地址 mov dx,OUTSEG out dx,al mov dx,OUTBIT mov al,ah out dx,al ;显示一位八段管 push ax mov ah,1 call Delay1 pop ax shr ah,1 inc bx dec cl jnz DLoop mov dx,OUTBIT mov al,0 out dx,al ;关所有八段管 POP CX retDelay1: ;延时子程序 push cx mov cx,256 loop $ pop cx ret ORG 5000HRUNLED DB 01H ;跑马灯初始值RUNDEL DW 05HDONE:CODE ENDSEND START

    注意事项

    本文(合肥工业大学微机原理课程设计报告.doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

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




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开