МАРСОХОД

Open Source Hardware Project

Программатор

     На плате «Марсоход» используется микросхема компании Альтера EPM240T100C5. Изначально эта микросхема «пустая» и не может выполнять никакой функции. Чтобы микросхема начала делать то, что нам нужно, мы должны создать проект для нее в программе Altera QuartusII, нарисовать желаемую логическую схему, откомпилировать ее и получившийся файл «зашить» в микросхему. Только после этого микросхема типа CPLD становится функциональной – начинает работать.

     Для прошивки подобных микросхем компания Альтера предлагает специальный кабель - это либо ByteBlaster либо UsbBlaster. Мы предлагаем трейтий вариант - наш собственный программатор MBFTDI.

Есть конечно и другие варианты. Однако – все по порядку.

     Существуют кабели нескольких видов. Самые распространенные – это ByteBlaster и UsbBlaster. Оригинальные кабели компании Альтера выглядят следующим образом:

pl-byteblaster2n_s PL-USB-BLASTER-RCN_s

Слева на картинке – ByteBlaster. Он подключается к параллельному порту компьютера. Справа на картинке – UsbBlaster. Он подключается, естественно, к USB порту компьютера. Описание этих кабелей можно легко найти на сайте Альтеры. Вот соответствующие ссылки в интернете: http://www.altera.com/literature/ug/ug_bbii.pdf и http://www.altera.com/literature/ug/ug_usb_blstr.pdf. В интернет магазине Альтеры даже можно купить один из кабелей, если у Вас есть кредитная карта. Однако цена на такой кабель там весьма высока. Гораздо выгоднее приобрести такой кабель в российских представительствах компании Альтера. Например в компании ЭФО http://efo.ru/, которая имеет филиалы во многих городах России. Есть и другие поставщики компонентов. Мы, например, уже долго успешно сотрудничаем с компанией «Гамма» из Выборга http://www.icgamma.ru/

    Использовать фирменный кабель конечно хорошо, но возможно, нетерпеливый читатель, приобретя плату «Марсоход», не сможет ждать, пока ему почтой доставят кабель. И выход есть!

    Можно сделать кабель (почти бесплатно) самому, потратив совсем немного времени. Это мы и предлагаем Вам сделать. Если Вы поищите в интернете слово ByteBlaster, то легко найдете много статей про него. Вот что я нашел в yandex:

http://www.msevm.com/main/prog/bblaster.htm

http://ra4hmf.narod.ru/SCHEMES/BYTEBLASTER/byteblaster.html

http://amursat.ru/dir.php?id=142

http://www.cqham.ru/bb_smd.html и многие другие...

   Это несколько схем, фактически примерно одинаковых, но видимо нарисованых разными людьми.

sch_bblaster1

Следущая схема:

sch_bblaster2

И вот еще:

sch_bblaster3

   Несмотря на такое обилие опубликованых схем, мы рискнем предложить свою – еще проще, чем описаные выше. Микросхема 74HC244 это просто буфер, которым можно «пожертвовать». Мы его убираем из схемы и получается вот что:

sch_bblaster.PNG

    В этой нашей схеме ByteBlaster совсем нет деталей – только два разъема и провода. Мы опробовали его – ОН РАБОТАЕТ! Вы сможете легко его повторить и использовать для программирования платы Марсоход. Вот он - наш кабель:

bb_cable

Разъемчик кабеля JTAG, который будет вставляться на плату вот такой:

bb_conn

    Правда остается еще один тонкий момент. Прежде чем делать ByteBlaster пожалуйста убедитесь, что в Вашем компьютере все еще есть параллельный порт, к которому должен подключаться наш кабель. Современная тенденция такова, что многие современные компьютеры могут не иметь параллельного порта. Что тут можно посоветовать? Ну, например, можно в любом компьютерном магазине попробовать купить PCI плату параллельного порта. Она может называться «Контроллер PCI, Multi I/O, 1xLPT25F»

Стоит такая плата не очень дорого, около 400 рублей.

В любом случае, похоже, что сделать кабель самому и купить контролер LPT может быть дешевле, чем купить готовый UsbBlaster.

Есть еще один вариант. На материнской плате может не быть внешнего разъема LPT, но разъемчик к нему может быть на самой материнской плате. Например материнская плата ASRock G31M-GS имеет такой разъем. Тогда кабель можно подключить прамо к материнской плате вот так:

  mb_install

Если у Вас другая материнская плата, то нужно проверить, как расположены контакты в разъеме LPT на плате. Почитайте в инструкции к материнской плате. Для ASRock G31M-GS расположение контактов в колодке вот такое:

mb_sock

Надеюсь эта статья поможет Вам в изготовлении своего кабеля ByteBlaster для программирования платы Марсоход.

 

Комментарии  

+1 #7 eungene 15.12.2010 19:07
ОС - win 7, Quartus 10.0
+1 #6 eungene 15.12.2010 18:54
проводки длинной 15см
+1 #5 eungene 15.12.2010 18:53
Цитирую nckm:
Цитирую eungene:
Народ, подскажите, немогу запрограмить макс 2 : собрал ББ из 5 проводков а квартус при попытке програминга выводит:


Error: JTAG Server can't access selected programming hardware
Error: Unexpected error in JTAG server -- error code 44
Error: Operation failed

Попробуйте переустановить драйвер? Какая ОС?


пробовал 2 раза, драйвер видно (если не замыкать 7,10 и 9,12 то пишет другое сообщение )
основное отличие от платы марсохода ето подтягивающие резюки не 1.5 а 1 Ком
+1 #4 nckm 15.12.2010 09:40
Цитирую eungene:
Народ, подскажите, немогу запрограмить макс 2 : собрал ББ из 5 проводков а квартус при попытке програминга выводит:


Error: JTAG Server can't access selected programming hardware
Error: Unexpected error in JTAG server -- error code 44
Error: Operation failed

Попробуйте переустановить драйвер? Какая ОС?
+1 #3 eungene 14.12.2010 21:41
Народ, подскажите, немогу запрограмить макс 2 : собрал ББ из 5 проводков а квартус при попытке програминга выводит:


Error: JTAG Server can't access selected programming hardware
Error: Unexpected error in JTAG server -- error code 44
Error: Operation failed
+2 #2 Ю р и й 04.12.2010 12:36
На самом деле существует две проблемы -
- безопастность , имеется в виду возможность спалить девайс уравнивающими
токами : старайтесь избегать подключение программатора и девайса от разных БП.
Лучше всего от одного и того-же или от батарейки(аккум улятора).
- работоспособнос ть : будет правильно шиться или нет. Здесь может влиять длинна
кабеля - при использовании витой пары(как в примере) можно до 500мм, если просто проводочки,
до 200-300мм должно работать.
- может быть третья проблема : согласование уровней - мне эта проблема в программировании
максов через байтбластер не встречалась - всегда работало.
+1 #1 Глазастер 04.12.2010 11:15
Позвольте вернутся в страну советов ;)
НЕ делайте безчиповый кабель длиннее 500мм, поверьте человеку спалившему таким образом свою зарплату дважды :-*

Добавить комментарий


Защитный код
Обновить


GitHub YouTube Twitter
Вы здесь: Начало Статьи о разном Программатор