急求单片机程序 实现灯左右移动和闪烁功能

来源:百度知道 编辑:UC知道 时间:2024/05/31 04:36:25
单片机端口接八只LED使端口P1做单一灯的变化,从P2口开始先向左移3次,然后向右移两次,再闪烁四次,不断循环
请好心人帮下忙,满意给分。

专门给你写的:
  ORG 00H
  SJMP MAIN
  ORG 40H
  MAIN:MOV SP,#5FH
  MOV 30H,#11111110B
  MOV 31H,30H
  LP:LCALL ZY ;左移3次
  LCALL YY ;右移3次
  SJMP LP ;无限循环

  ZY:MOV R2,#24 ;左移3次,乘上八个灯=24次
  ZY1:MOV A,30H
  RL A
  MOV 30H,A
  MOV P1,A
  MOV A,31H
  RL A
  MOV 31H,A
  MOV P2,A
  LCALL DELAY
  DJNZ R2,ZY1
  RET
  YY:MOV R2,#24 ;左移3次,乘上八个灯=24次
  YY1:MOV A,30H
  RL A ;P1不变
  MOV 30H,A
  MOV P1,A
  MOV A,31H
  RR A ;P2右移
  MOV 31H,A
  MOV P2,A
  LCALL DELAY
  DJNZ R2,YY1
  RET
  DELAY:MOV R3,#10 ;延时1秒,12MHz
  DELAY1:MOV R4,#200
  DELAY2:MOV R5,#250
  DJNZ R5,$
  DJNZ R4,DELAY2
  DJNZ R3,DELAY1
  RET
  END