#define F_CPU 8000000
#include <avr/io.h>
#include <util/delay.h>


void delay_us (int v){
       while(v--) _delay_us(1);
 }

void hang (unsigned int i, unsigned int k){
 uint16_t delay;
 int j;

 j= 1000000/(i*2);

 delay = ((uint32_t)k*1000)/(1000000/i);

 while ((delay--) !=0){
 PORTB =  (1<<PINB2);
 delay_us(j);
 PORTB = (0<<PINB2);
 delay_us(j);

 }

}

int main (void){
DDRB = (1<<PINB2);

hang(262,250);
_delay_ms(70);
hang(330,250);
_delay_ms(70);
hang(262,250);
_delay_ms(70);
hang(330,250);
_delay_ms(70);
hang(392,500);
_delay_ms(70);
hang(392,500);

_delay_ms(200);

hang(262,250);
_delay_ms(70);
hang(330,250);
_delay_ms(70);
hang(262,250);
_delay_ms(70);
hang(330,250);
_delay_ms(70);
hang(392,500);
_delay_ms(70);
hang(392,500);

_delay_ms(200);

hang(523,250);
_delay_ms(70);
hang(494,250);
_delay_ms(70);
hang(440,250);
_delay_ms(70);
hang(392,250);
_delay_ms(70);
hang(349,500);
_delay_ms(70);
hang(440,500);
_delay_ms(70);

_delay_ms(200);

hang(392,250);
_delay_ms(70);
hang(349,250);
_delay_ms(70);
hang(330,250);
_delay_ms(70);
hang(294,250);
_delay_ms(70);
hang(262,500);
_delay_ms(70);
hang(262,500);
_delay_ms(70);



}
#define F_CPU 8000000
#include <avr/io.h>
#include <util/delay.h>


void delay_us (unsigned int v){
while(v--) _delay_us(1);
}

void hang (unsigned int i, unsigned int k){
uint16_t delay;
unsigned int j;

j= 1000000/(i*2);

delay = ((uint32_t)k*1000)/(1000000/i);
while ((delay--) !=0){
PORTB =  (1<<PINB2);
delay_us(j);
PORTB = (0<<PINB2);
delay_us(j);

}

}

int main (void){
DDRB = (1<<PINB2);

hang(262,250);
_delay_ms(70);
hang(330,250);
_delay_ms(70);
hang(262,250);
_delay_ms(70);
hang(330,250);
_delay_ms(70);
hang(392,500);
_delay_ms(70);
hang(392,500);

_delay_ms(200);

hang(262,250);
_delay_ms(70);
hang(330,250);
_delay_ms(70);
hang(262,250);
_delay_ms(70);
hang(330,250);
_delay_ms(70);
hang(392,500);
_delay_ms(70);
hang(392,500);

_delay_ms(200);

hang(523,250);
_delay_ms(70);
hang(494,250);
_delay_ms(70);
hang(440,250);
_delay_ms(70);
hang(392,250);
_delay_ms(70);
hang(349,500);
_delay_ms(70);
hang(440,500);
_delay_ms(70);

_delay_ms(200);

hang(392,250);
_delay_ms(70);
hang(349,250);
_delay_ms(70);
hang(330,250);
_delay_ms(70);
hang(294,250);
_delay_ms(70);
hang(262,500);
_delay_ms(70);
hang(262,500);
_delay_ms(70);



}
