Программируемые системные приборы фирмы STMicroelectronics. Часть 4. Средства разработки
В предшествовавших статьях упоминались средства разработки систем на основе PSD приборов и приборов PSD. Упоминалось и утверждение специалистов фирмы, что законченная система, с использованием PSD приборов (в том числе и PSD) может быть легко и просто разработана в течение нескольких часов. В данной статье будет представлен пакет программных средств разработки PSDsoft Express и упомянуты некоторые аппаратные средства разработки.
Напомню основные возможности пакета PSDsoft Express:
- Работа в среде операционных систем Windows (95, 98, 2000, NT) практически на любом современном персональном компьютере
- Пошаговый процесс разработки, позволяющий методом "выдели и подключи" (Point @ Click) быстро разработать встраиваемую микроконтроллерную систему с возможностями ISP/IAP программирования
- Поддержка интегрированным окружением средств разработки (IDE) фирмы Keil Software и внутрисхемным эмулятором фирмы Nohau
- Наличие шаблонов конфигураций типовых PSD и PSD приборов
- Наличие примеров проектов и модулей программных средств для USB, I2C, UART, PWM, ADC, LCD
- Поддержка недорогими комплектами разработчика PSD и PSD, работа с программаторами как фирмы STMicroelectronics (PSDpro), так и программаторами третьих поставщиков
- Бесплатный пакет PSDsoft Express можно скачать с сайта фирмы STMicroelectronics (www.st.com/psd).
Кроме того, к каждому комплекту разработки, приобретаемому в фирме КТЦ-МК, прилагается компакт диск, содержащий пакет PSDsoft Express. На компакт диске, кроме PSDsoft Express, содержатся: Руководство пользователя PSDsoft Express, Руководство по языку PSDabel, принципиальные схемы и схемы размещения компонентов комплекта разработки DK3200 и Data Sheet на приборы.
Пакет PSDsoft Express довольно часто обновляется, что связано, в первую очередь, с тем, что средствами этого пакета ведутся разработки как PSD приборов, так и микроконтроллеров PSD. А ранее мы отмечали, что скорость пополнения семейства PSD очень высока и, следовательно, сам пакет так же часто подвергается обновлению. Поэтому одной из первых рекомендаций, приведенных в руководстве пользователя PSDsoft Express, стала рекомендация периодического обновления пакета, скачиванием новых версий со странички www.st.com/psd/html/express_download.html. Еще одной рекомендацией, скорее требованием, стала необходимость, перед инсталляцией пакета, отключения или запрета всех системных приложений, в особенности программ обнаружения вирусов.
Рекламный девиз разработчиков PSDsoft Express - Семь простых шагов!:
- шаг первый - оформление проекта
- шаг второй - выбор PSD прибора и MCU/DSP, или микроконтроллера PSD
- шаг третий - задание функций узлам и выводам I/O
- шаг четвертый - задание карты адресов
- шаг пятый - перенос конфигурации на "кремний" (согласование данных конфигурации с аппаратными средствами самого прибора)
- шаг шестой - совмещение кодов программы MCU с конфигурацией PSD
- шаг седьмой - программирование, посредством кабеля FlashLINK, в течение нескольких секунд
Эти семь шагов и представляет основное окно PSDsoft Express - окно Design Flow (Рис. 1).
Рис. 1. Окно Design Flow - основное окно PSDsoft Express
В процессе разработки проекта вид этого окна будет изменяться. Так светлое поле обозначает допустимый в данный момент процесс, серое поле с серой тенью показывает, что указываемый полем процесс не может быть вызван до завершения предшествующего шага, красная тень укажет на следующий возможный процесс.
В окне Design Flow показаны три недоступных снаружи поля. Эти поля ("Your Application C Code or Assembly", "Editor, Compiler, Linker, Debugger" и "3rd Party Programmers") отражают те процессы, которые являются частью проекта, но не поддерживаются PSDsoft Express.
Хотя через весь проект можно пройти, используя только Design Flow, меню окна предоставляет некоторые дополнительные возможности.
Пункты меню "PSDsoft" точно совпадают с тем, что обеспечивает Design Flow (за исключением "Exit PSDsoft Express").
Пункты меню "Project" в основном очевидны ("Create", "Open", "Save As", "Delete" и "Close"), тогда как:
- "Clean-Up" - позволяет избавиться от сгенерированных PSDsoft Express не существенных файлов.
- "About…" - выдает основные и ряд других деталей проекта.
- "Preferences" - позволяет разрешать или запрещать дополнительные функции PSDsoft Express.
Что же это за дополнительные функции? Наиболее важными из них, пожалуй, являются:
- "Enable HDL Assistant:" - при включенной опции по щелчку на поле Edit/Add Logic Statements в Design Flow будет открываться окно, которое позволит проверять ключевые слова и синтаксис ABEL и просматривать реализацию некоторой логики.
- "Enable ABEL-HDL messages to log file:" - выводит в log-файл ошибки и сообщения, открывающиеся, обычно, в нижней части экрана.
- "Enable ABEL equations editing capability:" - при включенной опции в Design Flow выводится поле Edit/Add Logic Statements.
Меню "File", располагающееся после меню "Project", содержит привычные для пользователей Windows стандартные функции работы с файлами.
Следующее меню - "Report" запускает формирование следующих отчетов:
- "Device Configuration" - показывает конфигурацию используемого PSD прибора
- "Design Assistant Summary" - отображает заданные в Design Assistant выводы и выражения. Это тот же самый отчет, который можно увидеть, щелкнув кнопку "View" на любом экране Design Assistant
- "Fitter" - показывает отображение проекта в "кремнии" (в аппаратных средствах) PSD
- "Memory Map" - дает полное отображение карты распределения памяти, включая выражения для внутренних и внешних сигналов выбора кристаллов
- "Address Translation" - показывает распределение карты памяти используемого MCU /DSP по физическим адресам PSD и то, каким образом файлы микропрограмм MCU/DSP размещены в памяти PSD.
- Функция "View Log File" может быть установлена или сброшена. При установленной функции каждое действие и связанная с ним ошибка (в случае ее возникновения) отображается в окне log файла, выводимого в нижней части экрана.
Оставшиеся пункты меню достаточно просты и пояснений не требуют.
К положительному моменту работы создателей PSDsoft Express следует отнести то, что они постарались максимально облегчить конфигурирование PSD, как автономных, так и входящих в состав PSD. Другим плюсом является то, что они постарались в максимальной степени придерживаться принципа "делай как я" - оснастили пакет набором шаблонов для типовых PSD/ PSD приборов, что позволяет получить готовый проект при минимальном объеме доработок, встроили примеры разработок и подготовили под них Application Notes. Так в AN1560 описывается разработка проекта на основе микроконтроллера PSD3243A-40U6, входящего в серию PSD3200, с использованием комплекта разработки DK3200.
Дальнейшее рассмотрение использования пакета PSDsoft Express в разработке проекта будем вести на основе этого Application Note, что, надеемся, будет некоторой иллюстрацией самого процесса проектирования и подхода специалистов фирмы STMicroelectronics к оснащению своих приборов необходимыми средствами проектирования и дополнительными к ним материалами.
Пример проекта, рассматриваемого в упомянутом AN1560, представлен блок-схемой (Рис. 2) и картой памяти (Рис. 3). Основными компонентами схемы являются: прибор µPSD, модуль LCD и приемопередатчик RS-232. В проекте используются все 16 макроячеек PLD, Flash память распределена по страницам и сконфигурирован ряд интерфейсов 8032 (ADC, PWM, UART). Основную идею проекта разработчики видели в рассмотрении ряда аспектов проектирования системы на µPSD, которые обычный пользователь 8051 может не знать, в подсказке некоторых идей по использованию средств проектирования.
Рис. 2. Блок - схема примера проекта
Рис. 3. Карта памяти процессора 8032
Выводимая PWM процессора 8032 циклическая последовательность импульсов, с медленно изменяющейся скважностью, поступает на RC цепочку, преобразующую последовательность импульсов в так же медленно изменяющееся (от 0 до 5 В) напряжение постоянного тока. Это напряжение поступает на вход аналого-цифрового преобразователя (ADC). Процессор 8032 выводит шестнадцатиричный результат ADC преобразования на LCD дисплей, что позволяет отслеживать результат преобразований.
Кроме того, в макроячейках PLD организован перезагружаемый 4-разрядный счетчик обратного счета. Процессор 8032 напрямую загружает начальное значение счета в четыре макроячейки, и это значение автоматически загружается в другие четыре макроячейки, на которых и создан собственно 4-разрядный счетчик обратного счета. Перезагрузка счетчика новым значением происходит при достижении счетчиком нулевого состояния. Момент достижения счетчиком нулевого состояния отмечается импульсом на выходном выводе µPSD. Счетчик тактируется сигналом ALE. Процессор 8032 в любой момент может загрузить произвольное значение счета, создав переменный делитель частоты сигнала ALE.
Еще четыре макроячейки используются для организации выхода четырех старших сигналов адреса процессора 8032. Размещенный в 80-выводном корпусе µPSD на выделенные выводы выдает сигналы только двенадцати младших разрядов адреса 8032. При необходимости выдавать внешние адреса большей разрядности, дополнительные разряды добавляются с использованием PLD.
Через Порт A µPSD выводятся данные на модуль LCD, Порт B используется для организации некоторой "склеивающей" логической схемы и для организации сигнала выбора "внешнего кристалла" LCD. В данном примере Порт A работает в специальном режиме повторителя шины данных, называемом режимом I/O периферии. Процессор 8032 будет пропускать данные через Порт A только в определенном диапазоне адресов, задаваемом в PSDsoft Express.
Карта памяти показывает, что 32 кбайта вторичной Flash памяти используется для кодов процессора 8032 и 256 кбайт основной Flash памяти используются для хранения данных процессора 8032. Условные обозначения fs0 ~ fs7, csboot0 ~ csboot3, rs0, csiop и psel, указанные на Рис. 3, относятся к соответствующим внутренним сегментам памяти µPSD. Основная Flash память µPSD состоит из восьми сегментов по 32 кбайта (fs0 ~ fs7), вторичная Flash память µPSD состоит из четырех сегментов по 8 кбайт (csboot0 ~ csboot3) и внутренняя SRAM µPSD рассматривается как один сегмент емкостью 8 кбайт (rs0). Группа регистров управления µPSD, управляющих портами I/O A, B, C и D находится в 256-байтовом пространстве адресов xdata, базовый адрес которого получил обозначение "csiop". В µPSD используется повторитель шины данных, разрешаемый в некотором интервале адресов, задаваемом psel.
На Рис. 3 показан также один сигнал выбора внешней памяти (LCD_e) для модуля LCD. Данная карта памяти определена с использованием пакета программ разработки PSDsoft Express. Каждый сегмент памяти может быть размещен по любому адресу, обеспечиваемому множеством возможных схем распределения. Данная карта памяти является лишь одним, из множества возможных, распределением памяти и соответствует рассматриваемому в данном Application Note примеру. Примером подразумевается, что процессор 8032 "загружается" и выполняет код, полностью находящийся в пределах 32 кбайтов пространства кодов вторичной Flash памяти и, что 256 кбайт основной Flash памяти будут использоваться только как память данных. Однако эта карта памяти может изменяться и разрастаться в связи с ростом потребностей проекта. Например, процессор 8032 может внутри блока регистров csiop, записать специальный регистр, обозначаемый VM, так, чтобы переклассифицировать основную Flash память из пространства данных на пространство кодов.
После этого 8032 получит доступ к 256 кбайтам Flash памяти пространства кодов, простирающегося на восемь страниц области старших адресов (от 8000 по FFFF) и, кроме того, 8032 будет иметь доступ и к 32 кбайтам Flash памяти кодов в пространстве кодов младших адресов памяти (от 0 по 7FFF). В этот момент Flash память в пространстве данных отсутствует.
При сбросе системы карта памяти вновь вернется к виду, показанному на Рис. 3. Во время работы процессор 8032 может обращаться к VM регистру и выполнять над его содержимым некоторые манипуляции. Для установки, после включения питания, исходного состояния регистра VM используется PSDsoft.
Итак, известно, что собой представляет пример разработки. Теперь необходимо запустить PSDsoft Express, создать папку проекта и задать проекту имя.
Непосредственно процесс разработки начинается со щелчка на поле "MCU/DSP and PSD Selection" окна Design Flow. В открывшемся окне (Рис. 4) в выпадающих списках выполняется необходимый выбор (сделанный выбор отражен на рисунке). По щелчку на OK откроется окно "Design Parameters", в котором для данного случая нужно выбрать "Example Template". Здесь находится проект, соответствующий данному Application Note и выполняемый с использованием комплекта разработки DK3200. Затем, по подсказке, выберите шаблон для DK3200.
Рис. 4. Выбор MCU и начальное размещение Flash памяти в пространствах кодов и данных
В открывшемся по щелчку OK окне Pin Definitions производится задание функций выводов. Для нашего примера функции выводов уже заданы. Можно пройти по выводам, щелкая на них, просмотреть их конфигурацию и то, как они соотносятся с Рис. 2
Отметим, что в данном примере используется 6-выводной JTAG интерфейс, производительность которого почти на треть выше, чем у задаваемого по умолчанию стандартного 4-выводного JTAG. Два дополнительных вывода в 6-выводной конфигурации JTAG - это _tstat и terr.
По щелчку на кнопке "Next" открывается окно Design Assistant на закладке, позволяющей распределить память по страницам ("Page Register Definition").
При распределении памяти необходимо определить диапазон адресов выбора кристаллов для каждого элемента памяти µPSD (внешних относительно ядра 8032). Внешними, относительно ядра 8032, являются четыре блока памяти: основная Flash память, вторичная Flash память, SRAM и регистры управления. К каждому из этих внешних блоков ядро 8032 обращается, посылая соответствующие адреса на PLD декодирования (DPLD). Каждый из сегментов памяти имеет собственное имя выбора кристалла (например: fs3, csboot1, rs0, csiop, и т.д.) и выражения для этих сигналов выбора кристаллов, как и для сигналов выбора любого внешнего кристалла, задаются с использованием PSDsoft Express. Поскольку для данного проекта необходимо восемь страниц (или банков) памяти, как показано на Рис. 3, используются три бита регистра страниц (23 = 8), как показано на Рис. 5. Не задействованные биты регистра страниц могут быть использованы для других функций. Отметим, что используемые в распределении памяти биты регистра страниц, должны быть младшими битами.
Рис. 5. Задание функций выводов (нижнее окно) и задание регистра страниц (верхнее окно)
По щелчку на кнопке "Next" окна "Page Register Definition" открывается окно закладки задания сигналов выбора кристаллов ("Chip Select Equations"), в котором необходимо вводить начальные и конечные адреса диапазона действия этих сигналов. Так для сигнала rs0 (xdata SRAM, емкостью 8 кбайт) введен диапазон адресов от 2000h по 3FFFh, диапазон адресов для каждого сигнала выбора страницы основной Flash памяти (fs0 ~fs7, номера страниц 0 ~ 7, соответственно) составляет от 8000h до FFFFh, диапазоны адресов сигналов выбора кристаллов, какого либо из четырех сегментов вторичной Flash памяти, занимают, соответственно, диапазоны: csboot0 - от 0000h до 1FFFh, csboot1 - от 2000h до 3FFFh, csboot2 - от 4000h до 5FFFh и csboot3 - от 6000h до 7FFFh. Отметим, что при выборе сигналов csbootx не будут отображаться номера страниц, поскольку вторичная Flash память, как и SRAM, является общей, относительно всех страниц.
Имена дополнительных сигналов (управляющих сигналов ядра 8032: _rd, _wr, _psen, ale) при задании внутренних (в µPSD) сигналов выбора кристаллов не используются, поскольку это будет реализовано на уровне кремния (при согласовании уровня данных конфигурации с уровнем аппаратных средств µPSD). По умолчанию SRAM всегда относится к пространству данных ядра 8032.
Для просмотра, что же получается в результате, в любое время можно щелкнуть кнопку "View". При этом появятся сведения о текущем состоянии проекта.
Сигнал выбора кристалла csiop (Chip Select I/O Port) обеспечивает обращение к пространству в 256 xdata регистров, используемых для управления портами A, B, C, D, регистром страниц, для управления питанием и другими функциями µPSD. В работе µPSD используется сорок из возможных 256 регистров (назначение регистров, смещения их адресов от базового адреса csiop см. в Data Sheet). Для csiop не следует задавать дополнительные определители сигналов и не допускается размещение csiop на страницах памяти. Регистры csiop должны быть размещены в xdata пространстве адресов.
При задании сигнала выбора кристалла LCD_e потребовался несколько больший объем ввода. Так как это сигнал выбора внешнего кристалла - выбора модуля LCD, необходимо включить спецификаторы сигналов _rd и _wr. В данном проекте LCD_e истинен (активен высоким уровнем) только когда ядро 8032 выводит адрес в диапазоне от 300h до 3FFh, AND истинен сигнал управления _rd ядра 8032 и OR истинен сигнал управления _wr ядра. Чтобы создать эту логическую схему, информация вводится так, как показано на Рис. 6. Поскольку сигналы _rd и _wr активны низким уровнем то, когда они задаются как спецификаторы, используется логический оператор NOT (!). Спецификаторы сигналов можно добавлять, устанавливая курсор там, куда нужно ввести имя сигнала, и выполнив двойной щелчок кнопкой мыши на имени сигнала в списке рекомендуемых спецификаторов.
Все описанные выше операции были выполнены методом "выдели и подключи" с минимальным вводом с клавиатуры.
Рис. 6. Задание сигналов выбора "внешнего" кристалла LCD
После ввода логического выражения, методом "выдели и подключи", Design Assistant (DA) в фоновом режиме, используя язык ABEL, формулирует HDL логические утверждения. DA создает также все утверждения объявлений в ABEL. Это существенно сокращает объем ввода с клавиатуры и снижает вероятность ошибок. В то же время, при реализации более сложных логических схем PSDsoft позволяет редактировать утверждения ABEL вручную.
Так в данном примере проекта предусмотрена организация четырех узлов (register - триггеров) для сохранения начального состояния 4-разрядного счетчика обратного счета и четырех дополнительных register, на которых должен быть создан сам 4-разрядный счетчик обратного счета. См. Рис. 7. Часть процедуры организации будет выполнена методом "выдели и подключи", часть процедуры, касающаяся организации последовательности битов регистра и счетчика, будет выполнена в ручном режиме.
Рис. 7. 4-разрядный счетчик обратного счета с автоматической загрузкой начального значения
Сами узлы создаются в окне закладки "User Defined Node Equations". Вначале, в открывшемся по щелчку на кнопке "Def Node .." окне "User Defined Node", задается имя узла и его тип (комбинаторный, D-register, J-K register и т.д.). В данном примере все восемь узлов типа D-register. У уже созданного узла можно определять: где вход (Input), где сигнал тактирования (Clock), сброс (Reset) или вход установки (Set), как показано Рис. 8.
Рис. 8. Узел D-register
Отметим, что на всех восьми узлах отсутствуют определения входов - для узлов down_count, входы определены в ABEL файле, для узлов init_count логические входы (или вход тактирования) не определены потому, что ядро 8032 будет загружать узлы напрямую, записывая в соответствующий регистр макроячейки вывода, находящийся среди 256 регистров в пространстве csiop.
По щелчку на кнопке "Done" на экран будет вновь выведено главное окно последовательности проектирования (Design Flow). Открыв в верхней части экрана меню "Report" и выбрав "Design Assistant Summary" можно просмотреть отчет о текущем состоянии разработки.
Если в окне Design Flow, показанном на Рис. 1, не будет разрешено (не отображено) поле "Edit/Add Logic Statements", то через пункт "Project" основного меню в верхней части экрана выбирается "Preference", включается "Enable ABEL Editing Capability" и по щелчку OK будет выведено главное окно Design Flow с уже активированным полем "Edit/Add Logic Statements".
Щелкните поле "Edit/Add Logic Statements". На экран будет выведено окно "HDL Assistant". Это окно позволяет просмотреть выводимую информацию: примеры логики и синтаксиса ABEL, которые можно будет "вырезать и вставлять" в будущие проекты. Закройте HDL Assistant, и будет виден исходный HDL ABEL файл. В файле будут отображены все объявления и логические выражения, автоматически сгенерированные Design Assistant. См. Рис. 9.
Рис. 9. Abel файл и область безопасного ввода объявлений ABEL
Ввести (впечатать) утверждения в ABEL файл можно только в двух специальных областях. Если вводить утверждения вне этих областей, то Design Assistant, при следующем входе в него, выполнит свою запись поверх той, что была введена вручную.
Первая такая безопасная область - для ввода объявлений ABEL, располагается между двумя утверждениями:
- "// Begin user preserved declarations (Начало объявлений пользователя)" и
- "// End user preserved declarations (Конец объявлений пользователя)".
Вторая безопасная область - для ввода логических выражений, располагается между двумя другими утверждениями:
- "// Begin user preserved equations (Начало выражений пользователя)" и
- "// End user preserved equations (Конец выражений пользователя)"
Отметим утверждения WSIPSD PROPERTY. Их необходимо использовать при каждом предписании последовательности размещения каких либо макроячеек PLD. Если не водить утверждений WSIPSD PROPERTY, то PSDsoft в процессе сборки разместит макроячейки в произвольном порядке. Для большинства проектов в этом нет никаких проблем. Но в данном примере проекта необходимо загружать начальное значение счетчика обратного счета по шине данных ядра 8032 и необходимо быть уверенными в том, что макроячейки выхода, сохраняющие начальное значение, расположены в последовательности, соответствующей порядку следования разрядов и в правильном положении в наборе из восьми макроячеек выхода.
Утверждение свойства:
WSIPSD PROPERTY 'DataBus_OMC D[7:4]:down_count[3:0] MCELLAB' - задает порядок битов счетчика обратного счета и закрепляет их за старшими разрядами шины данных ядра 8032.
Утверждение свойства:
WSIPSD PROPERTY 'DataBus_OMC D[3:0]:init_count[3:0] MCELLAB' - задает порядок битов регистра хранения загружаемого значения и закрепляет их за младшими разрядами шины данных ядра 8032. Теперь, при записи ядром 8032 в регистр OMCAB (адрес csiop+0x20), младшие четыре бита байта будут загружаться в регистр хранения загружаемого значения. В регистре OMCAB, по адресу csiop+0x22, организован регистр маски, используемый для предотвращения записи ядром 8032 других битов.
Если утверждения PROPERTY вместо MCELLAB, как показано на Рис. 9, будут заканчиваться MCELLBC, то для организации счетчика был бы использован другой набор из восьми макроячеек выхода. Подробности см. в Data Sheet на µPSD и в Руководстве пользователя PSDsoft Express.
Вторая безопасная область, для ввода логических выражений, расположена в этом же файле, но несколько ниже.
Итак, можно видеть, что использование PSDsoft Express позволяет существенно сократить объем ввода при ручной записи задаваемых пользователем выражений.
Отметим, что в поле "Additional PSD Configuration" окна Design Flow находится тот инструмент, которым можно установить бит защиты, предотвращающий попытки программирующего устройства исследовать или скопировать содержимое µPSD. Там же расположены закладки, в окнах которых можно установить код пользователя, устанавливать защиту, как отдельного сектора, так и нескольких (можно всех) секторов энергонезависимой памяти µPSD.
По щелчку в поле "Fit Design to Silicon" окна Design Flow PSDsoft выполнит совмещение данных конфигурирования с аппаратными средствами (кремнием) µPSD - откомпилирует все выбранные конфигурации и представит отчет. В отчете сборщика (Fitter) будут показаны сигналы, заданные в окне "Pin Definitions", конфигурация выводов, распределение программируемой логики и все логические выражения в их конечной (сокращенной) форме. Здесь же отражается количество задействованных термов произведений программируемой логики, что необходимо для оценки потребления мощности.
По щелчку в поле "Generate C Code Specific to PSD" открывается окно генерации функций/заголовков на ANSI-C языке. Эти функции могут быть использованы при выполнении основных действий в PSD (типа записи и стирания) и подготавливаются для упрощения интеграции кодов. В закладке "Coded Examples" этого же окна находятся коды примеров проектов, в частности, описанного в AN1560 и используемого в данной статье.
Теперь, когда задание конфигурации и всех выводов µPSD завершено, PSDsoft Express может создать единый объектный файл (*.obj), объединяющий программу пользователя процессора 8032 (*.hex) и конфигурацию µPSD. По щелчку на поле "Merge MCU/DSP Firmware with PSD" открывается окно, в котором PSDsoft Express воспринимает файлы микропрограмм в форматах Srecord или Intel HEX от компилятора/компоновщика процессора 8032 и размещает содержимое этих файлов по физическим сегментам памяти µPSD в соответствии с заданиями, сделанными в окне "Chip Select Equations". При этом абсолютные системные адреса файлов микропрограмм процессора 8032 преобразуются в физические внутренние адреса µPSD, которые будут использоваться программатором в процессе программирования µPSD. Процесс преобразования адресов прозрачен. Все, что необходимо делать - впечатывать (или выбирать в браузере) в соответствующие поля имена файлов, сгенерированных компоновщиком процессора 8032, и PSDsoft Express выполнит все остальное.
Остается выполнить последний - седьмой шаг - выполнить JTAG-ISP программирование прибора µPSD. В окне, открывающемся по щелчку на поле "STMicroelectronics JTAG / ISP", задается созданный объектный файл, задается характер работы JTAG интерфейса (количество используемых JTAG выводов, программируемые области PSD и пр.) и запускается "Execute". В нижней части окна будет отображаться ход JTAG программирования. Процесс программирования должен занимать всего несколько секунд и все время программирования на плате стартового комплекта должен светиться светодиод ISP.
После завершения JTAG программирования примера проекта на LCD дисплее платы комплекта разработки DK3200 появится сообщение:
DK3200 for µPSD
PWM to ADC DEMO
После этого на LCD дисплее будут отображаться шестнадцатиричные значения результатов ADC преобразований, изменяющиеся вверх/вниз между значениями 0x00h и 0xFFh, отражая изменение ширины импульсов PWM.
Установки сеанса JTAG программирования можно сохранить в файле с тем, чтобы использовать их впоследствии. Для этого достаточно щелкнуть кнопку "Save".
На этом краткое представление пакета PSDsoft Express - пакета средств разработки PSD приборов и микроконтроллеров µPSD завершено. Основной вывод, который можно сделать - данный пакет действительно снимает ряд проблем, возникающих перед разработчиками со слабым знанием приборов программируемой логики. Другой вывод - утверждение о том, что законченную систему на основе PSD приборов (и µPSD) можно разработать в течение нескольких часов, не далеко от истины. В особенности, если уже готовы коды микропрограмм пользователя 8-разрядного микроконтроллерного ядра и, если использовать наработанные шаблоны примеров.
Более подробную информацию о самом пакете PSDsoft Express можно почерпнуть из руководства пользователя PSDsoft Express и Application Notes (в частности AN1560). Эти документы, как уже отмечалось, имеются на компакт дисках, прилагаемых к комплектам разработки, на компакт дисках, которые можно получить в офисе фирмы Консультационно-Технический центр по Микроконтроллерам (КТЦ-МК) или скачать с сайтов фирм КТЦ-МК (http://www.cec-mc.ru/comp/psd/pdf/PSD Software.zip) или фирмы STMicroelectronics (www.st.com/psd).
Отметим, что кроме комплекта разработки DK3200, позволяющего запрограммировать один µPSD прибор, фирмой STMicroelectronics разработан JTAG программатор для одновременного программирования нескольких устройств (PSD-PowerPoint).
Крылов Е. И.
|