|
#include
void initialization(void);
void delay(void);//================================
void initialization(void)
{
DDRB = 0xff;
}
//---------------------------------
void delay(void)
{
register short i=5024;
while(i)i--;
}
//----------------------------------
void main (void)
{
register unsigned char mask;
initialization();
for(;;)
{
for(mask=0;mask<=8;mask++)
{
PORTB=~(1< delay();
}//for
}//for(;;)
}//main
а то, что ниже - в 137
;прога с бегущим огоньком.include "2313def.inc"
.def TEMP = R16; //временный
.def VERT = R17; //здесь то, что вертеться будет
.def COUNT1 = R18;
.def COUNT2 = R19;.org 0
rjmp START;START:
ldi TEMP,RAMEND;
out SPL,TEMP; //stack
ser TEMP;
out DDRB,TEMP; //PORTB-все выходные
ldi VERT,0xFE;LOOP:
out PORTB,VERT;
ser COUNT1;
ldi COUNT2,32;WAIT:
dec COUNT1;
brne WAIT;
dec COUNT2;
brne WAIT;
mov TEMP,VERT;
rol TEMP;
rol VERT;
rjmp LOOP;.exit
E-mail: info@telesys.ru