Цитата(nicname @ Apr 26 2008, 22:18)

Понятно , что пример в GCC-AVR Inline Assembler Cookbook 2/8 бестолковый для бестолковых начинающих ...
Он нормальный, просто он для начинающих в ассемблерных вставках, а не для начинающих в Си:-)
Цитата(nicname @ Apr 26 2008, 22:18)

Код
__asm__ __volatile__ (
"in %0, %1"
: "=r" (value)
: "I" (_SFR_IO_ADDR(PORTD))
);
mainendloop: goto mainendloop;
}
Что должен, по-вашему, сделать этот кусок ассемблера? Скопировать значение из PORTD в value, так? Где объявление переменной value? Нету, вот и ошибка номер раз. Где объявление переменной PORTD? В файле avr/io.h. Где строчка
#include <avr/io.h> в начале? Нету. Вот и вторая ошибка.
Вы для начала просто Си немножко займитесь, а уж потом ассемблерные вставки.
Если бы я знал, что такое электричество...