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

 
 
> Проблема с ISP через LPT.
Княго
сообщение Oct 2 2009, 19:34
Сообщение #1





Группа: Участник
Сообщений: 7
Регистрация: 2-10-09
Пользователь №: 52 714



Здравствуйте! У меня схема с ATTiny2313v, питание 3 вольта от дешевых батареек, программирование через lpt напрямую, используя avrdude. При первом чтении мк определился, флеш прочиталась правильно (все ff). Через некоторое время (секунд 30-60) из памяти стали читаться последовательные числа парами (00, 00, 01, 01, 02, 02, 03, 03, 04, 04 ...), еше через некоторое время - мусор, а еще через некоторое - нули. Если отключить питание, то минут через 15 можно всё начать с начала - опять будет то же самое.
В чем причина такого странного поведения? Как заставить его нормально прошиваться?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
AHTOXA
сообщение Oct 3 2009, 07:15
Сообщение #2


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Цитата(Княго @ Oct 3 2009, 01:34) *
В чем причина такого странного поведения?


Наверное в том, что на LPT уровни 5в?

Цитата
Как заставить его нормально прошиваться?


Либо быстренько прошить за 30 секунд, либо собрать минимальный адаптер с буферной микросхемой и питанием её от программируемого устройства.


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
Княго
сообщение Oct 3 2009, 08:13
Сообщение #3





Группа: Участник
Сообщений: 7
Регистрация: 2-10-09
Пользователь №: 52 714



Цитата(AHTOXA @ Oct 3 2009, 11:15) *
Наверное в том, что на LPT уровни 5в?

Это отпадает, потому что я запитал его от пяти вольт.

При включенном питании от него приходят те же данные, что на него посылаются. При выключенном приходят нули, при пустом LPT - ff. Как будто MISO и MOSI закорочены, но только при включенном питании.
Go to the top of the page
 
+Quote Post
ReAl
сообщение Oct 3 2009, 08:56
Сообщение #4


Нечётный пользователь.
******

Группа: Свой
Сообщений: 2 033
Регистрация: 26-05-05
Из: Бровари, Україна
Пользователь №: 5 417



Цитата(Княго @ Oct 3 2009, 11:13) *
При включенном питании от него приходят те же данные, что на него посылаются. При выключенном приходят нули, при пустом LPT - ff. Как будто MISO и MOSI закорочены, но только при включенном питании.
Не совсем те же. При работающем канале SPI программирования, но без входа в программирование (или при случайном выходе из него из-за какого-то сбоя) - по этому каналу идёт задержка в один байт.
При попытке "читать" из кристалла в таком состоянии при чтении флеш и будут читаться байты 00 00 01 01 02 02 и т.д. - младшие байты адресов *слов*, которые шли третьими в командах чтения и вышли из кристалла четвёртыми на месте данных. Так же выходит при залоченном кристалле, когда блокируется считывание.
Из EEPROM при этом читается 00 01 02 03 ...
При паршивых землях/больших наводках бывает, что несколько первых команд проходит нормально, а потом сбивается обмен (проскочил лишний SCK - нарушилась нарезка битового потока на байты, автомат программирования не воспринимает команды чтения и просто выпускает наружу всё, что принял, но оно проходит сквозь внутренний 8-битный сдвиговый регистр и задерживается на байт для программатора).

Если есть время - попробуйте avreal-ом, мне просто интересно, скажет ли он synchronisation lost

Если он так скажет - чистить земли, ставить, как уже советовалось, керамику поближе к контроллеру, врезать последовательные резисторы 30-100 Ом в сигналы (особенно SCK и даже может после резистора пикофарад сто на землю).


--------------------
Ну, я пошёл… Если что – звоните…
Go to the top of the page
 
+Quote Post



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

 


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


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