aaarrr 69 4 мая, 2011 Опубликовано 4 мая, 2011 · Жалоба кароче глюки слош и рядом, ну вот если вы такие умные, просвятите как избавится ог глюков работы дисплеся при 2 командал lcd_gotoxy(0, 1); strchis("А"); ели запустить данній код в прерівание по входу, и дать на вхоод несколько десятком кГц??? Сначала объясните, зачем может понадобиться писать таким образом? Конечно, можно писать программы абы как и "обезглючивать" их выключением оптимизации и прерываний, вместо поиска реальной проблемы, но профессиональным такой подход не назовешь. Если для корректной записи в EEPROM приходится выключать прерывания, значит программа на 100% написана неправильно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
singlskv 0 4 мая, 2011 Опубликовано 4 мая, 2011 (изменено) · Жалоба ...[CENSORED] нужно все го лишь скопировать свои данные во временную переменную которая для записи в EEEPROM Изменено 4 мая, 2011 пользователем IgorKossak Бездумное цитирование, оскорбление. Последнее устное предупреждение Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ILYAUL 0 4 мая, 2011 Опубликовано 4 мая, 2011 · Жалоба Если для корректной записи в EEPROM приходится выключать прерывания, значит программа на 100% написана неправильно. Абсолютно согласен! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
singlskv 0 4 мая, 2011 Опубликовано 4 мая, 2011 · Жалоба [CENSORED] нужно все го лишь скопировать свои данные во временную переменную которая для записи в EEEPROM Уважаtмый модератор, слово ",баран" не имеет национальности... я как бы понимаю Вашу попытку соблюсти политкорректность... но ИМХО, это не тот случай... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mdmitry 0 4 мая, 2011 Опубликовано 4 мая, 2011 (изменено) · Жалоба .... :bb-offtopic: Уважаемый Integral, этот форум на русском языке. Будьте добры соблюдать нормы языка на форуме. IMHO читать неприятно и тяжело. Изменено 5 мая, 2011 пользователем IgorKossak +1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
codenamehawk 0 4 мая, 2011 Опубликовано 4 мая, 2011 · Жалоба кароче глюки слош и рядом, ну вот если вы такие умные, просвятите как избавится ог глюков работы дисплеся при 2 командал lcd_gotoxy(0, 1); strchis("А"); ели запустить данній код в прерівание по входу, и дать на вхоод несколько десятком кГц??? вот, значит при работе с дисплеем тоже прерівания отклювать? ато при ежедневном использовании раз в 3-4 месяца клиент находит как заглючить устроство? 'aaarrr' в посте №16 все объяснил, я позволю добавить, что процессор должен гарантированно успеть обработать код прерывания, до наступления следующего прерывания. (нп. обработка прерывания INT0 должна быть законченна до наступления следующего INT0) Из этого следует, что или код прерывания должен быть очень коротким или проц. очень быстрым. А вы явно впихнули прожорливые команды в прерывание. И это все я описал для одного прерывания, а если у вас в это время прерывание с более высоким приоритетом будет "мурку тянуть" (Если кто не знает что такое мурку тянуть) то и получите "не работоспособную" прогу . Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
IgorKossak 0 5 мая, 2011 Опубликовано 5 мая, 2011 · Жалоба Уважаtмый модератор, слово ",баран" не имеет национальности... я как бы понимаю Вашу попытку соблюсти политкорректность... но ИМХО, это не тот случай... 1. Сюда ходят люди, а не "бараны". 2. Публичное обсуждение действий модератора. В совокупности - статус на неделю read only. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Oleg_DI 0 5 мая, 2011 Опубликовано 5 мая, 2011 · Жалоба Я начал тему о другом запись с протоколом в память не обязательно во внутреннию ЕЕПРОМ .это пример Я так записываю в любую Энергонезависимую память.Мы ушли в другую сторону.Записывать в прерывании или нет зависит от самой программы.Если в основном цикле программы требуется одно прерывание которое не влияет на работу программы в данный момент,почему я не могу его выключить перед записью в ЕЕПРОМ или вы включаете все прерывания которые потребуются в программе сразу после сброса. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
777777 0 5 мая, 2011 Опубликовано 5 мая, 2011 · Жалоба елементарно ватсон... запись в еепром идет долго, т.е. нужна задержка в программе при записи что бы записалось (цыклом вайл ждем пока не закончиться запись, и только тогда работаем дальше) Запись идет действительно долго, поэтому глупо сидеть в цикле и ждать готовности, для этого у самого еепрома есть свои прерывания, посредством которых он сообщает об окончании записи. если в ето (пока цыкв вайл ждет пока закончиться запись) время произойдет абсолютно любое прерывание, то запись может (а может и нет) заглючит и результат записи может быть любим Если программу написать столь же грамотно, как этот текст, то непременно заглючит. Но в AVR никаких предпосылок к этому нет. В любое время в любов приреванни может быть команда записи в еепром Если у вас запись в еепром выполняется в "приреванни", то это архитектурная ошибка. Если же при этом программа висит там ожидая окончания записи, то за такое нужно отрывать руки. В таких случаях делают кольцевой буфер, программа записывает туда информацию, необходимую для записи, а подпрограмма обработки прерываний в фоновом режиме, не торопясь, их записывает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Oleg_DI 0 5 мая, 2011 Опубликовано 5 мая, 2011 · Жалоба не получается у нас вернутся к основной теме.Значит все делают так, Читают байт памяти и если он не 0xff запись достоверна. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
swisst 0 5 мая, 2011 Опубликовано 5 мая, 2011 · Жалоба не получается у нас вернутся к основной теме.Значит все делают так, Читают байт памяти и если он не 0xff запись достоверна. а если в ЕЕПРОМ нужно сохранить значение 0xFF ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ILYAUL 0 5 мая, 2011 Опубликовано 5 мая, 2011 · Жалоба не получается у нас вернутся к основной теме.Значит все делают так, Читают байт памяти и если он не 0xff запись достоверна. А если он 0xAA или 0x55 а Вы писали 0x02 / Проще вычесть прочитаное из записываемого и если не ноль то запись не верна Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
GDI 0 5 мая, 2011 Опубликовано 5 мая, 2011 · Жалоба А Вы опишите задачу, а то так можно гадать бесконечно. Зачем Вам вообще нужен такой контроль содержимого ЕЕПРОМ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Oleg_DI 0 5 мая, 2011 Опубликовано 5 мая, 2011 · Жалоба В любом моём приборе требуется сохранение настроек пользователя, имеем блок данных которые требуется сохранить.В одних приборах используется внутренняя ЕЕПРОМ в других внешняя FROM.Но каждое сохранение записывается с протоколом.Сейчас я беру за основу протокол для UART там байт начала байт команды кол байт блок данных контрольная сумма.Раз протокол для UART то там много дополнительного.Вот я и спрашивал кто как делает в этих случаях. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
GDI 0 5 мая, 2011 Опубликовано 5 мая, 2011 · Жалоба Настройки записываются в одно и то же место или Вы храните некую историю настроек и потому данные могут располагаться по разным адресам ЕЕПРОМ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться