реклама на сайте
подробности

 
 
> ограничение eeprom
стас
сообщение Jul 25 2011, 10:28
Сообщение #1





Группа: Участник
Сообщений: 13
Регистрация: 25-07-11
Пользователь №: 66 399



всем привет! какое-то время назад в силу нескольких обстоятельств решил постичь программирование pic-ов,но пока только просто читаю книжки и никогда ничего не программировал,
начал с Корабельникова, и пока особых неясностей нет, но возможно немного заглядывая вперёд, хочу задать несколько вопросов по EEPROM, просто именно об этом нигде не пишут а интересно так что даже засыпать стал плохо; насколько я понял циклов обращений к этой памяти хоть и вроде много но если это делать из программы, то этот ресурс очень быстро закончится, так как от начала до конца программа пробегает за какие-то микросекунды.Вот взять к примеру автосигнализацию, допустим мы установили какие-то новые настройки в режиме так называемого пользовательского программирования, я как понимаю именно эти настройки хранятся в EEPROM, поскольку энергонезависимы, но это значит в тексте программы присутствует постоянное обращение к этим значениям, почему же тогда EEPROM не выходит из строя?

Ещё Корабельников пишет что может сделать ограничение на количество включений контроллера, например - 3, я понимаю что он каким-то образом привязывается к событию включения, записывает в EEPROM - 3, а потом при каждом включении отнимается единица, а затем при нуле программа зацикливается навсегда и не продолжается, - и вот тут вопрос вот в чём: как так можно отнять единицу всего один раз если программа крутится по кругу постоянно(она же всегда будет отнимать)?-единственное что приходит мне в голову так это в конце программы вместо end ставить безусловный переход, например на 5-ю строчку программы, но разве так можно?

И ещё вопрос- можно ли программно ввести ограничение на работу контроллера на один год, а восстановить, например, вводом пароля, если да то на каких пиках так реально сделать и какова общая логика выполнени такой задачи?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
стас
сообщение Jul 25 2011, 14:10
Сообщение #2





Группа: Участник
Сообщений: 13
Регистрация: 25-07-11
Пользователь №: 66 399



спасибо всем, теперь кое-что стало ясно, получается считывать из eeprom можно сколь угодно раз, а насчёт того что каждую минуту отнимать- вроде тоже многовато получается, но сама идея отличная, в конце концов можно и каждый час наверное;
а вот насчёт зоны однократного прохождения программы- такой информации в книжках нигде не читал, везде начинается с нулевого адреса, и после end на следующих витках к нему же и приходит, как же реализовать такой однократный проход? в голову только приходит то что я уже писал, ставить в вместо end безусловный переход не на самое начало(например на 5-ю строку), тогда по логике, до пятой строки программа пройдёт только один раз, но можно ли так делать и чем это грозит?

Сообщение отредактировал стас - Jul 25 2011, 14:11
Go to the top of the page
 
+Quote Post
Палыч
сообщение Jul 25 2011, 14:27
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(стас @ Jul 25 2011, 18:10) *
...начинается с нулевого адреса, и после end на следующих витках к нему же и приходит...
Ну, Вы, собственно, интуитивно правильно поняли типичную программу для микроконтроллера:
Код
start: сюда программа попадает с адреса ноль
     выполняется инициализация устройств (портов, таймеров и др.)
loop:
     этот кусок кода повторяется в бесконечном цикле (может быть и пустым, если все действия выполняеются по прерываниям от устройств)
переход на метку loop
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 19:26
Рейтинг@Mail.ru


Страница сгенерированна за 0.01408 секунд с 7
ELECTRONIX ©2004-2016