5 AT89S52单片机开发入门流水灯实验.ppt

  1. 1、本文档共39页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
5 AT89S52 单片机开发入门:流 水灯实验 基础篇 通过通用 I/O 口控制 LED 灯的点亮 1 2020/3/29 基本要求 ? 电路图、 PCB 编辑软件的使用; ? 单片机基本概念; ? P1 口的结构; ? Keil C 开发环境的使用; ? 编程器使用; ? 单片机工作基本原理; 2 2020/3/29 更高要求 ? 汇编指令阅读 ? 指令执行时间的计算 ? 执行时间测试 3 2020/3/29 主要内容 1. 程序演示 2. 软件说明 & 分析 3. 硬件说明 4. P1 IO 口结构 5. 单片机工作原理 6. 汇编语言 & 执行时间测量 4 2020/3/29 5.1 实验操作与实验结果 ? 通过 USB 电缆给单片机板子 供电 ? 观察 LED D1~D8 工作情况: 从左到右依次点亮,然后 从右到左依次点亮 ? 其他 LED : – D9 点亮: +5V 电源指示 – D10 闪动:在线编程器 AT89C2051 工作正常 5 2020/3/29 图 5-1-1 实验 1 中观察 LED 的位置 6 2020/3/29 5.2 源程序分析 void main() { unsigned char i,dat; while(1) { dat=0x01; for(i=0;i<8;i++) {P1=~dat; dat=dat<<1; Delay(); } for(i=0;i<8;i++) {P1=~dat; dat=dat>>1; Delay(); } } } i dat P1 点亮的 LED 0 0000 0001 1111 1110 D1( 左边第一个 ) 1 0000 0010 1111 1101 D2 2 0000 0100 1111 1011 D3 3 0000 1000 1111 0111 D4 … 7 1000 0000 0111 1111 D8( 右边第一个) 循环 1 总结: LED 从左到右依次点亮 I dat P1 点亮的 LED 0 1000 0000 0111 1111 D8 1 0100 0000 1011 1101 D7 … 7 0000 0001 1111 1110 D1 循环 2 总结: LED 从右到左依次点亮 7 2020/3/29 表 5-1 第一个 for 循环程序分析 i 变量 dat P1 说明 0 0x01 0xFE=1111 1110b P1 端口除了 P1.0 为 低电平外,其他 7 个输出均为 高电平;根据第 4 章我们知道 P1 口连接了 8 个 LED , 8 个 LED 通过电阻接到了 +5V ,因此此时只有 P1.0 连接的 D1 点亮,其他 7 个 LED 熄灭; 1 0x02 0xFD=1111 1101b 通样道理,此时只有 D2 点亮,其他 7 个 LED ( D1 、 D3~D8 )熄灭; 2 0x04 0xFB=1111 1011b 此时只有 D3 点亮,其他 7 个 LED 熄灭; 3 0x08 0xF7=1111 0111b 此时只有 D4 点亮,其他 7 个 LED 熄灭; 4 0x10 0xEF=1110 1111b 此时只有 D5 点亮,其他 7 个 LED 熄灭; 5 0x20 0xDF=1101 1111b 此时只有 D6 点亮,其他 7 个 LED 熄灭; 6 0x40 0xBF=1011 1111b 此时只有 D7 点亮,其他 7 个 LED 熄灭; 7 0x80 0x7F=0111 1111b 此时只有 D8 点亮,其他 7 个 LED 熄灭; 8 2020/3/29 表 5-2 第二个 for 循环程序分析 i 变量 Dat P1 说明 0 0x80 0x7F=0111 1111b D8 点亮,其他 7 个 LED 熄灭 1 0x40 0xBF=1011 1111b D7 点亮,其他 7 个 LED 熄灭 2 0x20 0xDF=1101 1111b D6 点亮,其他 7 个 LED 熄灭 3 0x10 0xEF=1110 1111b D5 点亮,其他 7 个 LED 熄灭 4 0x08 0xF7=1111 0111b D4 点亮,其他 7 个 LED 熄灭 5 0x04 0xFB=1111 1011b D3 点亮,其他 7 个 LED 熄灭 6 0x02 0xFD=1111 1101b D2 点亮,其他 7 个

文档评论(0)

wangsux + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档