необходимо создать программу "комета". светодиоды должны загораться в такой последовательности:
1 такт. загорается светодиод 1(самый яркий) .
2 такт. самым ярким загорается светодиод 2, светодиод 1 имеет меньшую яркость,чем светодиод 2.
3 такт. самый яркий - светодиод 3, светодиод 2 имеет такую же яркость, как светодиод 1 в такте 2, светодиод 1 -самый тусклый .
и так далее, пока все огоньки не пройдут до конца.
пытаюсь разобраться как уменьшать и увеличивать яркость светодиодов. вот код в микропаскаль, но в VMLab он не работает, так как светодиод просто загорается и ничего не меняется. в чем может быть ошибка?
program gasnet;
var
f: byte;
procedure SHIM; org OVF0addr;
begin
OCR2:=0x00;
if (OCR2<0xff) then f:=0;
if (OCR2>0x00) then f:=1;
if f=0 then OCR2:=OCR2+0x01;
if f=1 then OCR2:=OCR2-0x01;
end;
begin
PORTB:=0x00;
DDRB:=0x08;
DDRD:=0xff;
TCCR1A.WGM13:=0;
TCCR1A.WGM12:=1;
TCCR1A.WGM11:=0;
TCCR1A.WGM10:=1;
TCCR1A.COM1A1:=1;
TCCR1A.COM1A0:=0;
TCNT2:=0x00;
OCR2:=50;
while (true) do
begin
end;
end.