流水灯循环点亮c语言程序,流水灯来回点亮程序(汇编和C)

前头看单片机c语言,忘了汇编,这几天跟几位兄弟去给下面的师弟师妹上实验课,用的是wave的实验箱。用汇编语言编程。算是一个复习。

汇编:

ORG 0000H

JMP MAIN

ORG 30H

MAIN:

MOV A,#0FFH

CLR  C

MOV R2,#08H

LOOP1:                    ; 实验中二极管低电平点亮,loop1带进位位的循环左移

RLC  A

MOV P1,A

CALL DELAY

DJNZ R2,LOOP1

MOV R2,#07H

LOOP2:                    ;loop2循环右移动

RR A

MOV P1,A

CALL DELAY

DJNZ R2,LOOP2

JMP MAIN

DELAY:                  ;延时约1s

MOV R3,#10

D1:   MOV R4,#200

D2:   MOV R5,#248

DJNZ R5,$

DJNZ R4,D2

DJNZ R3,D1

RET

END

C语言:

#include#include#define uchar unsigned char

#define uint unsigned int

void delay(uint);

void main()

{ while(1)

{

{ uchar l;

P1=0xfe;

delay(100);

for( l=1;l<=7;l++)

{ P1=_crol_ (P1,1);

delay(100);

}

}

{ uchar l;

for( l=1;l<=7;l++)

{ P1=_cror_ (P1,1);

delay(100);

}

}

}

}

void delay(uint k)

{

uint i,j;

for( i=0;i<=k;i++)

for( j=0;j<=1000;j++)

;

}

你可能感兴趣的:(流水灯循环点亮c语言程序)