| AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR... |
как записать в EEPROM AVR 5-байтовую переменную
03.06.2015, 22:28
|
|
|
Гражданин KAZUS.RUN
Регистрация: 18.07.2006
Сообщений: 894
Сказал спасибо: 244
Сказали Спасибо 31 раз(а) в 28 сообщении(ях)
|
как записать в EEPROM AVR 5-байтовую переменную
здравствуйте,
вопрос наверно банальный, но бывает, что иногда зацикливаешься по мелочам.
работаю в cvavr .нужно записать в eeprom avr 5 байтовое переменное.
для записи 4 байтового объявляю;
unsigned long a;
и в eeprom выделяется место для 4 байта, что четко видно в протеусе .
однако не удается выделить место для 5 байтового переменного.
пробовал;
float
double
но все равно выделяется место для четырех байт, а вот 5 ни как не получается.
в чем я запутался?
|
|
|
|
03.06.2015, 23:42
|
|
|
Гуру портала
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,821
Сказал спасибо: 919
Сказали Спасибо 4,289 раз(а) в 2,570 сообщении(ях)
|
Re: как записать в EEPROM AVR 5 байтовое переменное
Лично я не видел такого типа переменной, которая занимала бы 5 байт. Может вы подскажите?
|
|
|
|
03.06.2015, 23:52
|
|
|
Гражданин KAZUS.RUN
Регистрация: 18.07.2006
Сообщений: 894
Сказал спасибо: 244
Сказали Спасибо 31 раз(а) в 28 сообщении(ях)
|
Re: как записать в EEPROM AVR 5 байтовое переменное
число для изменеия частоты генератора DDS
|
|
|
|
03.06.2015, 23:56
|
|
|
Гуру портала
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,821
Сказал спасибо: 919
Сказали Спасибо 4,289 раз(а) в 2,570 сообщении(ях)
|
Re: как записать в EEPROM AVR 5 байтовое переменное
Может массив таки?
|
|
|
|
04.06.2015, 08:47
|
|
|
Гражданин KAZUS.RUN
Регистрация: 18.07.2006
Сообщений: 894
Сказал спасибо: 244
Сказали Спасибо 31 раз(а) в 28 сообщении(ях)
|
Re: как записать в EEPROM AVR 5 байтовое переменное
ну в том что принцип работы dds генератора вы будете знать лучше чем я в этом не сомневаюсь
так вот на модуль dds генератора нужно передать 5 байтное число (слово длинной в 40 бит) и его запомнить в eeprom.слово сопровождается синхронизирующими импульсами.ну вот вроде одно слово а не массив от нула до 40 бит.
в eeprom чтобы запомнить это число нужно выделить место в 40 бит и тут загвостка.
Для 32 бит тип данных LONG выделяет место а как быть с 40 бит не соображую
|
|
|
|
04.06.2015, 09:21
|
|
|
Гуру портала
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,821
Сказал спасибо: 919
Сказали Спасибо 4,289 раз(а) в 2,570 сообщении(ях)
|
Re: как записать в EEPROM AVR 5 байтовое переменное
Можно через ' union' определить новый тип
|
Код:
|
union Data5b
{
char B5;
char B4;
char B3;
char B2;
char B1;
}; |
|
|
|
|
Сказали "Спасибо" Easyrider83
|
|
|
04.06.2015, 09:28
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 24.03.2007
Сообщений: 1,394
Сказал спасибо: 85
Сказали Спасибо 672 раз(а) в 392 сообщении(ях)
|
Re: как записать в EEPROM AVR 5 байтовое переменное
Union выделит 1 байт - B1 - B5 будут занимать одну и ту же ячейку.
Если просто массив не подходит, тогда как-то так:
typedef struct {char data[5]} T5byteVariable;
T5byteVariable var5;
|
|
|
|
Сказали "Спасибо" pambaru
|
|
|
04.06.2015, 19:05
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 29.10.2006
Сообщений: 1,449
Сказал спасибо: 99
Сказали Спасибо 318 раз(а) в 234 сообщении(ях)
|
Re: как записать в EEPROM AVR 5-байтовую переменную
Сообщение от begun
|
|
работаю в cvavr
|
Сообщение от begun
|
|
в eeprom чтобы запомнить это число нужно выделить место в 40 бит и тут загвостка.
|
eeprom unsigned char a[5];
|
|
|
|
Сказали "Спасибо" Godzilla82
|
|
|
07.06.2015, 09:46
|
|
|
Гражданин KAZUS.RUN
Регистрация: 18.07.2006
Сообщений: 894
Сказал спасибо: 244
Сказали Спасибо 31 раз(а) в 28 сообщении(ях)
|
Re: как записать в EEPROM AVR 5-байтовую переменную
друзья
чтобы вас не мучить лишними вопросами я перепробовал все ваши предложения.
убедился, что во всех есть своя изьюминка.пока не дошел до финиша но
уверен ,что информация полученная от вас меня рано или поздно доведет до победы, за что, вам всем большое спасибо.
Вы мне как родные .Самое приятное когда чувствуешь, что люди всем сердцем хотят помочь.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 01:23.
|
|