51单片机P1口输入输出实验实验报告打印版.pdfVIP

51单片机P1口输入输出实验实验报告打印版.pdf

  1. 1、本文档共2页,可阅读全部内容。
  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文档。上传文档
查看更多
学 海 无 涯 实验一 P1 口输入输出实验 一 实验目的 1 掌握P1 口作为I/O 口时的使用方法。 2 理解读引脚和读锁存器的区别。 二 实验原理 由 AT89C51 组成的单片机系统,通常情况下 P0 口分时复用作为地址、数据总 线, P2 口提供A15-A8 即高 8 位地址, P3 口用作第二功能,只有 P1 口用 作 I/O 口。P1 口是 8 位准双向口,它的每一位都可独立地定义为输入或输出。 既可作为 8 位的并行 I/O 口,也可作为 8 个不同的输入输出端。 P1 口的结 构如图 2.1 所示,当其工作在输入方式时,对应锁存器必须先写 1 ,才能正确 地读到引脚上的信号,否则,若对应锁存器的值为 0 ,执行读引脚指令时,读 到的结果永远为 0 。每个 I/O 端口都有两种读入,即读锁存器和读引脚,读引 脚指令一般都是以 I/O 端口为源操作数的指令,如 MOV C , P1.3 ,而读锁存 器指令一般为 “读 - 修改 - 写”指令,如 ANL P1.3 , C 指令,请同学们在 实验中体会。图 2 中, P1.2 作为输出口, P1.3 作为输入口。 三 实验内容与要求 1. 编写程序实现当P1.3 为低电平时(SW1 闭合),发光管亮;P1.3 为高电 平时发光管灭。 1 学 海 无 涯 修改程序在执行读P1.3 之前,先执行CLR P1.3,观察结果是否正确,分析在第 二种情况下程序为什么不能正确执行,理解读引脚和读锁存器区别。 四 实验内容 实验程序: ORG 0000H MAIN: MOV SP,#60H ; 设置堆栈指针SP 为60H MOV P1,#0FFH ; 当P1 口用作输入时,所有位对应的锁存器必须先置1 LOOP: ;CLR P1.3 MOV C,P1.3 ;读P1.3 JC LIGHT CLR P1.2 ;LED 灭 SJMP LOOP LIGHT: SETB P1.2 ;LED 亮 SJMP LOOP RET END 若在执行读P1.3 之前,先执行CLR P1.3,观察结果将会不正确。 五 实验结论 1、当P1 口用作输入时,所有位对应的锁存器必须先置1 2 、在执行读 P1.3 之前,先执行 CLR P1.3,观察结果不正确,程序不能正确执 行,因为系统读取的是锁存器的状态。 3、读引脚和读锁存器区别:第一种方式是将引脚作为输入,那是真正地从外部 引脚读进输入的值,第二种方式是该引脚处于输出状态时,有时需要改变这一位 的状态,则并不需要真正地读引脚状态,而只是读入锁存器的状态,然后作某种 变换后再输出。 2

文档评论(0)

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

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

1亿VIP精品文档

相关文档