第三章 单片机程序设计(精品·公开课件).ppt

第三章 单片机程序设计(精品·公开课件).ppt

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
P101页延时程序例子 延时50毫秒的子程序。 DEL:MOV R7,#200 DEL1:MOV R6,#123 NOP DEL2:DJNZ R6,DEL2;200×123×2us 49.2ms DJNZ R7,DEL1 RET DEALY:MOV R7,#20 DEL3: MOV R6,#123 DEL2:MOV R5,#200 NOP DEL1:DJNZ R5,DEL1 DJNZ R6,DEL2 DJNZ R7,DEL3 RET 约为延时1秒子程序 START: MOV R2,#08H ;设置循环次数 MOV A,#0FEH ;从P1.0→P1.7使LED逐 ;个亮过去 NEXT: MOV P1,A ;点亮LED LCALL DEALY RL A DJNZ R2,NEXT ;次数减1,不为零,继续 ;点亮下一个LED SJMP START DEALY:MOV R7,#20H…… P1口循环点亮发光二极管程序 §3-5 常用子程序介绍 步骤: 1、确定子程序名称,即入口标号。 2、确定子程序的输入/输出参数。 3、确定所用的寄存器和存储单元,以便现场保护。断点保护由指令自动完成。 4、确定子程序的算法,编写源程序。 例3.7:多字节BCD数加法。 子程序: ADDB: PUSH PSW PUSH ACC CLR C LOOP: MOV A, @R0 ADDC A, @R1 DA A MOV @R0, A INC R0 INC R1 DJNZ R2, LOOP POP ACC POP PSW RET 4字节BCD数相加主程序: ? MOV R0, #20H MOV R1, #30H MOV R2, #04H LCALL ADDB §3-6 查表程序 1、查表用指令 MOVC A, @A+DPTR MOVC A, @A+PC 例3.8:用查表发求(0~9)的平方 MOV DPTR, #TAB MOVC A, @A+DPTR RET TAB: DB 00, 01, 04, 09, 16 DB 25, 36, 49, 64, 81 ADD A, #1 MOVC A, @A+PC RET TAB: DB 00, 01, 04, 09, 16 DB 25, 36, 49, 64, 81 本章小结 1、汇编程序的三种基本结构和各自特点 2、分支程序常用的判断语句 3、循环程序设计的思路和组成 4、延时程序设计的思路 作业 P118 2、5、7、8、9、16 LOGO 内容提要: 第三章 单片机程序设计 §3-1 程序设计简介 §3-2 顺序程序的设计 §3-3 分支程序的设计 §3-4 循环程序的设计 §3-5 常用子程序介绍 §3-6 查表程序的设计 项目引入 1.项目描述 将0~9这十个数循环送P1口七段LED上显示 。 2.硬件电路与工作原理 让学生根据任务分析硬件要求,画出具体电路,并在实验开发板上接线 3.程序设计(给出控制程序) 8051 ??START: ORG???? 0100H ???? ? ????MAIN: MOV??? R0,#00H???? ???? ?? MOV??? DPTR,#TABLE ????DISP: MOV??? A,R0??????? ???? ???????MOVC?? A,@A+ADPTR? ???????? ?? MOV????P1,A??????? ?????????? ??ACALL??DELAY?????? ???????????? INC????R0????????? ?????????? CJNE???R0,#0AH,DISP

文档评论(0)

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

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

1亿VIP精品文档

相关文档