- Код: Выделить всё • Развернуть
#include <avr/io.h>
#include <avr/delay.h>
#include <avr/interrupt.h>
ISR(INT0_vect)
{
PORTC ^= (1 << PORTC5); // meniajem log uroven na pc5
_delay_ms(100);
PORTC ^= (1 << PORTC5); // meniajem log uroven na pc5
}
int main()
{
DDRB |= ( 1 << PB0 );
DDRC |= ( 1 << PC5 );
DDRD &=~ ( 1 << PD2 );
PORTD |= ( 1 << PD2 );
GICR |= ( 1 << INT0 );
MCUCR |= 1<<ISC01;
sei();// enable interrupts
while(1)
impuls_gen();
}
int impuls_gen()
{
for(int a=0;a<50;a++)
{
PORTB |= (1 << PB0);
_delay_loop_1 (2 );
PORTB &= ~(1 << PB0);
_delay_loop_1 (2 );
}
_delay_us(4000);
}