Mc9s12 программатор своими руками

Mc9s12 программатор своими руками

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

Форум по USBDM здесь.

Приобрел не давно этот программатор, довольно полезная штука в связи со своей узкой специализацией. Программатор разработан для прошивки микроконтроллеров используемых в бытовой технике, в стиральных машинах, холодильниках, посудомоечных машинах построенных на платформе Аркадия и соответственно микроконтроллеров MC9S08GB60 (mask 3L31R), MC9S08GB60A (mask 4L11Y) и в стиральных машинах Zanussi/Electrolux с платформой ENV-06 и микроконтроллеров MC9S08AW60 и MC9S08AC60. В общем он направлен на Мотороловскую базу микроконтроллеров. Так же идет постоянное добавление новых микроконтроллеров в список поддержки данного программатора. Существует своя среда разработки ПО для микроконтроллеров — Codewarrior. Данным программатором можно не только прошивать микроконтроллеры, но и считывать из них прошивки, последняя функция появилась относительно не давно. Не вся линейка микроконтроллеров еще в списке считывания прошивки, в соотношении к списку прошивающихся микроконтроллеров этим программатором. Например есть возможность прошивать микроконтроллеры серии MC56F8xxx, но считать дамп нет возможности, если только очень постараться и создать проект на данный микроконтроллер в среде разработки Codewarrior, после чего можно считать дамп с нового микроконтроллера. Об этом позже, либо здесь, либо на форуме по данному программатору.

Далее добавлю немного общей информации, ссылок на ресурсы для скачивания драйверов, ПО и т.д. Информация, в основном, взята из простор интернета.

Описание от Китайцев полной версии программатора: (это версия USBDM_CF_JMxxCLD )

1. Поддержка
Вся линейка HCS08, HCS12, RS08
Coldfire V1, V2, V3, V4
Kinetis ARM вся линейка — K60,
Ряд MC56F80xx DSC
2. Поддержка онлайн обновления прошивки
3. Программное обеспечение позволяет выбрать выходное напряжение 5 В или 3,3 В питания микроконтроллера
4. Среда разработки:
CodeWarrior V10.1-V10.7
CodeWarrior V5.1
CodeWarrior v6.3
CodeWarrior V7.1
CodeWarrior V8.3
5. Окружающая среда: WINXP / Win7 32/64 бит

URL на ПО и сайт USBDM

Из предложенных конфигураций программатора на сайте USBDM я выбрал себе USBDM_CF_JMxxCLD_V3 это наиболее функциональная модель. Покупал я свой программатор на https://ru.aliexpress.com/ , смотрите, ищите, там их много.

Вот один из стандартных разъемов этого программатора:

Некоторые точки подключения к стиральным машинам:

Arcadia_ Аркадия Electrolux Hansa Whirlpool DOMINO

Картинки открываются в новом окне, в полный размер.

Инструкция по пользованию USBDM -> скачать.

Ошибки при пользовании USBDM -> скачать.

Считывание прошивок с процессоров Arcadia -> скачать.

Установка CodeWarrior на Windows 7 х64-bit -> скачать.

Остальное предлагаю обсуждать на форуме, дополнять своими материалами, и т.д.

Источник

Настройка программатора USBDM для платформы Arcadia

Программатор USBDM замечательно подходит для процессоров семейства HCS08, которые шли на стиральные машины фирм Indesit, Ariston, Whiplpool, Electrolux и т.д. Штатная программа для данного программатора находится в свободном доступе в сети по адресу http://sourceforge.net/projects/usbdm/
После стандартной процедуры скачивания и установки нужно запустить программу HCS08 Flash programmer, из названия понятно, что данная программа позволяет записать фреш процессора, при первом запуске мы увидим окно с выбором программатора и вводных его данных.

Читайте также:  Идеи джинсовых жилеток своими руками

Если ваш программатор определился в диспетчере устройств, то и по нажатию на кнопку «detect» он так же должен определится.
Затем в поле «Target Vdd Control» нужно выбрать питание для процессора, согласно его технической документации, к примеру для процессоров, стоящих в модулях управления стиральных машин Indesit (платформа Arcadia) данный параметр равен 3,3 вольта.,
. Если это поле заблокировано, значит ничего выбирать не нужно, все произойдет автоматически, но на всякий случай нужно вскрыть крышку программатора и убедится что джампер (переключатель) стоит в положения «авто» либо 3.3 вольта.

Теперь разберем вкладку «Target».
1) Необходимо выбрать чип (микроконтроллер — он же процессор), для модулей Arcadia это MC9S08GB60 или MC9S08GB60A, для Electrolux это MC9S08AW60 или MC9S08AC60.
2) Далее, нужно выбрать прошивку (ВНИМАНИЕ. ПУТЬ К ПРОШИВКИ НЕ ДОЛЖЕН СОДЕРЖАТЬ РУССКИХ БУКВ), в противном случае будет выведена ошибка.
3) В поле Security выбрать переключатель Image.
4) Осталось нажать кнопку Programm Flash и дождаться конца прошивки.

Если у вас возникает ошибка F1 суб04 , при которой слышны щелчки реле двигателя, но на этом вся работа заканчивается, то необходимо включить переключатель «Clock type and parameters», после чего активируется поля Trim Freguency и NVTPIM Address, их значения нужно оставить без изменения и прошить модуль еще раз, также стоит отметить, что одной из наиболее распространенных ошибок является ошибка подбора прошивки, которую нужно подбирать по серийному номеру и продуктовому коду, написанным на стиральной машинке или той технике, которую вы программируете.

Напоследок, хотелось дать ссылку на странице, где можно купить данный программатор в хорошей комплектации Купить программатор USBDM
Всем удачи в ремонте!

Видео

Источник

Внутрисхемный USB BDM программатор микроконтроллеров Freescale

Внутрисхемный USB BDM

программатор микроконтроллеров Freescale.

Программатор предназначен для внутрисхемного программирования микроконтроллеров Freescale семейства HSC08. Для программирования используется интерфейс BDM который обеспечивает высокую скорость программирования и позволяет выполнить полное стирание ранее запрограммированного МК в случае активированной защиты от чтения.

Программатор разработан и нацелен на микроконтроллеры используемые в бытовой технике, в стиральных машинах и холодильниках построенных на платформе Аркадия и соответственно микроконтроллеров MC9S08GB60(mask 3L31R), MC9S08GB60A(mask 4L11Y) и в стиральных машинах Zanussi/Electrolux с платформой ENV-06 и соответственно контроллеров MC9S08AW60 и MC9S08AC60. Безусловно на этом возможности программатора не ограничиваются, ниже предоставлен список поддерживаемых микроконтроллеров.

MC9S08AC8,MC9S08AC16,MC9S08AC32,MC9S08AC48,MC9S08AC60,MC9S08AC96,
MC9S08AC128,S9S08AW8A, S9S08AW16A, MC9S08AW16,MC9S08AW32,MC9S08AW48,
MC9S08AW60,MC9S08DE32,MC9S08DE60,MC9S08DN16,MC9S08DN32,MC9S08DN48,
MC9S08DN60,MC9S08DV16,MC9S08DV32,MC9S08DV48,MC9S08DV60,MC9S08DV96,
#MC9S08DV128,MC9S08DZ16,MC9S08DZ32,MC9S08DZ48,MC9S08DZ60,MC9S08DZ96,
#MC9S08DZ128,MC9S08EL16,MC9S08EL32,MC9S08EN16,MC9S08EN32,MC9S08FL8,
MC9S08FL16,MC9S08GB32,MC9S08GB32A, MC9S08GB60,MC9S08GB60A, MC9S08GT8A,
MC9S08GT16,MC9S08GT16A, MC9S08GT32,MC9S08GT32A, MC9S08GT60,MC9S08GT60A, MC9S08JM8,MC9S08JM16,MC9S08JM32,MC9S08JM60,MC9S08JS8,MC9S08JS16,
MC9S08JS8L, MC9S08JS16L, MC9S08LC36,MC9S08LC60,MC9S08LG16,MC9S08LG32,
MC9S08LL8,MC9S08LL16,MC9S08LL36,MC9S08LL64,MC9S08MP12,MC9S08MP16,
MC9S08NM8,MC9S08QA2,MC9S08QA4,MC9S08QB4,MC9S08QB8,MC9S08QD2,
MC9S08QD4,S9S08QD2,S9S08QD4,MC9S08QE4,MC9S08QE8,MC9S08QE64,
MC9S08QE96,MC9S08QE128,MC9S08QG4,MC9S08QG8,MC9S08RC8,MC9S08RC16,
MC9S08RC32,MC9S08RC60,MC9S08RD8,MC9S08RD16,MC9S08RD32,MC9S08RD60,
MC9S08RE8,MC9S08RE16,MC9S08RE32,MC9S08RE60,MC9S08RG32,MC9S08RG60,
MC9S08SE4,MC9S08SE8,MC9S08SG4,MC9S08SG8,MC9S08SG16,MC9S08SG32,
MC9S08SH4,MC9S08SH8,MC9S08SL8,MC9S08SL16,MC9S08SV8,MC9S08SV16.

Читайте также:  Именины домового поделки своими руками

Программатор не тестировался со всеми микроконтроллерами из этого списка, в случае возникновения каких либо проблем с программированием МК входящего в этот список просьба обратиться за консультацией.

Аппаратная часть программатора.

Программатор имеет интерфейс USB 2.0, посредством которого осуществляется связь с ПК и 4-х проводной интерфейс BDM для программирования целевого МК.

Для связи с ПК используется стандартный USB кабель принтера с разъемом USB-B, который входит в комплектацию и по желанию может быть заменен аналогичным стандартным кабелем USB-USB-В.

Кабель для внутрисхемного программирования имеет разъем только с одной стороны для подключения к программатору. Для подключения к микроконтроллеру на целевой плате необходимо подпаяться к соответствующим выводам. Для программирования микроконтроллеров вне платы, пользователь может изготовить дополнительные переходники самостоятельно.

Для подачи напряжения питания на программируемый микроконтроллер можно использовать как внутренний источник питания от линии USB, так и внешний

источник питания. Программатор имеет встроенный стабилизатор напряжения питания 3,3вольта.

Выбор источника питания микроконтроллера и напряжение программирования (USB/ внешнее питание, 5в/3,3в ) осуществляется при помощи джамперов на разъеме программатора.

Программатор не имеет гальванической развязки, поэтому нельзя подавать на модуль в режиме программирования штатное питание 220 вольт!

Джамперы и разъем для программирования.

Вид со стороны интерфейсного разъёма

Подача внешнего питания осуществляется от стабилизированного источника питания 5в,

Джампер J1 переключает напряжение питания для программирования микроконтроллера

Джампер J2 переключает источник напряжения для программирования МК (внутреннее — USB /внешнее — с разъема внешнего питания)

Источник

Универсальный USB программатор

В интернете представлено множество схем программаторов микроконтроллеров. Представляю вариант внутрисхемного универсального USB программатора с возможностью отладки, которым пользуюсь я. Вы сможете собрать данный программатор своими руками.

Основой программатора является микросхема FT2232D. Представляет она собой преобразователь USB в два порта UART. Особенность заключается в том, что «верхний» канал А может работать в режимах JTAG, SPI и I 2 C, что и требуется для программирования микроконтроллеров, различных микросхем памяти и т.п.

Разработка данного USB-программатора ведется на компьютере с использованием библиотек от фирмы FTDI Chip.

Питается устройство от интерфейса USB. При правильной сборке схема не нуждается в настройке. Функционирование устройства зависит от мастерства разработчика ПО. Резисторы R8, R9, R12, R13, R14, R15, R16 являются токоограничивающими при неправильном соединении с устройством, соответственно, выводы программируемого устройства не должны соединяться с другими элементами в схеме, или иметь такие подтяжки, которые при образовании делителей напряжения не искажали бы логические уровни. Микросхема U1 используется для сохранения пользовательских настроек.

Выводы U2 (канал А):
24 — ADBUS0 – выход- в режиме JTAG TCK, в режиме SPI SK;
23 — ADBUS1 – выход- в режиме JTAG TDI, в режиме SPI DO;
22 — ADBUS2 – вход- в режиме JTAG TDO, в режиме SPI DI;
21 — ADBUS3 – выход- в режиме JTAG TMS, в режиме SPI как вспомогательный сигнал(CS);
20 — ADBUS4 – в режиме JTAG вход\выход, в режиме SPI вспомогательный выход. Этот вывод используется для подачи сигнала RESET в микроконтроллер;
15 — AСBUS0 – свободно программируемый вход\выход во всех режимах (опционно используется для подачи питания в программируемое устройство);
13 — AСBUS1 – свободно программируемый вход\выход во всех режимах.

Читайте также:  Бетонирование турника своими руками

В принципе, эти выводы многофункциональные. Их поведение определяется выбранным режимом при открытии порта.

Канал В используется для отладки программируемого устройства. Для этого нужно только иметь незадействованный порт UART в микроконтроллере. Далее дело техники. В программе микроконтроллера в нужных местах используем функцию форматированного вывода printf().

40 —BDBUS0 – выход- в режиме UART TXD;
39 —BDBUS1 – вход- в режиме UART RXD;
28 — BСBUS2 – выход- в режиме UART LED-индикатор (зажигается при передаче данных через USB);
27 — BСBUS3 – выход- в режиме UART LED-индикатор (зажигается при приеме данных через USB).

Ниже приведена печатная плата программатора

На сегодняшний день данный универсальный программатор поддерживает микроконтроллеры AVR по интерфейсам JTAG и SPI. Причем скорость прошивки Atmega64 по JTAG не более 5-и секунд, по SPI не более 8-ми секунд. Принципиально, прошивать можно любые микроконтроллеры, к которым распространяется спецификация для программатора. В настоящий момент, например, ведется разработка для поддержки микроконтроллеров NEC.

Рабочая форма поделена на две части: слева таблицы для работы с FLASH (сверху) и EEPROM (снизу), сюда можно открывать файлы или загружать прошивки из микроконтроллера, делать верификацию, править содержимое ячеек памяти; справа текстовое поле для отладки, сюда выводятся данные с канала В, также можно там вводить текст, который отправится в порт (функционально это аналог HyperTerminal). Разработка ведется на платформе Visual C# под Windows. Также есть возможность разрабатывать на других языках. Программатор может работать и под Linux.

Используемая литература:
1. А.В. Евстигнеев «Микроконтроллеры AVR семейств Tiny и Mega фирмы ATMEL», М. Издательский дом «Додэка-ХХI», 2005.
2. Future Technology Devices International Ltd. “FT2232D Dual USB UART/FIFO I.C.” , Datasheet, 2006.
3. Future Technology Devices International Ltd. “Software Application Development D2XX Programmer’s Guide” , Document, 2009.
4. Future Technology Devices International Ltd. “Programmers Guide for High Speed FTCJTAG DLL” , Application note AN_110, 2009.
5. Future Technology Devices International Ltd. “Programmers Guide for High Speed FTCSPI DLL” , Application note AN_111, 2009.
6. Эндрю Троелсен «С# и платформа .NET» М.,С-П. Питер, 2007.

Скачать исходники ПО и печатную плату в формате P-CAD вы можете ниже

Борисов Алексей (Albor) г.Сызрань, Самарская обл.

Источник

Оцените статью