|
Использование (MOSI-MISO-SCK) как портов - ?, Возможно ли самопроизвольное стирание (перепрограммирование) памяти пр |
|
|
|
May 3 2008, 13:59
|

Беспросветный оптимист
     
Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646

|
Цитата(Дон Амброзио @ May 2 2008, 08:48)  Да.. Есть опасность.. Сам такого не встречал, но народ писал, что FLASH слетала даже у микроконтроллеров, у которых даже нет функции самопрограммирования и соответственно команд записи стирания FLASH в программме, а есть только возможность ISP. Именно из-за спровоцированного помехами входа в режим программирования Причём не только FLASH слетает, но и случайным образом перепрограммируются FUSE-биты, что хуже не меньше чем слёт FLASH Подтверждаю. Если во время ресета на вход программирования приходит хрень, флешь запросто слетает. Сам я тоже не встречал, т.к. атмелами занимался мало и между делом, но один мой хороший знакомый из соседнего сектора очень живописным и убедительным матом описывал данный эффект
--------------------
Программирование делится на системное и бессистемное. ©Моё :) — а для кого-то БГ — это Bill Gilbert =)
|
|
|
|
|
May 3 2008, 14:20
|
Местный
  
Группа: Свой
Сообщений: 374
Регистрация: 6-09-05
Из: Тирасполь, Приднестровье
Пользователь №: 8 294

|
Цитата(MrYuran @ May 3 2008, 16:59)  Подтверждаю. Если во время ресета на вход программирования приходит хрень, флешь запросто слетает. Сам я тоже не встречал, т.к. атмелами занимался мало и между делом, но один мой хороший знакомый из соседнего сектора очень живописным и убедительным матом описывал данный эффект Конечно,- это просто ужасно. Лучше вообще не использовать микроконтроллеры- они часто зависают и сбоят. В космосе, я слышал, используют исключительно ламповые процессоры на лампах военной приемки. Они гораздо надежнее и устойчивее ко всем вредным воздействиям. Я вот, после пары проектов на микроконтроллерах стал делать всю автоматику на реле и на лампах. Только их все сложнее стало покупать, а шаговые искатели стали вообще дефицитом. Зато все надежно.
|
|
|
|
|
May 4 2008, 07:20
|

Местный
  
Группа: Участник*
Сообщений: 323
Регистрация: 11-02-08
Пользователь №: 34 947

|
Цитата(WHALE @ May 2 2008, 11:53)  "Сказки народов мира". " У меня был обратный случай - FLASH портилась при наличии внешнего супервизора в условиях сильных помех. Причем всё зависело от длины линии RESET и точки подключения земляного вывода супервизора. С внутренним BOD всё OK, никогда такого не наблюдалось. Больше внешний супервизор не ставлю."(с) http://www.telesys.ru/wwwboards/mcontrol/2...es/466039.shtml" А ЧТО САМОПРОГРАММРОВАНИЕ ЮЗАЛИ? отправлено С_а_ш_к_а__Ю_д_а_б_Э_п 23 апреля 2008 г. 12:12"(с) " Я вообще использовал кристалл без возможности самопрограммирования. Насколько я понял, помехи переводили его в режим последовательного программирования.
Отправлено Леонид Иванович 23 апреля 2008 г. 13:19"(с) А тут ответ товарищу, у которого EEPROM портиться даже без обращения к ней
Сообщение отредактировал Дон Амброзио - May 4 2008, 07:42
--------------------
После устранения бага в программе она стала работать....хуже
|
|
|
|
|
May 5 2008, 09:46
|
Местный
  
Группа: Участник
Сообщений: 246
Регистрация: 4-12-06
Пользователь №: 23 101

|
Цитата(MrYuran @ May 3 2008, 17:59)  Подтверждаю. Если во время ресета на вход программирования приходит хрень, флешь запросто слетает. Ну так дурак он и ... сломает. Видел схему, где ресет подключен к электролиту на 100 мкф (!) типа для задержки включения. Почитайте процедуру запуска контроллера в даташите и в свете прочитанного посмотрите на форму напряжения питания. Там бывают неплавности. Или коллекторный двигатель на почти одном питании с контроллером - никто не ждёт, что он ещё и генератор  - может просадить птание с хорошими импульсами. Наверное, длинные провода вешать не надо, а например кнопки, замыкающие на землю - пожалуйста. Они и программированию не мешают. Я часто использую разъём программирования для перемычек, какую-нибудь конфигурацию можно задать.
|
|
|
|
|
May 5 2008, 13:15
|
Гуру
     
Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047

|
Цитата(defunct @ May 3 2008, 23:28)  Бабка на базаре сказала.... Кино и немцы.  Если вы не сталкивались с этим эффектом, то стало быть подтверждаете обратное. На 90S2313 - искажение памяти программы наблюдалось. У S1200 - тоже (сталкивался лично). Дела давно минувших дней, но тем не менее... EEPROM данных у них слетала еще чаще, но по другой причине (плавное снижение напряжения питания). Уже на мегах такое мне лично не встречалось. Но вынос SPI на 70 см - это серьезно. Обязательно согласовывать линии, иначе ведомое устройство будет вести себя непредсказуемо...
|
|
|
|
|
May 9 2008, 01:06
|
Участник

Группа: Свой
Сообщений: 34
Регистрация: 10-07-07
Из: Ukraine
Пользователь №: 29 016

|
Цитата(rx3apf @ May 5 2008, 16:15)  Но вынос SPI на 70 см - это серьезно. Обязательно согласовывать линии, иначе ведомое устройство будет вести себя непредсказуемо... В плане емкостной нагрузки? Я обдумал - поскольку порты работать будут лишь на выход - поставлю буферный услитель (К561ПУ4, аналог - HC4050). А пины МК - и так подтянуты резисторами на 10К к земле. Дополнительный плюс - даже сильная помеха не пройдет с выхода лог. элемента на его вход. Еще плюс - защита портов МК от случайного КЗ во внешнем кабеле (передавили, скажем). Ресет через 4,7К - на +5В (зашунтирован диодом), на нем же - внешний супервизор питания (МС33064). Все логично? Цитата(defunct @ May 2 2008, 11:43)  С проводами 70см - надо бы переживать не о самопроизвольном программировании, а о том что помеха может исказить данные при штатном программировании. ;> Разъем внешнего кабеля будет подключаться на ту же "гребенку", к которой подкючается и программатор, так что взаимовлияние автоматически исключается. И, кстати, очень рационально используется разъем, который УЖЕ есть и запаян на плате - не требуется вообще ничего паять (буферная микросхема будет врезена в кабель, т.к. на ISP-интерфейсе априори уже есть и питание и земля. Вариант кабеля "сотовый-ПК", однако...  Цитата(Арташес @ May 3 2008, 05:25)  У меня на этих линиях кнопки висят. Подтяжка к питанию 3.3 В через резисторы 18 кОм. В течение трех лет эксплуатации никаких нареканий не возникало. Провод от кнопок к плате приблизительно 1 м. Рядом с блоком работают мощные СВЧ устройства. Так-так-так, а здесь подробней, плз: зачем же подтягивать к питанию? Можно и Pull-UPы включить, верно? И разве не логичней не "подтягивать" а "сажать" на землю? Это - вообще, т.к. в моем конкретном случае все порты будут работать на выход (через буфера, как я уже сообщал в предыдущем постинге). Кстати - всех присутствующих с Днем Радио!
|
|
|
|
|
May 11 2008, 22:13
|

кекс
     
Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326

|
Цитата(Gennadiy I.P. @ May 9 2008, 04:06)  Разъем внешнего кабеля будет подключаться на ту же "гребенку", к которой подкючается и программатор, так что взаимовлияние автоматически исключается. Ну вот, отличное решение получилось. И с разъемом и с буфером в кабеле. Теперь не о чем переживать. Цитата внешний супервизор питания (МС33064). Все логично? Я бы просто включил встроенный BOD. Работает прекрасно. Зачем ставить еще что-то внешнее? Цитата(rx3apf @ May 5 2008, 16:15)  На 90S2313 - искажение памяти программы наблюдалось. У S1200 - тоже (сталкивался лично). Дела давно минувших дней, но тем не менее... EEPROM данных у них слетала еще чаще, но по другой причине (плавное снижение напряжения питания). Со слетом EEPROM сталкивался, а со слетом флеш (без SPM в программе) - ни разу.
|
|
|
|
|
May 12 2008, 00:25
|
Участник

Группа: Свой
Сообщений: 34
Регистрация: 10-07-07
Из: Ukraine
Пользователь №: 29 016

|
Цитата(defunct @ May 12 2008, 01:13)  Ну вот, отличное решение получилось. И с разъемом и с буфером в кабеле. Теперь не о чем переживать. Я бы просто включил встроенный BOD. Работает прекрасно. Зачем ставить еще что-то внешнее? Спасибо. А зачем "внешнее"? Да просто уже с год стоит, работает, не жалуюсь.  А идея подключения внешнего индикатора, малой кровью и без новых шишек (в т.ч. - гемороидальных) возникла только сейчас. Долго мыслил, как ноги размультиплексировать (индикаторный выход и так на вход работате - от датчиков). Глаз упал на неиспользованные МОСю энд компани...  Так и возникла эта ветка.
|
|
|
|
|
May 13 2008, 12:02
|
Гуру
     
Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047

|
Цитата(Gennadiy I.P. @ May 9 2008, 05:06)  В плане емкостной нагрузки? Я обдумал - поскольку порты работать будут лишь на выход - поставлю буферный услитель (К561ПУ4, аналог - HC4050). Нет, емкость линии тут не столь существенна. Речь именно о согласовании линии. При отсутствии оного согласования устройство, вынесенное на такое расстояние, вполне может получать ложные фронты из-за "звона" кабеля. Я такое видел и при метровом куске ленточного кабеля на LPT при программировании AVR через байтбластер, и на 30-см куске кабеля 74hc595 загружали белиберду, то работали, то глючили. Либо 100-омные резисторы со стороны передатчика последовательно с линией, либо RC-цепочки со стороны приемника. По крайней мере на тактирующих сигналах.
|
|
|
|
|
May 26 2008, 01:18
|
Участник

Группа: Свой
Сообщений: 34
Регистрация: 10-07-07
Из: Ukraine
Пользователь №: 29 016

|
Цитата(rx3apf @ May 13 2008, 15:02)  Нет, емкость линии тут не столь существенна. Речь именно о согласовании линии. При отсутствии оного согласования устройство, вынесенное на такое расстояние, вполне может получать ложные фронты из-за "звона" кабеля. Я такое видел и при метровом куске ленточного кабеля на LPT при программировании AVR через байтбластер, и на 30-см куске кабеля 74hc595 загружали белиберду, то работали, то глючили. Либо 100-омные резисторы со стороны передатчика последовательно с линией, либо RC-цепочки со стороны приемника. По крайней мере на тактирующих сигналах. Точно! Совсем упустил - большое спасибо. И - персональная благодарность всем остальным отзывчивым людям (отозвавшимся на зов о помощи). Удачи!
|
|
|
|
|
May 27 2008, 17:31
|
Участник

Группа: Новичок
Сообщений: 25
Регистрация: 17-05-08
Из: г.Монте Карло
Пользователь №: 37 579

|
У меня на ATmega16 на этих выводах висит ЖКИ индикатор - шина DB7-DB4. И програмируется все это не отключая ЖКИ через USBasp.  все прекрасно работает.
|
|
|
|
|
May 27 2008, 19:17
|
Участник

Группа: Участник
Сообщений: 25
Регистрация: 8-03-08
Пользователь №: 35 744

|
Цитата(Верталь @ May 27 2008, 20:31)  У меня на ATmega16 на этих выводах висит ЖКИ индикатор - шина DB7-DB4. И програмируется все это не отключая ЖКИ через USBasp.  все прекрасно работает. Аналогично на ATmega8 c программатором PonyProg/STK200. ЖКИ подключен через резисторы 22 Ом
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|