5 AT89S52单片机开发入门:流水灯实验学习课件演示课件.pptVIP

5 AT89S52单片机开发入门:流水灯实验学习课件演示课件.ppt

  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文档。上传文档
查看更多
汇编指令说明及执行时间计算 CLR A ;A清0 1个机器周期 MOV R7,A ;R7清0 1个机器周期 C:0030 CLR A 1个机器周期 MOV R6,A 1个机器周期 C:0032 INC R6 ;R6加1 1个机器周期 CJNE R6,#0xFF,C:0032 ;R6不等于0xFF则跳转到0032 2个机器周期 INC R7 ;R7加1 1个机器周期 CJNE R7,#0xFF,C:0030 ;R7未到0xFF则跳转到0030执行 2个机器周期 RET 2个机器周期 全部机器周期数为:2+255*(2+255*(1+2)+1+2)+2=4+255*(5+255*3)=196354个机器周期。 对应时间为:196354*120.213s 精选文档 CPU:Central Processor Unit(中央处理单元) * EA:External Address(外部寻址) * MOVE:move CLR:clear CJNE:compare jump not equal INC:increment RET:return * PSW: Program Status Word 程序状态字 CY: Carry 进位 AC:Auxiliary Carry 辅助进位位 F0:Flag0 用户设置标志 RS1/RS0: Register Select 寄存器组选择位 OV:Overflow 溢出位 P: 奇偶校验位 * 5 AT89S52单片机开发入门:流水灯实验 基础篇 通过通用I/O口控制LED灯的点亮 精选文档 基本要求 电路图、PCB编辑软件的使用; 单片机基本概念; P1口的结构; Keil C开发环境的使用; 编程器使用; 单片机工作基本原理; 精选文档 更高要求 汇编指令阅读 指令执行时间的计算 执行时间测试 精选文档 主要内容 程序演示 软件说明分析 硬件说明 P1 IO口结构 单片机工作原理 汇编语言执行时间测量 精选文档 5.1实验操作与实验结果 通过USB电缆给单片机板子供电 观察LED D1~D8工作情况:从左到右依次点亮,然后从右到左依次点亮 其他LED: D9点亮:+5V电源指示 D10闪动:在线编程器AT89C2051工作正常 精选文档 图5-1-1 实验1中观察LED的位置 精选文档 5.2 源程序分析 void main() { unsigned char i,dat; while(1) { dat=0x01; for(i=0;i8;i++) {P1=~dat; dat=dat1; Delay(); } for(i=0;i8;i++) {P1=~dat; dat=dat1; 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从右到左依次点亮 精选文档 表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点亮,其他

文档评论(0)

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

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

1亿VIP精品文档

相关文档