单片机主程序流程.doc

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

单片机主程序流程 单片机教程 栏目导航 第一页..单片机入门教程 第二页..单片机c语言 第三页..红外遥控和步进电机 第四页..单片机问答   3.主程序流程图---51系列单片机设计实例教程 主程序流程图如图6.2所示。 图6.2 主程序流程图 本控制器在使用中,如要改变闪烁的方式,可按下相应的功能按键。当一个完整的闪烁循环结束后,即可转入新的闪烁方式。由于键扫描是在闪烁循环结束时进行,因此,功能开关按下的时间应较长才能被读入。改进的方法是把DL05S延时子程序用键扫描子程序来替代,这样,只要按下按键即可被键扫描程序读入。 以下是LED小灯闪烁控制器的完整源程序: ;* * * * * * * * * * * *; ; 小灯控制程序 ; ;* * * * * * * * * * * *; ; ;* * * * * * * * * * * *; ; 中断入口程序 ; ;* * * * * * * * * * * *; ; ORG OOOOH;程序执行开始地址 LJMP START;跳至START执行 ORG OOO3H;外中断0中断入口地址 RETI; 中断返回(不开中断) ORG OOOBH;定时器TO中断入口地址 RETI; 中断返回(不开中断) ORG OO13H;外中断1中断入口地址 RETI; 中断返回(不开中断) ORG 001BH;定时器T1中断入口地址 RETI; 中断返回(不开中断) ORG 0023H;串行口中断入口地址 RETI; 中断返回(不开中断) ; ;* * * * * * * * * * * *; ; 初始化程序 ; ;* * * * * * * * * * * *; ; CLEAR: MOV 20H,#00H;20H单元内存清0(闪烁标志清0) SETB 00H; 20H.0位置1(上电时,自动执行闪烁功能1) RET; 子程序返回 ; ;* * * * * * * * * * * *; ; 主程序 ; ;* * * * * * * * * * * *; ; START: ACALL CLEAR; 调用初始化子程序 MAIN: LCALL KEYWORK; 调用键扫描子程序 JB OOH,FUNO;20H.0位为1时执行FUNO JB 01H,FUN1;20H.1位为1时执行FUN1 JB 02H,FUN2;20H.2位为1时执行FUN2 JB 03H,MAIN;备用 AJMP MAIN; 返回主程序MAIN ; ;* * * * * * * * * * * *; ; 功能程序 ; ;* * * * * * * * * * * *; ;第1种闪烁功能程序 FUNO: MOV A,OFEH; 累加器赋初值 FUNOO: MOV P1,A; 累加器值送至P1口 LCALL DL05S; 延时 JNB ACC.7.MAIN;累加器最高位为0时转MAIN RL A; 累加器A中数据循环左移1位 AJMP FUNOO; 转FUNOO循环 ; ;第2种闪烁功能程序 FUN1: MOV A,#OFEH; 累加器赋初值 FUN11: MOV P1,A; 累加器值送至P1口 LCALL DLO5S; 延时 CPL A; A中各位取反 MOV P1,A; 累加器值送至P1口 LCALL DL05S; 延时 AJMP MAIN; 转MAIN ;* * * * * * * * * * * *; ; 扫键程序 ; ;* * * * * * * * * * * *; ; KEYWORK:MOV P3#OFFH; 置P3口为输入状态

文档评论(0)

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

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

1亿VIP精品文档

相关文档