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

 
 
> Сделал свой программатор и озадачился протоколом STK, Просветите кто в теме
Dimonira
сообщение Oct 20 2008, 15:28
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 405
Регистрация: 4-10-04
Пользователь №: 777



Сделал железяку программатора через USB на FT232 и ATMEGA8 с портом SPI, с изоляцией и со сдвигом уровней в диапазоне 1.15-5.5В (раньше через байт-бластер шил через LPT и AvReal, а теперь нотбук, у него нету LPT). Теперь занялся писанием софта контроллера программатора. Посмотрел (достаточно бегло) протокол STK500 v2 (AVR068), варианты реализаций от Doper, Prottoss, Tuxgraphics. И вот что-то не въезжаю, если реализовывать именно STK500 v2, ведь железо (моё в частности) не может ни параллельное программирование, ни HV, ни многие опции настроек поддерживать. Тогда некий кострат получится. А в описании протокола STK500 почему-то ещё упоминается про железо AVRISP (там и строчка "отзыва" соответствующая), который поменьше может. В чём разница то (по железу)? Может надо как раз его реализовывать? В общем какой протокол сейчас лучше запихать в программатор (типа моего)? Хотелось бы, чтобы протокол не привязывался к конкретным чипам (как AVR910).
Просто я последнее время отошёл от AVR-ок (Армами занимался) и упустил "бразды". А тут снова возникла потребность.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Dimonira
сообщение Oct 20 2008, 17:35
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 405
Регистрация: 4-10-04
Пользователь №: 777



Посмотрел в протоколе описание параметра PARAM_SCK_DURATION и вроде получается, что STK500 работает на бОльшей частоте SCK нежели AVRISP. Т.е. STK500 получается работает (шьёт и читает) шустрее чем AVRISP. У STK500 и кварц, как я понял 7.3728 МГц (у меня, кстати, такой же), что вдвое больше чем у AVRISP.
Выходит, всё же лучше кастрированный STK500? Просто не "включать" его в нерабочие режимы и всё.
Go to the top of the page
 
+Quote Post
defunct
сообщение Oct 21 2008, 14:20
Сообщение #3


кекс
******

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



Цитата(Dimonira @ Oct 20 2008, 20:35) *
Т.е. STK500 получается работает (шьёт и читает) шустрее чем AVRISP. У STK500 и кварц, как я понял 7.3728 МГц (у меня, кстати, такой же), что вдвое больше чем у AVRISP.

Макс скорость ISP у них одинаковая ~1Mhz.

STK500 просто дополнительно должен (и может):
1. генерить клок для таргет процессора (сокета), до 3 с хвостиком Mhz.
2. и клок для PP режима.

в AVRISP кварц 3.6864Mhz.
Насчет кварца в STK500 уточню вечером.

Цитата
Выходит, всё же лучше кастрированный STK500?

Если Вам только ISP, то не лучше.
Go to the top of the page
 
+Quote Post
Dimonira
сообщение Oct 21 2008, 15:11
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 405
Регистрация: 4-10-04
Пользователь №: 777



Цитата(defunct @ Oct 21 2008, 18:20) *
Макс скорость ISP у них одинаковая ~1Mhz.

Ну, я так понимаю, это определяется скоростью обмена 115200 бит/с.
Цитата(defunct @ Oct 21 2008, 18:20) *
STK500 просто дополнительно должен (и может):
1. генерить клок для таргет процессора (сокета), до 3 с хвостиком Mhz.
2. и клок для PP режима.

Я у себя сделал как и в схеме Prottoss-а - вывел дополнительно вывод PB1 на 3 контакт 10-пинового ISP. Так что можно тоже клок генерить. В своё время я делал нечто такое и в байт-бластере (как Real рекомендовал). Один раз, но всё же, это спасло контроллер при неправильном прошитии фуза выбора генератора тактовой. Вот только пока я не очень въехал, завязывать ли как-то настройку этого клока с протоколом STK? Там есть какие-то опции, связанные с генерацией такта. Пока не разобрался. Есть мысли? Или жёстко его как-то задать? Хотя, надо же тогда увязывать с частотой клока SPI, так что наверное надо как-то увязать.
Цитата(defunct @ Oct 21 2008, 18:20) *
Если Вам только ISP, то не лучше.

В принципе в части ISP там большой разницы вроде нет. Что-то там связано опять же с тактом работы SPI, у них вроде по-разному, ещё не вникал.

Цитата(BSV @ Oct 20 2008, 23:58) *
Ну, ADuM - понятно, дороговато только.

Ну, извините. Сотня с чем-то рябчиков дорого? Нельзя экономить на инструментах. Хотите сделать нормальный инструмент, надо немного потратиться. А если хотите сделать себе одну-две штуки, дык вообще можете сэмплами заказать бесплатно (я пока так и сделал).
Цитата(BSV @ Oct 20 2008, 23:58) *
Про ADG330x тут что-то нехорошее писали, применяли их раньше?

Я не применял. Видимо пришло время smile.gif Нехороших отзывов как-то не попадалось. Так что надеюсь на AD. Пока вроде не подводил.
Цитата(BSV @ Oct 20 2008, 23:58) *
Из собственных воспоминаний по даташиту - питание с одной стороны должно быть всегда больше чем с другой. А наличие вторичного источника многое объясняет, спасибо.

Вот именно. Имеем 5 В питания, к которой подключаем ту "половину" ADG, которая хочет большего питания чем другая. А другую подключаем на внешнее "общение" по ISP. Внешнее питание получается и будет меньше или равно, как положено.
Go to the top of the page
 
+Quote Post
BSV
сообщение Oct 21 2008, 19:21
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 541
Регистрация: 11-04-05
Из: Москва
Пользователь №: 4 045



Цитата(Dimonira @ Oct 21 2008, 19:11) *
Вот именно. Имеем 5 В питания, к которой подключаем ту "половину" ADG, которая хочет большего питания чем другая. А другую подключаем на внешнее "общение" по ISP. Внешнее питание получается и будет меньше или равно, как положено.
Тут есть один тонкий момент - если от USB плату отключат, а от таргета нет? До свидания буфер?


--------------------
Дурак, занимающий высокий пост, подобен человеку на вершине горы - все ему кажется маленьким, а всем остальным кажется маленьким он сам. /Законы Мерфи/
Go to the top of the page
 
+Quote Post
Dimonira
сообщение Oct 22 2008, 05:12
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 405
Регистрация: 4-10-04
Пользователь №: 777



Цитата(BSV @ Oct 21 2008, 23:21) *
Тут есть один тонкий момент - если от USB плату отключат, а от таргета нет? До свидания буфер?

ХЗ. Думаю, что сейчас, когда возился с платой и подключениями, у меня так было и не раз. Но пока ничего не случилось. Возможно, что соотношение питаний важно для правильной работы драйвера. Именно работы, а не существования smile.gif При отключении от USB никакой работы быть не может, так что неважно, правильно транслирует уровни драйвер или нет. Главное, чтобы жил.

Цитата(defunct @ Oct 22 2008, 01:06) *
Некие "свои" команды - это плохая идея.

Ну почему же? Если добавляется какой-то полезный функционал, которого нет в стандартном девайсе? Не хотите - не пользуетесь, это же ни к чему не принуждает.
Цитата(defunct @ Oct 22 2008, 01:06) *
А конфигурацию которую вам задаст напр. AVR-Studio надо запоминать и хранить в EEPROM'е само-собой.

Не очень понятно что надо хранить? По описанию в протоколе, единственная хранимая настройка - полярность RESET. Хотя даже этого я ни в одном из "клонов" не видел.
Цитата(defunct @ Oct 22 2008, 01:06) *
Стандартный протокол предусматривает возможность задать частоту SPI 600Hz (для девайсов работающих от часового кварца с фузом предделителя частоты на 8, т.е. для случая когда чип работает на 4Khz).

Я как-то упустил (сейчас в голове некая каша "варится"), есть ли требование по частоте работы SPI в режиме программирования в зависимости от частоты работы целевого кристалла? Что-то я такое видел, но не помню детали.
Цитата(defunct @ Oct 22 2008, 01:06) *
AVRISP используется для прошивки конкретных устройств где напряжение таргета и так известно, или в крайнем случае его можно единожды измерить тестером.

Тестер у программиста скорее отсутствует чем присутствует. Имхо в случае траблов было бы неплохо оперативно знать состояние питания target.
Go to the top of the page
 
+Quote Post
defunct
сообщение Oct 22 2008, 16:18
Сообщение #7


кекс
******

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



Цитата(Dimonira @ Oct 22 2008, 08:12) *
Не очень понятно что надо хранить? По описанию в протоколе, единственная хранимая настройка - полярность RESET. Хотя даже этого я ни в одном из "клонов" не видел.

STK500 может хранить настройки наряжений таргета и Aref. Также вероятно должен хранить последнюю установленную скорость SPI. Насколько помню эти параметры не сбрасываются при вкл/откл питания. (уточню вечером).

Цитата
есть ли требование по частоте работы SPI в режиме программирования в зависимости от частоты работы целевого кристалла? Что-то я такое видел, но не помню детали.

Частота SPI должна быть не выше 1/4 частоты целевого девайса.

Цитата
Тестер у программиста скорее отсутствует чем присутствует. Имхо в случае траблов было бы неплохо оперативно знать состояние питания target.
У программиста который делает свои устройства сам - врятли нет тестера.
Из отрицательных сторон (так сказать доп. хлопоты) - лишний пин на разъеме, плюс некоторые программаторы могут блокировать работу когда видять Vtaget 0. (программаторы всмысле soft работающий с STK).

Цитата(Dimonira @ Oct 22 2008, 09:44) *
Вот тогда и получается, что "железным" SPI такого не достичь. Тогда вылезает программная реализация с перебором пинов и отмериванием задержек. Так? Или я что-то недопонимаю?

Я бы порекомендовал не заморачиваться программным SPI в первой реализации. Официальные прошивки AVRISP и те их не особо жаловали (по крайней мере версии 1.02-1.04 точно, на них пробовал) - установить давали, а на деле работало минимум 28.8k.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Dimonira   Сделал свой программатор и озадачился протоколом STK   Oct 20 2008, 15:28
- - defunct   Цитата(Dimonira @ Oct 20 2008, 18:28) А в...   Oct 20 2008, 15:53
|- - defunct   Цитата(Dimonira @ Oct 21 2008, 18:00) Ну,...   Oct 21 2008, 15:27
||- - Dimonira   Цитата(defunct @ Oct 21 2008, 19:27) Что ...   Oct 21 2008, 19:16
||- - defunct   ЦитатаНасчет кварца в STK500 уточню вечером. STK50...   Oct 21 2008, 21:06
||- - Dimonira   Цитата(defunct @ Oct 22 2008, 01:06) Стан...   Oct 22 2008, 06:44
|- - Dimonira   Цитата(defunct @ Oct 22 2008, 20:18) STK5...   Oct 22 2008, 17:08
|- - defunct   Цитата(Dimonira @ Oct 22 2008, 19:49) Как...   Oct 22 2008, 17:09
|- - Dimonira   Мда. Вчера поздним вечером был пробный запуск. Ком...   Oct 22 2008, 17:29
|- - defunct   Цитата(Dimonira @ Oct 22 2008, 20:29) А в...   Oct 23 2008, 10:42
- - BSV   Цитата(Dimonira @ Oct 20 2008, 19:28) с и...   Oct 20 2008, 19:18
|- - Dimonira   Цитата(BSV @ Oct 20 2008, 23:18) А можно ...   Oct 20 2008, 19:43
|- - BSV   Цитата(Dimonira @ Oct 20 2008, 23:43) Схе...   Oct 20 2008, 19:58
- - Dimonira   Хорошо, попробую. У меня просто нет готовой платки...   Oct 23 2008, 15:37
- - Dimonira   Байда какая-то. Не входит в режим программирования...   Oct 25 2008, 17:31
- - defunct   Цитата(Dimonira @ Oct 25 2008, 20:31) И, ...   Oct 25 2008, 20:32
- - Dimonira   Заработало! Пока читаю сигнатуры, фузы. Осталь...   Oct 25 2008, 21:08
- - defunct   Цитата(Dimonira @ Oct 26 2008, 00:08) Зач...   Oct 25 2008, 22:05
- - Dimonira   Цитата(defunct @ Oct 26 2008, 02:05) Дык ...   Oct 25 2008, 22:54


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

 


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


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