roboforum.ru

Технический форум по робототехнике.

 

EEPROM у атмелок

Программирование микроконтроллеров AVR, PIC, ARM.
Разработка и изготовление печатных плат для модулей.

EEPROM у атмелок

Сообщение к561ЛА7 » 02 мар 2011, 23:11

Задаю переменную

eeprom unsigned char x

икс меняю кнопками в обработчике прерываний и вывожу его на экран
После выключения питания икс как положено выводиться уже запомненное снова.

Но не понятно как она работает: каждое прерывание икс пишется в еепром заново или записть происходит туда только при изменении икса?
а то прерывания идут постоянно , не закончиться ли таким образом запас по записи в в еепром в 100.000 ?
О любимый мой учитель АВР 123
Надавал ты мне советов, и что вышло, посмотри
Я теперь паяю платы, программирую МК
Заказал я их по почте, у Семенова М.К.
Аватара пользователя
к561ЛА7
 
Сообщения: 337
Зарегистрирован: 08 дек 2009, 19:21
Откуда: Й-Ола

Re: EEPROM у атмелок

Сообщение Michael_K » 02 мар 2011, 23:16

А вы сравнивайте то, что хотите записать с тем, что там уже записано. Если совпадает, то не мучайте еепромку.
Аватара пользователя
Michael_K
 
Сообщения: 6034
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Re: EEPROM у атмелок

Сообщение к561ЛА7 » 02 мар 2011, 23:27

дак втом то и дело что я ничего туда не зписываю .
я только ввместо
unsigned char написал в программе eeprom unsigned char, и оно само записывавется.

но вот только как часто?
О любимый мой учитель АВР 123
Надавал ты мне советов, и что вышло, посмотри
Я теперь паяю платы, программирую МК
Заказал я их по почте, у Семенова М.К.
Аватара пользователя
к561ЛА7
 
Сообщения: 337
Зарегистрирован: 08 дек 2009, 19:21
Откуда: Й-Ола

Re: EEPROM у атмелок

Сообщение Сергей » 02 мар 2011, 23:48

к561ЛА7, мне всегда нравились Ваши темы :good:
к561ЛА7 писал(а):но вот только как часто?

Так часто, как вы в нее что-нибудь записываете
Сергей
 
Сообщения: 3741
Зарегистрирован: 29 дек 2004, 23:15
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей

Re: EEPROM у атмелок

Сообщение yak-40 » 02 мар 2011, 23:50

к561ЛА7 писал(а):икс меняю кнопками в обработчике прерываний и вывожу его на экран

Ну дык, меняешь-же. Вот он и прописывается каждый раз.
к561ЛА7 писал(а):не закончиться ли таким образом запас по записи в в еепром в 100.000 ?

Конечно закончится.
- Этот человек - не человек! это робот!
- Как? уже делают?!
- Делают!!!
Аватара пользователя
yak-40
 
Сообщения: 3019
Зарегистрирован: 23 окт 2007, 22:03
Откуда: Москва
прог. языки: С
ФИО: Евгений Яковец

Re: EEPROM у атмелок

Сообщение SERGEY_M » 03 мар 2011, 00:11

икс меняю кнопками в обработчике прерываний и вывожу его на экран

"х" меняется только когда кнопки жмешь или при каждом входе в прерывание?
если первое, то нормально, никуда от этого не денешься, ты-же меняешь значение переменной и соотв. ее перезаписываешь
а если в прерывании все время "х" перезаписывается, независимо от нажатий кнопок, то это плохо
хотя в любом случае не мешает сравнивать записаное и записываемое значение, если конечно время позволяет))
Аватара пользователя
SERGEY_M
 
Сообщения: 682
Зарегистрирован: 20 мар 2009, 12:45
Откуда: Украина, Одесса
ФИО: Сергей

Re: EEPROM у атмелок

Сообщение к561ЛА7 » 03 мар 2011, 15:25

В обработчике прерывания, которое идет с частотой 100 герц меняю кнопками значения Х

if (кнопка_нажата == 1) {
Х = Х++;
}
команды же записи в еепром никакой не делаю.

вроде писаться не должно, так как это все равно что в бесконечный цикл вставить.
О любимый мой учитель АВР 123
Надавал ты мне советов, и что вышло, посмотри
Я теперь паяю платы, программирую МК
Заказал я их по почте, у Семенова М.К.
Аватара пользователя
к561ЛА7
 
Сообщения: 337
Зарегистрирован: 08 дек 2009, 19:21
Откуда: Й-Ола

Re: EEPROM у атмелок

Сообщение avr123.nm.ru » 03 мар 2011, 16:11

достаточно if (кнопка_нажата)

А что должно происходить по Х =
Читайте !
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14200
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва
Предупреждения: -8

Re: EEPROM у атмелок

Сообщение -= Александр =- » 03 мар 2011, 16:38

Красивый вариант был бы сделать выключение программно с кнопки и по ее нажатию запоминать все переменные, а потом отключать ключ питания одной из ног контроллера. Ну или просто в спячку его отправлять.
Ниндзя - круче всех. Они умеют ходить по воде, делить на ноль и угадывать шаффл в АйПоде.
Аватара пользователя
-= Александр =-
Мастер Самоделкин
 
Сообщения: 3664
Зарегистрирован: 11 окт 2004, 19:20
Откуда: Россия, СПб
прог. языки: C++, VB, asm
ФИО: Курмис Александр Андреевич

Re: EEPROM у атмелок

Сообщение SERGEY_M » 03 мар 2011, 18:16

вроде писаться не должно

а оно пишется...
eeprom unsigned char x - это кто написал?
т.к. компилятору указано расположить переменную "х" в eeprom, то при присваивании ей какого либо значения он сам ее перезаписывает
и особо его упрашивать не нужно :)
Аватара пользователя
SERGEY_M
 
Сообщения: 682
Зарегистрирован: 20 мар 2009, 12:45
Откуда: Украина, Одесса
ФИО: Сергей

Re: EEPROM у атмелок

Сообщение к561ЛА7 » 20 апр 2011, 21:56

а почему код вижн вонингом ругается " неинициализирован ЕЕПРОМ" если
eeprom insigned char пишешь?
О любимый мой учитель АВР 123
Надавал ты мне советов, и что вышло, посмотри
Я теперь паяю платы, программирую МК
Заказал я их по почте, у Семенова М.К.
Аватара пользователя
к561ЛА7
 
Сообщения: 337
Зарегистрирован: 08 дек 2009, 19:21
Откуда: Й-Ола

Re: EEPROM у атмелок

Сообщение igel » 20 апр 2011, 22:37

просто предупреждает что переменной не присвоено значение
для обычных переменных это приводит к глюкам в программе, а тут из еепрома просто вытащите в нужный момент
igel
 
Сообщения: 63
Зарегистрирован: 07 апр 2011, 20:52
Откуда: г.Трёхгорный


Вернуться в Микроконтроллеры

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3

Mail.ru counter