单片机技术与应用耿淬主编.ppt

  1. 1、本文档共151页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机技术与应用耿淬主编

1.建立新工程、源文件 按照任务一中介绍的方法新建工程“任务三”和源文件“任务三.a”,并将此文件添加到项目中。 活动3 任务实施 一、建立软件环境 2.编写实现流水灯效果的程序 (1)从右到左轮流点亮 任务分析:程序流程图如图2-3-9所示。由任务二可知,使P1.0引脚上的灯L0亮,可用两种方法, 一种使用位修正指令实现:SETB P1.0。 一种用数据传送指令实现:MOV P1 #0FEH。 图2-3-9 程序流程图 编写程序: 方法一:位修正指令编程 若编写程序如下: ;主程序 MAIN: CLR P1.0 ;(1)置P1.0为0,即点亮L0 LCALL DELAY;(2)延时,保持L0亮的状态 CLR P1.1 ;(3)置P1.1为0,即点亮L1 LCALL DELAY;(4)延时,保持L1亮的状态 CLR P1.1 ;(5)置P1.2为0,即点亮L2 LCALL DELAY;(6)延时,保持L2亮的状态 CLR P1.1 ;(7)置P1.3为0,即点亮L3 LCALL DELAY;(8)延时,保持L3亮的状态 CLR P1.1 ;(9)置P1.4为0,即点亮L4 LCALL DELAY;(10)延时,保持L4亮的状态 CLR P1.1 ;(11)置P1.5为0,即点亮L5 LCALL DELAY;(12)延时,保持L5亮的状态 CLR P1.1 ;(13)置P1.6为0,即点亮L6 LCALL DELAY;(14)延时,保持L6亮的状态 CLR P1.1 ;(15)置P1.7为0,即点亮L7 LCALL DELAY;(16)延时,保持L7亮的状态 LJMP MAIN ;跳转到主程序的第一条指令,循环 ;延时子程序 DELAY:MOV R7,#0FFH D0: MOV R6,#0FFH D1: DJNZ R6,D1 DJNZ R7,D0 RET END 上述程序能否实现任务要求?为什么?应如何修改? 通过程序分析后,请写出正确的程序。 方法二:数据传送指令编程 状态 P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 P1的值 L7 L6 L5 L4 L3 L2 L1 L0   L0亮 1 1 1 1 1 1 1 0 FEH L1亮 1 1 1 1 1 1 0 1 L2亮 1 1 1 1 1 0 1 1 L3亮 1 1 1 1 0 1 1 1 L4亮 1 1 1 0 1 1 1 1 L5亮 1 1 0 1 1 1 1 1 L6亮 1 0 1 1 1 1 1 1 L7亮 0 1 1 1 1 1 1 1 ;主程序 MAIN:MOV P1,#0FEH;给P1口赋值FEH,即,即点亮L0,其余灭 LCALL DELAY ;延时,保持L0亮的状态 MOV P1,#0FDH;给P1口赋值FDH,即点亮L1,其余灭 LCALL DELAY ;延时,保持L1亮的状态 MOV P1,#0FBH;给P1口赋值FBH,即点亮L2,其余灭 LCALL DELAY ;延时,保持L2亮的状态 MOV P1,#0F7H;给P1口赋值F7H,即点亮L3,其余灭 LCALL DELAY ;延时,保持L3亮的状态 MOV P1,#0EFH;给P1口赋值EFH,即点亮L4,其余灭 LCALL DELAY ;延时,保持L4亮的状态 MOV P1,#0DFH;给P1口赋值DFH,即点亮L5,其余灭 LCALL DELAY ;延时,保持L5亮的状态 MOV P1,#0BFH;给P1口赋值BFH,即点亮L6,其余灭 LCALL DELAY ;延时,保持L6亮的状态 MOV P1,#07FH;给P1口赋值7FH,即点亮L7,其余灭 LCALL DELAY ;延时,保持L7亮的状态 LJMP MAIN ;跳转到主程序的第一条指令,循环 ;延时子程序 方法三:左移指令编程 程序分析: 程序编写首先保证P1口的最低位为0,其余为1,保证最右边灯亮,所示写入的数字为0FEH;还要考虑P1低位的0要逐个向左移,所以要用

文档评论(0)

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

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

1亿VIP精品文档

相关文档