На плате «Марсоход» используется микросхема компании Альтера EPM240T100C5. Изначально эта микросхема «пустая» и не может выполнять никакой функции. Чтобы микросхема начала делать то, что нам нужно, мы должны создать проект для нее в программе Altera QuartusII, нарисовать желаемую логическую схему, откомпилировать ее и получившийся файл «зашить» в микросхему. Только после этого микросхема типа CPLD становится функциональной – начинает работать.
Для прошивки подобных микросхем компания Альтера предлагает специальный кабель - это либо ByteBlaster либо UsbBlaster. Мы предлагаем трейтий вариант - наш собственный программатор MBFTDI.
Есть конечно и другие варианты. Однако – все по порядку.
Существуют кабели нескольких видов. Самые распространенные – это ByteBlaster и UsbBlaster. Оригинальные кабели компании Альтера выглядят следующим образом:
Слева на картинке – 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 и многие другие...
Это несколько схем, фактически примерно одинаковых, но видимо нарисованых разными людьми.
Следущая схема:
И вот еще:
Несмотря на такое обилие опубликованых схем, мы рискнем предложить свою – еще проще, чем описаные выше. Микросхема 74HC244 это просто буфер, которым можно «пожертвовать». Мы его убираем из схемы и получается вот что:
В этой нашей схеме ByteBlaster совсем нет деталей – только два разъема и провода. Мы опробовали его – ОН РАБОТАЕТ! Вы сможете легко его повторить и использовать для программирования платы Марсоход. Вот он - наш кабель:
Разъемчик кабеля JTAG, который будет вставляться на плату вот такой:
Правда остается еще один тонкий момент. Прежде чем делать ByteBlaster пожалуйста убедитесь, что в Вашем компьютере все еще есть параллельный порт, к которому должен подключаться наш кабель. Современная тенденция такова, что многие современные компьютеры могут не иметь параллельного порта. Что тут можно посоветовать? Ну, например, можно в любом компьютерном магазине попробовать купить PCI плату параллельного порта. Она может называться «Контроллер PCI, Multi I/O, 1xLPT25F»
Стоит такая плата не очень дорого, около 400 рублей.
В любом случае, похоже, что сделать кабель самому и купить контролер LPT может быть дешевле, чем купить готовый UsbBlaster.
Есть еще один вариант. На материнской плате может не быть внешнего разъема LPT, но разъемчик к нему может быть на самой материнской плате. Например материнская плата ASRock G31M-GS имеет такой разъем. Тогда кабель можно подключить прамо к материнской плате вот так:
Если у Вас другая материнская плата, то нужно проверить, как расположены контакты в разъеме LPT на плате. Почитайте в инструкции к материнской плате. Для ASRock G31M-GS расположение контактов в колодке вот такое:
Надеюсь эта статья поможет Вам в изготовлении своего кабеля ByteBlaster для программирования платы Марсоход.
Подробнее...