熟练使用 Keil,Proteus 软件对程序进行调试.docxVIP

熟练使用 Keil,Proteus 软件对程序进行调试.docx

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一、实验目的和要求 【中断】熟练使用Keil, Proteus软件对程序进行调试,掌握单片机中断 方式的输入/输出,熟悉MCS-51单片机外部中断初始化编程方法及中断程序的 调试方法。掌握查询方式和中断方式的输入/输出程序设计及调试。通过实验熟 悉中断处理的过程以及MCS-51单片机转向中断子程序的方法,进一步了解外 中断的边沿触发与电平触发的区别及应用。 【定时器】学习掌握MCS-51单片机定时/计数器的基本用法,以及定时软 件的设计方法。通过实验进一步了解时间常数的计算方法,掌握定时器加软件计 数实现长时间定时的处理方法,熟悉定时器的查询和中断两种方式的应用。 二、实验内容和原理 (包括程序和硬件原理图) (一)程序 【中断】 要求:如图1所示,当SW1开关断开为高电平时,8个LED (D0^D7)以IS的 间隔 轮流点亮,当SW1开关断开为低电平时(INTO有中断请求时),DO的LED点 亮1S,然后返回到主程序继续8个LED轮流点亮。 图1 图1 ORG LJMP ORG LJMP MAIN: MOVSETB SETB SETB MOV0000HMAIN ORG LJMP ORG LJMP MAIN: MOV SETB SETB SETB MOV 0000H MAIN 0003H INTTO SP,#40H 262 ITO EXO EA A, #OFEH 单片机AT89C51 开关 SW-SPDT 发光二极管LED-BIBY 电阻RES 表1 设INTO为边沿触发,其入口地址为0003H,程序如下: 3.接口电路如图4.3所示,参照实验四用中断方式编程,实现当KK1为高电 平时,8个LED轮流点亮,当K0为低电平时,则停止循环,当KK1再变为低, 循环点亮又开始。调试出程序结果。 +5VPL6DO1K(P3.3) INTI —O-HKKl图4.3P1.3PL2Pl. 1PL0 +5V PL6 DO 1K (P3.3) INTI —O-H KKl 图4.3 P1.3 PL2 Pl. 1 PL0 皿 1KX8 LED-SWITCH 单元 当KKl为高时,则循环点亮 图15 当KKl为低时,则停止点亮 图16 当KK1为高后,则继续循环点亮 图17 图17 【定时器】 1.若改用T1定时100ms实现1s定时,程序应作哪些改动?修改后,调试出 结果。 ORG LJMP ORG LJMP ORGMAIN: MOV MOV MOV0000H MAIN ORG LJMP ORG LJMP ORG MAIN: MOV MOV MOV 0000H MAIN 001BH TINTO 01 OOH TMOD,#10H TLO,#OBOH THO, #3CH 1 ORG 0000H 2 LJMP MAIN 3 ORG 001BH 4 LJMP TINTO 5 ORG 0100H : MOV TMODr#iOH 7 MOV TL0r#0B0H 8 MOV THO,13CH 9 MOV R0r#0AH 10 SETB TRI 11 SETS ET1 12 SETB EA 13 SJMP e 调试结果如下:MOV RO,#OAH SETB TRI SETB ET1 SETB EA SJMP $TINTO: MOV TLO, #OBOHMOV THO, #3CH DJNZ RO, DON CPL Pl. 7 MOV RO,#OAH DON: RETIENDProject P Q3 电 Project: sy4B q Target 1E 调试结果如下: MOV RO,#OAH SETB TRI SETB ET1 SETB EA SJMP $ TINTO: MOV TLO, #OBOH MOV THO, #3CH DJNZ RO, DON CPL Pl. 7 MOV RO,#OAH DON: RETI END Project P Q 3 电 Project: sy4 B q Target 1 E」Source Group 1 J S1ARTUP.A51 ]SY4.asm ]SY4asm MOV THOr#3CH DJNZ RO,DON CPL Pl.7 MOV M, # OAH DON: RETI END 图18 .试比较查询方式的定时和中断方式的定时有何不同? 运行的结果一样,但是查询方式会浪费CPU时间,在工作时就不能做 其他事情了,而使用中断方式则只会在第三个时钟周期工作,耗时短。 .思考若LED灯的亮灭有一个开关启动,程序即硬件接线应作何改动? 代码不变,修改后的电路如下,开关闭合,led灯灭,开关打开,led灯交 替闪烁。 当开关打开时,led灯交替闪烁。 SW SPST ATE9C51 IH ?R8 LED YELLOW R4 SWSPS

您可能关注的文档

文档评论(0)

198****4707 + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:8106125063000031

1亿VIP精品文档

相关文档