LINUX.ORG.RU

История изменений

Исправление beastie, (текущая версия) :

Если не ошибаюсь, watchdog вкючён по умолчанию, он и ребутит. Добавь в начало setup():

	/* disable watchdog */
	MCUSR = 0;
	wdt_disable();

Или убери соответствующий fuse.

А ещё возможно, злобный gcc вырезает while() nothing; Для разных уровней оптимизации будут разные результаты.

Используй -Os и как один из вариантов:

	for (;;)
		sleep_mode();

PS: можешь ещё тут у меня код надёргать: http://www.dim13.org/cgi-bin/cvsweb/src/avr/kernel/

Исправление beastie, :

Если не ошибаюсь, watchdog вкючён по умолчанию, он и ребутит. Добавь в начало setup():

	/* disable watchdog */
	MCUSR = 0;
	wdt_disable();

Или убери соответствующий fuse.

А ещё возможно, злобный gcc вырезает while() nothing; Для разных уровней оптимизации будут разные результаты.

Используй -Os и как один из вариантов:

	for (;;)
		sleep_mode();

Исправление beastie, :

Если не ошибаюсь, watchdog вкючён по умолчанию, он и ребутит. Добавь в начало setup():

	/* disable watchdog */
	MCUSR = 0;
	wdt_disable();

Или убери соответствующий fuse.

А ещё возможно, злобный gcc вырезает while() nothing;

Для разных уровней оптимизации будут разные результаты.

Исходная версия beastie, :

Если не ошибаюсь, watchdog вкючён по умолчанию, он и ребутит. Добавь в начало setup():

	/* disable watchdog */
	MCUSR = 0;
	wdt_disable();

Или убери соответствующий fuse.