История изменений
Исправление WRG, (текущая версия) :
Попробовал отключить сторожевой таймер, так же мигает зацикливается. Вариант со sleep_mode() тоже не помог, а -Os у меня и так уже есть. Забавно, но если оставить только такой код в функции main, то мигает 1 раз как положено.
#define F_CPU 1000000UL // 1 MHz
#include <avr/io.h>
#include <util/delay.h>
void setup();
int main(void)
{
DDRC |= _BV(PC1); // led pin as outpiut
PORTC |= _BV(PC1);
_delay_ms(100);
PORTC &= ~_BV(PC1);
_delay_ms(100);
while(1);
return 0;
}
void setup()
{
DDRB = 0x0;
DDRC = 0x0;
DDRD = 0x0;
DDRC |= _BV(PC1); // led pin as outpiut
// left motor
DDRB |= _BV(PB7); // enable pin
DDRD |= _BV(PD5); // pin 1
DDRD |= _BV(PD6); // pin 2
// right motor
DDRB |= _BV(PB6); // enable pin
DDRB |= _BV(PB1); // pin 1
DDRB |= _BV(PB2); // pin 2
PORTC |= _BV(PC1);
_delay_ms(100);
PORTC &= ~_BV(PC1);
_delay_ms(100);
}
PS: За код спасибо. Глянул, есть что одолжить)
Исходная версия WRG, :
Попробовал отключить сторожевой таймер, так же мигает зацикливается. Вариант со sleep_mode() тоже не помог, а -Os у меня и так уже есть. Забавно, но если оставить только такой код в функции main, то мигает 1 раз как положено.
#define F_CPU 1000000UL // 1 MHz
#include <avr/io.h>
#include <util/delay.h>
void setup();
int main(void)
{
DDRC |= _BV(PC1); // led pin as outpiut
PORTC |= _BV(PC1);
_delay_ms(100);
PORTC &= ~_BV(PC1);
_delay_ms(100);
while(1);
return 0;
}
void setup()
{
DDRB = 0x0;
DDRC = 0x0;
DDRD = 0x0;
DDRC |= _BV(PC1); // led pin as outpiut
// left motor
DDRB |= _BV(PB7); // enable pin
DDRD |= _BV(PD5); // pin 1
DDRD |= _BV(PD6); // pin 2
// right motor
DDRB |= _BV(PB6); // enable pin
DDRB |= _BV(PB1); // pin 1
DDRB |= _BV(PB2); // pin 2
PORTC |= _BV(PC1);
_delay_ms(100);
PORTC &= ~_BV(PC1);
_delay_ms(100);
}