升降国旗系统

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

K1 EQU P2.0 ;shengqi

K2 EQU P2.1 ;jiangqi

K3 EQU P2.2 ;jiangbanqi

K4 EQU P2.3 ;zanting

K5 EQU P2.4 ;fuwei

ORG 0000h

MAIN: ;MOV DPTR,#TAB1

MOV R0,#0 ;初始角度

MOV R4,#0 ;查表初值

MOV P1,R0 ;初始角度,0度WAIT:

JNB K1 , shengqi

JNB K2 , jiangqi

JNB K3 ,jiangbanqi

JNB K4, zanting

SJMP WAIT

shengqi:;MOV P3 ,0FFH ;调用语音

JNB K4,zanting ; 暂停判断

MOV A,R4

MOV DPTR,#TAB1

MOVC A,@A+DPTR

MOV P1,A

ACALL DELAY ;延时

INC R4 ;正转升旗 CJNE R4,#8 , shengqi

INC R3

MOV A,R3

LCALL DISPLAY

MOV R4,#00H

CJNE R3,#9 , shengqi ;升到顶端自动停下,转的圈数

MOV R4,#8

JB K2 , $

jiangqi:

JNB K4,zanting ; 暂停判断

MOV A,R4

MOV DPTR,#TAB1

MOVC A,@A+DPTR

MOV P1,A

ACALL DELAY ;延时

DEC R4 ;反转降旗

CJNE R4,#0 , jiangqi

DEC R3

MOV A,R3

LCALL DISPLAY

MOV R4,#08H

CJNE R3,#0 , jiangqi ;降完旗帜自动停下

LJMP MAIN

jiangbanqi: MOV P3 ,0FFH ;调用语音

JNB K4,zanting ; 暂停判断

F1: MOV A,R4

MOVC A,@A+DPTR

MOV P1,A

ACALL DELAY ;延时

INC R4 ;正转升旗

CJNE R4,#07 , F1

INC R3

MOV R4,#00H

CJNE R3,#05 , F1 ;升到顶端自动停下,转的圈数

ACALL DELAY

ACALL DELAY

ACALL DELAY

ACALL DELAY

MOV R4,#07

F2: MOV A,R4

MOVC A,@A+DPTR

MOV P1,A

ACALL DELAY ;延时

DEC R4 ;反转降旗

CJNE R4,#0 , F2

;MOV R3,#2 ;初值

DEC R3

MOV R4,#07H

CJNE R3,#2 , F2 ;降下旗帜三分之一自动停下

LJMP MAIN

zanting:MOV P1,#00H ;关闭电机

MOV P3,#00H ;关闭显示和语音

LJMP MAIN

;显示控制子程序

DISPLAY:MOV A,R3

MOV B,#10

DIV AB

CLR P3.6

MOV DPTR,#TABLE

MOVC A,@A+DPTR

MOV P0,A

LCALL DELAY2

SETB P3.6

MOV A,B

CLR P3.7

MOV DPTR,#TABLE

MOVC A,@A+DPTR

MOV P0,A

LCALL DELAY2

SETB P3.7

RET

TABLE: DB 3FH,06H,5BH,4FH,66H

DB 6DH,7DH,07H,7FH,6FH

DELAY2: MOV R6,#100

D1: MOV R7,#250

DJNZ R7,$

DJNZ R6,D1

RET

;----------延时5*128*256*2=262144us=262ms DELAY:MOV R6,#1

DD1: MOV R5,#0H

DD2: MOV R7,#0

DD3: DJNZ R7,DD3

DJNZ R5,DD2

DJNZ R6,DD1

RET

TAB1:

DB 08H,09H,01H,03H ;A、AD、D、CD

DB 02H,06H,04H,0CH ;C、BC、B、AB

END

相关文档
最新文档