MCS-51单片机软件实验.docVIP

  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文档。上传文档
查看更多
MCS-51单片机软件实验

MCS-51单片机软件实验 通过这些实验程序的调试,使学生熟悉MCS-51 的指令系统,掌握软件仿真方法;了解单片机软件设计过程;掌握汇编语言设计方法,以及怎样用软件仿真提供的调试手段来排除软件错误。 实验一 数据传送实验 1.实验目的 掌握8031 内部RAM 和外部RAM 之间的数据传送方法;掌握这两部分RAM 存贮器的特点与应用,掌握各种数据传送方法。 2.实验内容 编写并调试一个数据传送程序,①将40~4FH 数据送到数据存贮器7E00~7E0FH 中,②将数据存贮器7E00~7E0FH 中的数据送到8031 内部RAM 50~5FH 中,③将以(R2,R3)为源RAM 区首地址内的(R6,R7)个字节数据,传送到以(R4,R5)为末地址的RAM 区。 3.实验程序参考图 4.调试方法 ⑴打开仿真软件中内部数据空间和外部数据空间,在40~4Fh 数据单元中分别送数,例如:1,2,3,4,…等16 个数据。 ⑵单步运行(断点设在BP2,程序运行至断点),检查外部RAM(7E00~7F0FH)数据是16 个数据传送到40~4F 单元(40)~(4FH)传送到7E00~7E0FH否与40~4FH 数据一一对应。 ⑶如果程序运行不能进入某一断点,则应单步、断点分段检查程序, 排除错误直至正确为止。 5.思 考 试编写将外部的数据存贮区6030~607FH 的内容写入 外部RAM 3030~307H 中。 实验二 清零程序 1.实验目的 掌握汇编语言设计和调试方法,掌握清零程序编写方法。 2.实验内容 将7000H~70FFH 的内容清零; 将30H~7FH 的内容清零; 将(R2,R3)源RAM 区首址内的(R6,R7)个单元中的内容清零。 3.实验程序框图 4.调试方法 单步运行程序到BP1,观察R0,7000H 两单元内容是否为0 , 单步运行到BP2, 看DPTR,R0 是否加1,再单步运行,看是否跳转到BP1,若是,说明第一循环没错,然后全速运行程序,观察7000H-70FF 的内容应全为零,再用单元置数方法,将7000H-70FF 的内容改为不全为0,再运行一次,若全变为零,说明程序全对, 同样,可调试后面两个程序。 5.思考 若将所有单元送06 应怎样修改,若将各单元送0-FF 程序应怎样修改。 实验三 数据转换实验 1.实验目的 掌握MCS-51 汇编语言程序设计方法,掌握数据转换方法程序编写方法。 2.实验内容 编写并调试一个二翻十程序, 其功能为将40H,50H 两单元中的二进制数转换为十进制数,并将转换结果存放在R4,R5,R6 单元中。 3.实验程序参考框图 4.调试方法 ⑴断点设在BP1,程序运行至BP1,检查40H、50H 内容是否与输入值正确对应。 ⑵断点设在BP2,程序运行至BP2,检查R4、R5、R6 内容是否为二进制所对应的十进制转换结果。 ⑶程序连续运行,。 若有错误应改用单步或断点分段调试程序,排除软件错误,直至正确为止。 ⑷改动40H、50H 中的内容。连续运行观察结果正确与否。 5.思 考 试编写一个功能和本实验类似的整数十翻二子程序。 实验四 拆字、拼字程序 1.实验目的 掌握汇编语言设计和调试方法,掌握拆字和拼字的程序编写方法。 2.实验内容 把7000H 的内容拆开,高4位送7001H 低4位,低4位送7002H 低4位,7001H、7002H 高4位清零。 把7000H、7001H 的低4位相拼后,送入7002H 。 3.实验程序框图 4.调试方法 单步运行到BP1,观察7000H 和A 单元中内容是否为68,单步运行到BP2,观察7001H单元中内容是否为6,单步运行到BP3,观察7002H 单元中内容是否为8,若是,程序对,若不是,反复修改程序直到正确为止。 同样可调试拼字程序。 5.思考 怎样将多个单元中的内容拆开。 实验五 无符号十进制数加法实验 1.实验目的 掌握MCS-51 汇编语言设计和调试方法。 2.实验内容 编写并调试一个双字节无符号十进制数加法程序, 其功能为将两个字节压缩BCD 码(即4 位十进制数)的加数和被加数写入由(R0)指出的内部RAM 中, 并将这两个数相加,结果存放于(R1)指向的内部RAM 中。 例如:被加数写入41H、40H 单元,加数写入51H、50H 单元, 运行程序结果写入52H、51H、50H 中,则加法程序功能为: (41H)(40H)+(51H)(50H)→ 52H、51H、50H 3.实验程序参考框图 4.调试方法 ⑴ 断点设在BP1,全速带断点运行程序,碰到BP1 后,检查41H、40H、51H 、50H与送入值是否对应。 ⑵ 断点设在BP2,带断点(全速断点或慢速断点)运行程序,碰到BP2 后,检查十进制数加法结果52H、

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档