Мелкие вопросы по МК и ПЛИС.
Re: Мелкие вопросы по МК и ПЛИС.
Я имею в виду установить плату расширения с LPT разъёмом в слот материнской платы. И мой компьютер будет оснащён параллельным портом для подключения самодельного программатора. Другой вариант, купить переходник USB-LPT и подключать этот программатор к этому переходнику. Вот я и спрашиваю, заменит-ли этот переходник полноценный LPT-порт?
-
Alexeyslav
- Друг Кота
- Сообщения: 4550
- Зарегистрирован: Чт май 05, 2011 21:26:34
- Откуда: Украина, Славутич
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
Все это костыли, LPT-порт очень нежный, чуть что - вышибает. Если он нужен только для программатора - не стоит городить костыли, собственно программатор на LPT-порту это костыль времен DOS-а доживший до времен Windows-8. Пора бы избавляться от ненужных костылей. Сейчас даже делать программатор не имеет смысла - навыков на его сборке не получишь, а купить готовый можно за 10$...15$ и съекономить себе кучу времени на что-то более полезное.
Re: Мелкие вопросы по МК и ПЛИС.
Какой-же выход? Заказать USB программатор? Где? Какой? Оооххх, надеюсь я не пожалею, что связался с микроконтроллерами. Для меня эта тема дремучий лес. Извиняюсь за не умные вопросы, но это вообще мои первые вопросы по МК.
-
Alexeyslav
- Друг Кота
- Сообщения: 4550
- Зарегистрирован: Чт май 05, 2011 21:26:34
- Откуда: Украина, Славутич
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
Можно в местных магазинах, можно на И-бей... выбирай
Re: Мелкие вопросы по МК и ПЛИС.
тимок писал(а):На моём компьютере не LPT порта.
посмотри на материнке......, у меня он был в виде выведенных штырьков......, я его вынес наружу......, советую самому сделать программатор типа 5 проводков ...., но перед этим вниматьльно посмотреть сие http://www.fanatnauki.ru/index.php?opti ... &Itemid=18
Tell Me The Truth
-
Prosperous
- Встал на лапы
- Сообщения: 129
- Зарегистрирован: Ср янв 18, 2012 19:37:10
Re: Мелкие вопросы по МК и ПЛИС.
Здравствуйте, уважаемые коты. Возник у меня вот такой вопрос по EEPROM, прямо мистика какая-то
Делаю я прошивку для atmega32. Другой человек делает ПО верхнего уровня для управления изделием. Сейчас идет стадия отладки. Так вот при записи в ячейку одного из значений, постоянно дохнет эта ячейка памяти. Сдохло 1 раз. Перезаписал в другую ячейку. Опять сдохла. Записал еще в одну - та же картина. Причем другие ячейки спокойно перезаписываются и не выгорают. А с этим параметром постоянно. В чем может быть проблема? А то я, право, не знаю даже в какую сторону копать, чтобы выяснить причину. Спасибо
- Gudd-Head
- Друг Кота
- Сообщения: 20092
- Зарегистрирован: Чт сен 18, 2008 12:27:21
- Откуда: Столица Мира Санкт-Петербург
Re: Мелкие вопросы по МК и ПЛИС.
Prosperous писал(а):постоянно дохнет эта ячейка памяти.
Что значит "дохнет"? Поподробней, пожалуйста.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Re: Мелкие вопросы по МК и ПЛИС.
"с параметром" имеется ввиду значение переменной? Тогда смотреть только в сторону собственной программы и искать собственные косяки. Другие переменные, по вашему утверждению, пишутся. Вот и ищите разницу между ними.Prosperous писал(а):А с этим параметром постоянно. В чем может быть проблема? А то я, право, не знаю даже в какую сторону копать, чтобы выяснить причину. Спасибо
И, действительно, уточните определение термину "выгорают". Есть открытое пламя? Дым? Вы пишете в фиксированные адреса EEPROM?
С уважением,
Виктор.
Виктор.
-
Prosperous
- Встал на лапы
- Сообщения: 129
- Зарегистрирован: Ср янв 18, 2012 19:37:10
Re: Мелкие вопросы по МК и ПЛИС.
Так пишутся они таким же точно способом. Операции чтения/записи стандартные, взятые из даташита. Под параметром имеется ввиду значение переменной. При записи данных в eeprom через программатор выдается ошибка: значение ячейки такой - то 0x00, а должно быть, к примеру, 0x01. и все. а когда эту переменную записываешь в другую ячейку - все нормально, только через некоторое количество перепрошивок снова выдается такая же ошибка именно для этой переменной, а другие данные ничего, перепрошиваются.
Я вот думаю, может тот товарищ, который ПО верхнего уровня пишет, что - то не так шлет через uart, происходит сбой и ячейка портится? Может такое быть?
Я вот думаю, может тот товарищ, который ПО верхнего уровня пишет, что - то не так шлет через uart, происходит сбой и ячейка портится? Может такое быть?
Re: Мелкие вопросы по МК и ПЛИС.
Адрес ячейки?
Был глюк с записью в первые ячейки EEPROM у AVRок. У каких-то конкретных серий. Лично не натыкался, но народ жаловался.
Был глюк с записью в первые ячейки EEPROM у AVRок. У каких-то конкретных серий. Лично не натыкался, но народ жаловался.
-
Prosperous
- Встал на лапы
- Сообщения: 129
- Зарегистрирован: Ср янв 18, 2012 19:37:10
Re: Мелкие вопросы по МК и ПЛИС.
Про это я тоже читал, что, вроде, не рекомендуется в 0 и 1 ячейку писать. Так там в 42 записано было
Или первые ячейки это штук 100?
Re: Мелкие вопросы по МК и ПЛИС.
Да не помню точно, но вроде про нулевую говорили.
У вас даже не рядом, так что ищите проблему в алгоритме
У вас даже не рядом, так что ищите проблему в алгоритме
Re: Мелкие вопросы по МК и ПЛИС.
Стоп! А при чем тут программатор?!Prosperous писал(а):При записи данных в eeprom через программатор выдается ошибка: значение ячейки такой - то 0x00, а должно быть, к примеру, 0x01. и все. а когда эту переменную записываешь в другую ячейку - все нормально, только через некоторое количество перепрошивок снова выдается такая же ошибка именно для этой переменной, а другие данные ничего, перепрошиваются.
Вы переменные через программатор зашиваете? Или в теле программы они пишутся? Если в программе - с какой частотой у вас модифицируются ячейки EEPROM-а? В случаем не убивалку соорудили?
Могу одно сказать, если в процессе возникновения ваших проблем замешан еще и программатор, от меня советов не будет. Я не знаю вашего программатора.
С уважением,
Виктор.
Виктор.
-
Prosperous
- Встал на лапы
- Сообщения: 129
- Зарегистрирован: Ср янв 18, 2012 19:37:10
Re: Мелкие вопросы по МК и ПЛИС.
начальные данные (которые по тз) я шью через программатор, они устанавливаются при первом включении устройства, затем в ходе работы устройства данные уже перепрошиваются сами внутри микроконтроллера. Приходит ко мне заказчик и говорит, а давай добавим еще вот такую функцию, я говорю хорошо, дописываю код и перепрошиваю заново микроконтроллер вместе с eeprom, вот тут ячейке и приходит трындец, причем каждый раз отвечающей за один и тот же параметр (этот параметр не константа и тоже перезаписывается в процессе работы устройства). Перепрошивка и перезапись происходит очень не часто, так что ресурс я врятли выработал. А программатор/отладчик JTAGICE mkII.
- Gudd-Head
- Друг Кота
- Сообщения: 20092
- Зарегистрирован: Чт сен 18, 2008 12:27:21
- Откуда: Столица Мира Санкт-Петербург
Re: Мелкие вопросы по МК и ПЛИС.
Перед повторным прошиванием ЕЕПРОМ стирается?
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
-
Prosperous
- Встал на лапы
- Сообщения: 129
- Зарегистрирован: Ср янв 18, 2012 19:37:10
Re: Мелкие вопросы по МК и ПЛИС.
Да нет, тупо переписываются новые значения. Хотя в остальные ячейки, в которых хранится другая информация, изначально записываются нули. Что, наверное, не есть хорошо?
Re: Мелкие вопросы по МК и ПЛИС.
Это банально, может дело и не в этом, но нельзя в ЕЕПРОМ писать постоянно, в процессе работы программы - ЕЕПРОМ сдохнет. Обычно, надо писать все в ОЗУ, а в ЕЕПРОМ сохранять перед выключением (но надо дать МК чуть времени на сохранение, и сигнал "питание пропало"), или один раз при изменении какого-то параметра (громкости, яркости экрана и т.д.)
-
Prosperous
- Встал на лапы
- Сообщения: 129
- Зарегистрирован: Ср янв 18, 2012 19:37:10
Re: Мелкие вопросы по МК и ПЛИС.
Это банально, может дело и не в этом, но нельзя в ЕЕПРОМ писать постоянно, в процессе работы программы - ЕЕПРОМ сдохнет. Обычно, надо писать все в ОЗУ, а в ЕЕПРОМ сохранять перед выключением (но надо дать МК чуть времени на сохранение, и сигнал "питание пропало"), или один раз при изменении какого-то параметра (громкости, яркости экрана и т.д.)
Т.е. читать начальные данные из EEPROM в буфер, перезаписывать их, и при необходимости сохранять обратно в EEPROM? А где лучше хранить, просто в обычном буфере или лучше буфер разместить в памяти программ?
- Gudd-Head
- Друг Кота
- Сообщения: 20092
- Зарегистрирован: Чт сен 18, 2008 12:27:21
- Откуда: Столица Мира Санкт-Петербург
Re: Мелкие вопросы по МК и ПЛИС.
Prosperous писал(а):в памяти программ?
Если только у вас МК Ramtron с FRAM памятью
Т.к. у флэш памяти ресурс на порядок меньше, чем у ЕЕПРОМ.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Re: Мелкие вопросы по МК и ПЛИС.
Как угодно делайте. Лишь соблюдайте правило - перписывать eeprom требуется как можно реже. По возможности сделайте интерливинг по ячейкам, чтобы равномернее распределять "износ". Рекомендуют при старте сохраняемые переменные сосчитывать в ОЗУ и работать с ними. В случае пропадания питания применить механизм опережающего сохранения данных в ЕЕПРОМ. Этот прием используется веками. Еще до появления МК в том виде, как они сейчас есть. Или как вариант, примените внешнее малопотребляющее ОЗУ с бекапом по питанию.Prosperous писал(а):Это банально, может дело и не в этом, но нельзя в ЕЕПРОМ писать постоянно, в процессе работы программы - ЕЕПРОМ сдохнет. Обычно, надо писать все в ОЗУ, а в ЕЕПРОМ сохранять перед выключением (но надо дать МК чуть времени на сохранение, и сигнал "питание пропало"), или один раз при изменении какого-то параметра (громкости, яркости экрана и т.д.)
Т.е. читать начальные данные из EEPROM в буфер, перезаписывать их, и при необходимости сохранять обратно в EEPROM? А где лучше хранить, просто в обычном буфере или лучше буфер разместить в памяти программ?
С уважением,
Виктор.
Виктор.