ООО ЭФО
Поиск по складу
Программа поставок 2016
Сегодня
www.powel.ru
источники питания
www.korpusa.ru
конструктивы и корпуса РЭА
www.wless.ru
беспроводные технологии
www.mymcu.ru
микроконтроллеры
altera-plis.ru
микросхемы Altera
www.infiber.ru
волоконно-оптические
компоненты в
промышленности
www.efo-power.ru
силовая электроника
www.efo-electro.ru
электротехническая
продукция
www.efometry.ru
контрольно-измерительные приборы
www.golledge.ru
кварцевые резонаторы и генераторы Golledge
www.sound-power.ru
профессиональные усилители класса D
Поиск по сайту
Подписка на новости

Система менеджмента
качества сертифицирована на соответствие требованиям:
ISO 9001, ГОСТ Р ИСО 9001 и СРПП ВТ - подтверждено сертификатами соответствия в системах сертификации Русского Регистра, ГОСТ Р, международной сети IQNet, "Оборонсертифика" и "Военный Регистр".

ООО "ЭФО" в 2011г. получило Лицензию Федеральной службы по экологическому, технологическому и атомному надзору на изготовление оборудования для ядерных установок.


Rambler s Top100



ChipFind - поисковая система по электронным компонентам
EEN
webmaster
Санкт-Петербург: (812) 327-86-54  zav@efo.ru Москва: (495) 933-07-43  moscow@efo.ru Екатеринбург: (343) 278-71-36  ural@efo.ru Пермь: (342) 220-19-44  perm@efo.ru
Казань: (843) 518-79-20  kazan@efo.ru Ростов-на-Дону: (863) 220-36-79  rostov@efo.ru Н. Новгород: (831) 434-17-84  nnov@efo.ru Новосибирск: (383) 286-84-96  nsib@efo.ru
о нас склад библиотека статьи
 

Последовательный программатор для микроконтроллеров Freescale семейства HC908

Татьяна Кривченко,
18 декабря 2000 г.

Традиционным способом программирования FLASH-памяти программ встраиваемых микроконтроллеров является использование какого-либо внешнего микропроцессорного устройства, формирующего программирующие сигналы по заданному алгоритму. Таким внешним устройством может быть либо программатор, либо персональный компьютер. Микроконтроллеры с "самопрограммированием" могут сами управлять процессом записи своей FLASH-памяти программ под управлением программы-загрузчика. Но и в этом случае без внешнего программирующего устройства не обойтись, т.к. начальная программа-загрузчик должна быть тоже предварительно записана в память микроконтроллера, для чего приходится все-таки пользоваться внешним программирующим устройством.

Одной из уникальных особенностей микроконтроллеров семейства 68HC908 фирмы MOTOROLA является то, что в масочную ROM-память каждого кристалла при его изготовлении "зашивается" специальная программа, называемая "отладочный монитор", под управлением которой осуществляется доступ к блоку FLASH-памяти микроконтроллера по чтению и записи. Эта программа принимает данные от персонального компьютера по однопроводному последовательному интерфейсу и уже внутри кристалла формирует все необходимые программирующие сигналы.

Следует отметить, что отладочный монитор имеет более широкие функции, чем простая программа-загрузчик. Он также позволяет просматривать и записывать содержимое ячеек памяти микроконтроллера и вести отладку программы с использованием точек останова. Протокол обмена данными по однопроводному интерфейсу с микроконтроллером, находящимся в режиме отладочного монитора, открыт и приводится фирмой-изготовителем для каждого кристалла в Data Sheet (раздел "Monitor ROM"). Соответствующее программное обеспечение для управляющего компьютера разработано фирмой P&E Microcomputer System, Inc. Это программное обеспечение разработано для внутрисхемных симуляторов/программаторов ICS (In-Circuit Simulator) фирмы Freescale, которое представляет собой интегрированную среду для Windows 95/98 (WinIDE Development Environment) и распространяется бесплатно.

В случае отсутствия фирменных программаторов, для практической организации процесса программирования FLASH-памяти микроконтроллера семейства 68НС908 можно воспользоваться небольшим последовательным программатором, задачей которого является согласование сигналов, поступающих от компьютера по интерфейсу RS-232, и сигналов, которые необходимо непосредственно подавать на выводы микроконтроллера. Простейший пример такой схемы изображен на рис.1. Следует иметь в виду, что у микроконтроллеров семейства 68HC908 различных типов для входа в режим отладочного монитора используются различные внешние выводы. Здесь, для определенности, мы будем рассматривать схему последовательного программатора для кристалла MC68HС908MR24.

Последовательный программатор предлагается реализовать как отдельное устройство, которое с одной стороны соединяется при помощи кабеля RS232 с компьютером, а с другой стороны - с целевой платой при помощи плоского 16- проводного кабеля.

На целевой плате для присоединения программатора следует предусмотреть 16-контактный двухрядный разъем типа BH16. Выводы микроконтроллера, используемые для входа в режим отладочного монитора, должны быть подведены к первому ряду контактов этого разъема, а на соответствующие контакты второго ряда должны быть выведены те точки схемы, к которым выводы микроконтроллера присоединяются в рабочем режиме. После завершения программирования достаточно удалить из разъема плоский кабель и объединить перемычками необходимые пары контактов разъема BH16 так, как это показано пунктиром на рис.1.

Рис.1 Последовательный программатор для микроконтроллеров семейства MC68HC908 фирмы Freescale

Следует отметить, что предлагаемая схема программатора предназначена для работы с напряжением питания VDD= 5В +10%.В случае, если целевая плата работает при пониженных напряжениях питания, например при VDD=3,0В, в схеме программатора должны быть использованы соответствующие элементы.

Микроконтроллер входит в режим отладочного монитора после сброса, если на пяти его внешних выводах имеются следующие электрические и логические сигналы:

=VHI

PTC3=1
PTC4=0              (1)
PTC2=0/1
PTA0=1,

где VHI - высокое напряжение, диапазон значений которого связан с напряжением питания микроконтроллера VDD и составляет от VDD+2,5В до VDD+4В.

Сигнал на выводе PTC2 управляет скоростью обмена данными c компьютером. В режиме отладочного монитора внутренний умножитель тактовой частоты микроконтроллера отключен. Поэтому, в соответствии с Data Sheet, для обеспечения стандартных скоростей передачи по последовательному каналу необходимо использовать кварцевый резонатор или внешний генератор частотой 4,9152 МГц. При этом, если PTC2=0, то скорость обмена будет составлять 9600 бит/c, если PTC2=1 - 4800 бит/c.

В рабочем режиме, когда функционирует встроенный умножитель частоты, может оказаться более удобным использование кварцевого резонатора другой частоты. Поэтому генератор с частотой 4, 9512 Мгц предлагается вынести в схему программатора. При этом следует подчеркнуть, что для минимизации длины проводников, связывающих кварцевый резонатор и микроконтроллер в рабочем режиме, 16-контактный разъем BH16 необходимо располагать на целевой плате как можно ближе к микроконтроллеру.

Выводы PTC2, PTC3, PTC4 опрашиваются микроконтроллером лишь в момент входа в режим отладочного монитора. Для дальнейшей поддержки режима монитора они не используются, и поэтому на них можно было бы подавать рабочие сигналы уже собственно в режиме отладочного монитора при отладке программы. Но для этого в предлагаемую схему программатора должен быть введен дополнительный мультиплексор, отключающий через некоторое время после сброса цепи, задающие контрольные сигналы (1), и подключающий выводы PTC2, PTC3, PTC4 к соответствующим точкам рабочей схемы.

Высокое напряжение VHI на выводе в режиме отладочного монитора необходимо, во-первых, для входа в этот режим, и, во-вторых, для удержания в запрещенном состоянии сторожевого таймера микроконтроллера ( у HC08 - модуль COP "Computer Operating Properly"). Однако, если в режиме отладочного монитора необходимо использовать вывод во время отладки программы, то, согласно Data Sheet, предусмотрена возможность удерживать модуль COP в запрещенном состоянии подачей высокого напряжения VHI на вход . В последнем случае высокое напряжение с вывода может быть снято сразу же после входа в режим отладочного монитора. В рассматриваемой простейшей схеме эта возможность не реализована и высокое напряжение подается на вывод в течение всего времени, пока подключен программирующий кабель.

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

Для согласования сигналов на линиях интерфейса RS232 и на выводе PTA0 микроконтроллера предлагается использовать две микросхемы: SP232A-преобразователь уровней RS232 в уровни КМОП и буферную микросхему 74HC125 для объединения дуплексных сигналов интерфейса RS232 по схеме "монтажное ИЛИ".

Интерфейсная микросхема SP232A имеет встроенный "зарядовый насос", повышающий входное напряжение. Оказалось возможным использовать это напряжение для формирования повышенного напряжения VHI, которое необходимо подавать на вход для входа в режим отладочного монитора. (Микроконтроллер не потребляет большой ток по этому входу, т.к. при программировании FLASH-памяти высокое напряжение берется от внутреннего повышающего источника, имеющегося на кристалле микроконтроллера). Таким образом, удалось обойтись одним напряжением питания, которое может поступать на программатор через 16-контактный разъем от целевой платы или от внешнего источника.

В описании программной оболочки WinIDE Development Environment предписывается ввести дополнительный транзистор от линии DTR разъема RS232 на вход микроконтроллера, т.к. программное обеспечение при помощи этой линии квитирования управляет сбросом микроконтроллера при входе в режим отладочного монитора. В предлагаемой схеме вместо транзистора используются свободные буферные элементы микросхем SP232A и 74HC125. Управление выводом от компьютера позволяет избежать лишних манипуляций с включением/выключением питания при входе в режим отладочного монитора. При этом в программной оболочке в качестве "Target Hardware Type" необходимо выбрать "Custom Board (No ICS) with MON08 serial port circuitry and additional auto-reset circuit built in".

В заключение следует отметить, что предложенная реализация последовательного программатора будет пригодна для программирования большинства микроконтроллеров семейства 68HC908. Однако у каждого подсемейства микроконтроллеров контрольные сигналы (1) для входа в режим отладочного монитора подаются на разные выводы микроконтроллера. Поэтому при разводке 16-контактного разъема на целевой плате необходимо сверяться с Data Sheet используемого кристалла. Кроме того, для некоторых микроконтроллеров, например для MC68HC908KX8/2, в режиме отладочного монитора требуется использовать отличную от 4, 9152 Мгц тактовую частоту и, наконец, как уже отмечалось выше, в случае питания целевой платы от пониженного напряжения VDD=3В в схеме программатора должны использоваться соответствующие элементы.

Предложенной схемы последовательного программатора достаточно для того, чтобы войти в режим отладочного монитора, просматривать, стирать и программировать FLASH-память микроконтроллера. Можно также вести отладку программы со следующими ограничениями. Во-первых, во время отладки нельзя штатным образом использовать выводы PTA0, IRQ, PTC2, PTC3, PTC4 микроконтроллера. Во-вторых, вместо рабочей частоты тактирования микроконтроллера используется частота 4, 9512 Мгц. И, в-третьих, запрещена работа сторожевого таймера. Несмотря на эти ограничения, возможность вести пошаговую отладку программы непосредственно в системе при помощи программатора на двух микросхемах кажется очень интересной.

© 1999-2016 All Right Reserved. EFO Ltd. При использовании материалов ссылка на источник обязательна.
Контактная информация