设计任务:以单片机为核心,设计一个节日彩灯控制器. 设计要求:  P1.2——开始,按此键则灯开始设计要求:\x09P1.2——开始,按此键则灯开始流动(由上而下).\x09P1.3——停

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/29 20:22:58

设计任务:以单片机为核心,设计一个节日彩灯控制器. 设计要求:  P1.2——开始,按此键则灯开始设计要求:\x09P1.2——开始,按此键则灯开始流动(由上而下).\x09P1.3——停
设计任务:以单片机为核心,设计一个节日彩灯控制器. 设计要求:  P1.2——开始,按此键则灯开始
设计要求:
\x09P1.2——开始,按此键则灯开始流动(由上而下).
\x09P1.3——停止,按此键则停止流动,所有灯为暗.
\x09P1.4——上,按此键则灯由上向下流动.
\x09P1.5——下,按此键则灯由下向上流动.

设计任务:以单片机为核心,设计一个节日彩灯控制器. 设计要求:  P1.2——开始,按此键则灯开始设计要求:\x09P1.2——开始,按此键则灯开始流动(由上而下).\x09P1.3——停

P1口作为你说的控制口,P2口作为输出彩灯口(共阳极)!上为高电平,下为低电平

     ORG     0000H

START:  

         MOV     R0,#0

         MOV     P1,#0FFH

         MOV     P2,#0FFH

         JB      P1.2,$

         SJMP    L1

         SJMP    START

 L1:    JNB     P1.3,START             //查看是否停止

     JNB     P1.5,L2                //查看是否‘下’

     MOV     A,R0

         MOV     DPTR,#TABLE1

         MOVC    A,@A+DPTR

         MOV     P2,A

         ACALL   DELAY

         INC     R0

         CJNE    R0,#8,L1

         MOV     R0,#0

        SJMP    L1

L2:    JNB     P1.3,START 

         JNB     P1.4,L1                 //判断是否‘上 ’    

     MOV     A,R0

         MOV     DPTR,#TABLE2

         MOVC    A,@A+DPTR

         MOV     P2,A

         ACALL   DELAY

         INC     R0

         CJNE    R0,#8,L2

         MOV     R0,#0

         SJMP    L2

DELAY:                           //延时大概0.2s

         MOV  R5,#100

D1: 

         MOV  R6,#100

D2:     

         MOV     R7,#10

         DJNZ    R7,$

         DJNZ    R6,D2

         DJNZ    R5,D1

         RET

TABLE1:  DB    0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH  

TABLE2:  DB    07FH,0BFH,0DFH,0EFH,0F7H,0FBH,0FDH,0FEH      

         END

下面是仿真图: