微机原理课程设计报告-程序设计部分-豆丁 II.docVIP

微机原理课程设计报告-程序设计部分-豆丁 II.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微机原理课程设计报告-程序设计部分-豆丁 II

一,课程设计的目的 1.巩固和加深对《微机原理及应用》课程内容的认识和理解,提高应用水平; 2.掌握汇编语言程序的编程方法; 3.熟悉键盘控制和七段数码管的应用。 二、课程设计的内容 1. 在显示器上显示任意四位十六进制数 0FH 09H 0AH 01H 将表格里的数在七段LED上同时显示出来,使用XLAT指令进行译码。 2. 编程实现:(将PB2,PB6接到K0,K1) 当K6K7=00时,显示1234;当K6K7=01时,显示ABCD;当K6K7=11时,显示90EF;当K6K7=10时, 循环显示:5678 延时约5秒 显示 9F50 延时约5秒 3.编程实现以下键盘功能: 4 A 5 D E 0 C 9 并能左移显示。 4.实现: a) 定义键盘按键,5个数字键5、6、7、8、9,三个功能键:除号/,乘号*,等号=; b) 可进行两位16进制除法运算; c) 可进行两位10进制乘法运算。 二、课程设计进程安排 序号 设计各阶段内容 地点 日期 1 领取课程设计任务书 实验室 3.22 2 收集资料 图书馆、电脑 3.22 3 整理资料、写程序 实验室 3.23—3.25 4 整理、写实验报告 宿舍 3.25 发出任务书日期: 年 月 日 指导教师签名: 计划完成日期: 年 月 日 基层教学单位责任人签章: 主管院长签章: 课程设计内容 (一)、在显示器上显示四位十六进制数(F9A1),使用XLAT指令进行译码。 程序: STACK SEGMENT STACK DB 64 DUP (?) STACK ENDS DATA SEGMENT DATAI DB 0FH, 09H, 0AH, 01H DATA2 DB 7FH, 0BFH, 0DFH, 0EFH TABLE DB 0FCH, 60H, 0DAH, 0F2H, 66H, 0B6H, 0BEH, 0E0H, 0FEH DB 0F6H, 0EEH, 3EH, 9CH, 7AH, 9EH, 8EH DATA ENDS CODE SEGMENT ASSUME CS: CODE, DS: DATA, SS: STACK START: MOV AX, DATA MOV DS, AX MOV AL, 80H ;8255A初始化 OUT 63H, AL MOV BX, 0000H ;BX清零 A1: MOV BX, OFFSET TABLE MOV SI, OFFSET DATA1 MOV DI, OFFSET DATA2 ;取偏移地址 MOV CX, 0008H ;循环次数 A2: MOV AL, [SI] XLAT ;查表替换成数码管代码 OUT 60H, AL ;段码送A口 MOV AL, [DI] OUT 62H, AL ;位码送C口 CALL DALLY INC DI INC SI LOOP A2 ;CX不为零时循环A2 JMP A1 ;重复运行程序让它同时并稳定显示 DALLY: PUSH CX ;延时子程序 MOV CX, 0040H A3: MOV AX, 0009H A4: DEC AX JNE A4 LOOP A3 POP CX RET CODE ENDS END START (二)、 编程实现:(将PB2,PB6接到K0,K1) 当K6K7=00时,显示1234;当K6K7=01时,显示ABCD;当K6K7=11时,显示90EF;当K6K7=10时, 循环显示:5678 延时约5秒 显示 9F50 延时约5秒 STACK SEGMENT STACK DB 64 DUP(?) STACK ENDS DATA SEGMENT TABLE1 DB 0FCH, 60H, 0DAH, 0F2H, 66H, 0B6H, 0BEH, 0E0H, 0FEH DB 0F6H, 0EEH, 3EH, 9CH, 7AH, 9EH, 8EH DATA1 DB 7FH, 0BFH, 0DFH, 0EFH

文档评论(0)

153****9595 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档