单片机主程序流程_单片机主程序

2020-02-27 其他范文 下载本文

单片机主程序流程由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“单片机主程序”。

演讲稿 工作总结 调研报告 讲话稿 事迹材料 心得体会 策划方案

单片机主程序流程

单片机教程 栏目导航

第一页..单片机入门教程

第二页..单片机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口为输入状态

JNB

P3.0,KEYO;读P3.0口,若为0转KEYO

JNB

P3.1,KEY1;读P3.1口,若为0转KEY1

JNB

P3.2,KEY2;读P3.2口,若为0转KEY2

JNB

P3.3,KEY3;读P3.3口,若为0转KEY3

RET;

子程序返回 ;

精心收集

精心编辑

精致阅读

如需请下载!

演讲稿 工作总结 调研报告 讲话稿 事迹材料 心得体会 策划方案

;闪烁功能0键处理程序

KEYO:

LCALL

DL10MS;

延时10ms消抖

JB

P3.0,OUTO;P3.0为1,子程序返回(干扰)

SETB

OOH;

20H.0位置1(执行闪烁功能1标志)

CLR

01H;

20H.1位清0

CLR

02H;

20H.2位清0 OUTO:

RET;

子程序返回 ;

;闪烁功能1键处理程序

KEY1:

LCALL

PL10MS

JB

P3.1,OUT1

SETB

01H;

20H.1位置1(执行闪烁功能2标志)

CLR

00H

CLR

02H

CLR

03H OUT2:

RET ;

;闪烁功能(备用)键处理程序

KEY3:

LCALL

DL10MS

JB

P3.2,OUT2

SETB

02H;

20H.2位置1(执行闪烁功能3标志)

精心收集

精心编辑

精致阅读

如需请下载!

演讲稿 工作总结 调研报告 讲话稿 事迹材料 心得体会 策划方案

CLR

01H

CLR

00H

CLR

03H OUT2:

RET ;

;闪烁功能(备用)键处理程序

KEY3:

LCALL

DL10MS

JB

P3.3,OUT3

SETB

03H;

20H.3位置1(执行闪烁功能3标志)

CLR

01H

CLR

02H

CLR

00H OUT3:

RET ;

;* * * * * * * * * * * *;;

延时程序

;* * * * * * * * * * * *;

;延时子程序,执行一次时间为513us DL512: MOV

R2,#OFFH LOOP1: DJNZ

R2,LOOP1

RET ;

精心收集

精心编辑

精致阅读

如需请下载!

演讲稿 工作总结 调研报告 讲话稿 事迹材料 心得体会 策划方案

;10ms延时子程序(调用20次0.5ms延时子程序)

DL10MS:MOV

R3,#14H LOOP2: LCALL DL512

DJNZ

R3,LOOP2

RET ;

;延时子程序,改变R4寄存器初值可改变闪烁的快慢(时间为25msX15)

DL05s: MOV

R4,#OFH LOOP3: LCALL DL25MS

DJNZ R4,LOOP3

RET ;

;延时子程序,改变R4寄存器初值可改变闪烁的快慢(时间为25msX15)

DL05S: MOV

R4,#OFH LOOP3: LCALL DL25MS

DJNZ R4,LOOP3

RET ;

;25ms延时子程序,调用扫键子程序延时,可快速读出功能按键值

DL25MS:MOV

R5,#OFFH LOOP4: LCALL KEYWORK

DJNZ R5,LOOP4

精心收集

精心编辑

精致阅读

如需请下载!

演讲稿 工作总结 调研报告 讲话稿 事迹材料 心得体会 策划方案

RET

END;

程序结束

12个经典单片机程序设计实例: 闪烁LED小灯主程序图 数码管时钟电路的主程序 单键学习型遥控器的设计 15路电器遥控器的设计 自行车里程/速度计的设计 自动往返行驶小汽车的设计 遥控小汽车的设计 数码管时钟电路的设计 8*8点阵LED字符显示器的设计 8路输入模拟信号数值显示电路的设计 8路输入模拟信号数值显示电路程序

单键学习型遥控器的程序如果对本文有疑问,请到论坛提问 编辑:51单片机学习网 @ 2009-10-20校对 中国开发板最佳品牌

版权:部分由编辑摘引,权利属原著作人

精心收集

精心编辑

精致阅读

如需请下载!

《单片机主程序流程.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
单片机主程序流程
点击下载文档
相关专题 单片机主程序 主程序 单片机 流程 单片机主程序 主程序 单片机 流程
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文