svr007 писал(а):Подскажите в чем загвоздка
а так работает?
Код: Выделить всё
unsigned int AB;
unsigned int C = 0x1C2; // 450
...
svr007 писал(а):Подскажите в чем загвоздка
Код: Выделить всё
unsigned int AB;
unsigned int C = 0x1C2; // 450
...
unalex писал(а):svr007 писал(а):Подскажите в чем загвоздка
а так работает?Код: Выделить всё
unsigned int AB;
unsigned int C = 0x1C2; // 450
...
Код: Выделить всё
eeprom struct MY_str
{
unsigned char N: 8; // номер штыря
unsigned long CKZ: 16; // расчётное среднеквадратическое значение
unsigned int Ky: 8; // коэффициент усиления
unsigned int CKZ_MS: 16; // С микросхемы среднеквадратическое значение
}Tstr[2];
eeprom Tstr mButt_1[2] = {{0,0,0,0},{0,0,0,0}};
Код: Выделить всё
eeprom struct MY_str
{
unsigned char N: 8; // номер штыря
unsigned long CKZ: 16; // расчётное среднеквадратическое значение
unsigned int Ky: 8; // коэффициент усиления
unsigned int CKZ_MS: 16; // С микросхемы среднеквадратическое значение
}Tstr[2]={{1,2,3,4},{9,6,7,8}};
Код: Выделить всё
typedef struct{
int a;
char b;
double c;
}m_t;
m_t m_struct ={1, 2, 0.1}; // Создаём структуру m_t с именем m_struct
7. Вопрос:
Не могу понять почему появляется ошибка: "Relative branch out of reach". Компилятор начал ругаться когда я добавил в программе несколько подпрограмм
(даже если они пустые) на brne, breq?
Ответ:
Команды условных переходов brne и breq имеют "дальность работы" от -64 до +63. У Вас расстояние до метки больше, поэтому ассемблер и выдает ошибку.
Используйте RCALL и RJMP, у которых дальность действия составляет от -2047 до +2047. И не строк, а команд (слов по 2 байта).
pyzhman писал(а):Объявлены корректно, но читали ли вы еррату к еепрому?
vitalik_1984 писал(а):Amstron тема про сохранение в ЕЕПРОМ уже разжевана и облизана до нельзя. Нужно работать с оперативной памятью. На то она и оперативная, а сохранять при необходимости поскольку число перезаписи для ЕЕПРОМ ограничено. Например при пропаже питания, пока еще не сильно разряжен конденсатор можно сохранить важные переменные.
Так же желательно проверять не совпадает ли случайно значение в памяти с тем, что мы хотим сохранить: Если они равны, то зачем тратить ресурс?
Amstron писал(а):Есть ли тема в которой именно это разжованно?
unalex писал(а):Amstron писал(а):Есть ли тема в которой именно это разжованно?
http://easyelectronics.ru/avr-uchebnyj- ... eprom.html
http://samou4ka.net/page/eeprom-v-mikrokontrollerah-avr
это ссылки выдал Google на первой странице поиска, по-моему довольно доходчиво расписано