|
Сделал свой программатор и озадачился протоколом STK, Просветите кто в теме |
|
|
|
Oct 20 2008, 15:28
|
Местный
  
Группа: Свой
Сообщений: 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-ок (Армами занимался) и упустил "бразды". А тут снова возникла потребность.
|
|
|
|
|
 |
Ответов
|
Oct 21 2008, 14:20
|

кекс
     
Группа: Свой
Сообщений: 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, то не лучше.
|
|
|
|
|
Oct 21 2008, 15:11
|
Местный
  
Группа: Свой
Сообщений: 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 тут что-то нехорошее писали, применяли их раньше? Я не применял. Видимо пришло время  Нехороших отзывов как-то не попадалось. Так что надеюсь на AD. Пока вроде не подводил. Цитата(BSV @ Oct 20 2008, 23:58)  Из собственных воспоминаний по даташиту - питание с одной стороны должно быть всегда больше чем с другой. А наличие вторичного источника многое объясняет, спасибо. Вот именно. Имеем 5 В питания, к которой подключаем ту "половину" ADG, которая хочет большего питания чем другая. А другую подключаем на внешнее "общение" по ISP. Внешнее питание получается и будет меньше или равно, как положено.
|
|
|
|
|
Oct 21 2008, 15:27
|

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

|
Цитата(Dimonira @ Oct 21 2008, 18:00)  Ну, я так понимаю, это определяется скоростью обмена 115200 бит/с. Да все так. ISP протокол избыточный, на 1 байт данных STK протокола в среднем приходится 4 байта ISP протокола. чтобы пользовать макс доступную скорость UART'a необходимо чтобы SPI работал чуть быстрее 4x115200 Hz. Цитата Так что можно тоже клок генерить. ... Вот только пока я не очень въехал, завязывать ли как-то настройку этого клока с протоколом STK? Или жёстко его как-то задать? IMHO константной частоты достаточно. (управление частотой этого клока из STK500 GUI не имеет практической ценности если не планируете оформить устройство как EVM с сокетами). STK500 кстати еще умеет напряжение питания таргета регулировать. В STK500 много того, что у Вас не будет реализовано в железе, и как по мне лучше полноценный клон простого устройства, чем неполноценный - сложного. Цитата Что-то там связано опять же с тактом работы SPI, у них вроде по-разному, ещё не вникал. Что Вы имеете в виду? SPI mode (CPHA/CPOL) не может отличаться!
|
|
|
|
|
Oct 21 2008, 19:16
|
Местный
  
Группа: Свой
Сообщений: 405
Регистрация: 4-10-04
Пользователь №: 777

|
Цитата(defunct @ Oct 21 2008, 19:27)  Что Вы имеете в виду? SPI mode (CPHA/CPOL) не может отличаться! Я имею в виду частоту работы SPI. Если почитать описание параметра PARAM_SCK_DURATION, то там видно отличие STK500 от AVRISP. Там по-разному задаётся параметр. Я пока до этого не дошёл, но наскоком понять не получилось. Сначала, когда я ещё не читал протокол, была мысль сделать программную настройку частоты работы SPI своими средствами: например, поддержав свои некие команды настройки, хранимые в EEPROM и меняемые, допустим, через терминальную программу. Меня подтолкнуло к этому обсуждение в ветке программатора Petka пожелания сделать пониженную частоту SPI. Зачем? Тем более, если реализовывать SPI на "железе" (мой случай), то изменение частоты возможно в широких пределах (не понимаю, зачем вообще делали SPI программно во многих реализациях, если он есть "железный", в чём "прикол"? да и на "железном" легко в обратную сторону подключиться и зашить контроллер программатора, как я сейчас и делаю). Вот и не решу как прикрутить настройку частоты обмена по SPI. Вот ещё что. STK500 может изменять и измерять напряжение Vtarget. Я завёл его на вход АЦП и тоже думаю - изменять то я не могу, а измерять могу. AVRISP не может ни то, ни другое. Может в режиме STK500 можно, допустим, при измерении его сообщить, а при попытке изменить, отказать, вернув ошибку или ещё как-то.
|
|
|
|
Сообщений в этой теме
Dimonira Сделал свой программатор и озадачился протоколом STK Oct 20 2008, 15:28 defunct Цитата(Dimonira @ Oct 20 2008, 18:28) А в... Oct 20 2008, 15:53     defunct ЦитатаНасчет кварца в STK500 уточню вечером.
STK50... Oct 21 2008, 21:06      Dimonira Цитата(defunct @ Oct 22 2008, 01:06) Стан... Oct 22 2008, 06:44   BSV Цитата(Dimonira @ Oct 21 2008, 19:11) Вот... Oct 21 2008, 19:21    Dimonira Цитата(BSV @ Oct 21 2008, 23:21) Тут есть... Oct 22 2008, 05:12     defunct Цитата(Dimonira @ Oct 22 2008, 08:12) Не ... Oct 22 2008, 16:18      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
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|