PSoC – Как начать работать

Для работы понадобятся:

1. Среда разработки, именуемая «PSoC Designer».
2. Программатор с соответствующим софтом.
3. И конечно же – ваше целевое устройство

Обо всем этом речь пойдет ниже. Существует более простой, но и более дорогостоящий путь – купить готовый отладочный набор, в который обычно входят:
– программирующее устройство (с функциями отладки и эмуляции);
– отладочная («оценочная») плата (Evaluation Board) с установленной микросхемой PSoC, периферией (кнопки, индикаторы и т.д.) и небольшим макетным полем;
– компакт-диск со всей необходимой документацией и софтом.
На сайте Cypress вы найдете большой выбор таких наборов, а также программаторов и отладочных плат по отдельности. Дистрибуцией продукции этой фирмы в России занимается компания «Макро Групп».

Про то, что не следует вначале углубляться в дебри технического описания, я уже говорил. Установите сперва среду разработки «PSoC Designer». Все сразу станет наглядно. В том смысле, что поигравшись с расстановкой модулей и их межсоединениями, быстро создается впечатление о возможностях конфигурирования кристалла.

Программа тяжеловесна, а скорость ее работы оставляет желать лучшего. Зато с ней можно работать, практически не читая предварительно никакой документации. В качестве первого проекта можно использовать вот это. Также хороший способ попрактиковаться – взять и изучить какой-нибудь готовый проект, а затем попытаться внести в него небольшие изменения, каждый раз наблюдая за результатом.

Основной источник информации, которым вам придется пользоваться – это, конечно же, справка по Модулям Пользователя (вызывается из PSoC Designer-а, хотя файлы *.html и *.pdf можно найти в соответствующих папках, расположенных в разделе ...\PSoC Designer\Data\Stdum). Наконец, если вы желаете досконально изучить внутренности PSoC – то читайте Техническое Руководство (Technical Reference Manual, или сокращенно TRM). Этот документ появится в папке ...\PSoC Designer\Documentation после установки PSoC Designer-а, но лучше скачать его последнюю версию с сайта Cypress.

Наконец, чтобы лучше понять работу блоков с переключаемыми конденсаторами (SCB), обязательно прочитайте документ AN2041 – «Understanding Switched Capacitor Analog Blocks».


PSoC Designer

Эта среда разработки распространяется свободно в виде архива объемом более сотни мегабайт. Скачать его можно на сайте Cypress. На момент написания этой статьи была доступна версия 4.4. Отличия от младших версий заключаются, в основном, в поддержке новых продуктов фирмы и в пополнении библиотеки новыми Модулями Пользователя.

Установка программы проблем обычно не вызывает. Вместе с программой утановится и комплект справочной документации. С текстами на ассемблере можно начинать работать сразу, а вот для использования компилятора «C» требуется ввести лицензионный ключ, который является платным. Можно установить версию 4.1 и в образовательных целях использовать ключ WR99228-2hYQLB, применявшийся на конкурсе PSoC Design Contest–2003.

Но не стоит возлагать на компилятор «C» больших надежд – и код он генерирует не очень хороший, и слишком много в нем всяких неприятных заморочек (в частности, будьте осторожны со смешиванием различных типов данных в математических выражениях – иногда бывает полезнее разбить сложное выражение на несколько простых). В связи с этим появился новый компилятор – HI-TECH C, предусматривающий работу в трех режимах: «урезанном» «Lite» (неограниченное бесплатное использование), оценочном «Evaluation» (45 дней бесплатного пользования) и полнофункциональном «PRO».

Еще Cypress выпустила альтернативу PSoC Designer-у – среду разработки PSoC Express. Этот продукт предназначен, так сказать, для «чайников» – предполагается, что можно создавать устройства на базе PSoC без написания кода.


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

Здесь есть несколько альтернатив.

1. Те, кто собирается заниматься разработкой устройств профессионально, могут купить фирменные отладочные модули разных ценовых категорий и с разными возможностями. Я лично использую ICE Cube, хотя иногда предпочитаю описанные ниже варианты.

2. Программатор на базе USB-микросхемы CY7C64113 можно изготовить самому, воспользовавшись материалами на сайте Cypress (с некоторого момента материалы стали недоступны, так что здесь оставляю их копии (схема, прошивка с исходниками и программное обеспечение, все в архиве 1,54 МБ).

Этот продукт называется Invention Board, и в свое время он бесплатно рассылался для всех желающих принять участие в конкурсе электронных разработок на базе PSoC. На плате дополнительно установлена микросхема CY8C27443-24PVI, а сама плата оформлена в виде 28-выводного модуля для втыкания его в панельку, причем нумерация выводов у платы и у микросхемы совпадают. Предусмотрена возможность как программирования встроенной микросхемы PSoC, так и использования платы в качестве внешнего программатора (для так называемого внутрисистемного программирования – «ISSP»). С этой целью на плате есть пять контактных площадок для подпайки специального разъема. Питание плата получает от USB-порта компьютера, но может запитываться и от отлаживаемого устройства (выбирается джампером). Недостаток этого программатора – в поддержке микросхем исключительно 27-й серии (CY8C27xxx). К тому же, отсутствуют возможность программирования 8-выводных чипов CY8C27143, которые из-за отсутствущего входа Reset требуют специального вхождения в режим программирования.

3. Простейший программатор, подключаемый к LPT порту компьютера, предлагает собрать Ajithalayam из Индии. Его устройство выполнено на основе буферной микросхемы CD4050 (отечественный аналог К561ПУ4) и поддерживает практически все семейство PSoC, включая серию CY8C29xxx. Здесь есть режим Power-On Mode, что дает возможность программировать все 8-выводные микросхемы. Материалы по его программатору (разработано три модификации) можно взять здесь (zip-архив 134 кБ). На основе его «программатора 3-го типа» я разработал свой вариант. У меня добавились панелька под корпус DIP8 и контакты для быстрого макетирования.

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

Например, «Фитон» предлагает программаторы «ChipProg+» (интерфейс LPT) и «ChipProg-48» (интерфейс USB) на базе микросхем загружаемой логики, что позволяет расширять список программируемых устройств без аппаратных доработок. В настоящий момент уже поддерживаются серии CY8C24xxx, CY8C27xxx и CY8C29xxx.


Целевое устройство

Если вы собираетесь «прошивать» микросхемы PSoC через ISSP (т.е. не вынимая их из устройств), то предусмотрите на своей плате соответствующий коннектор, а при разработке устройств не используйте ножки P1[0] и P1[1] – они задействованы в процедуре программирования! В крайнем случае к ним может быть подключен кварц, не мешающий программированию. Но при подсоединенном программаторе (если у последнего не предусмотрен перевод линий в высокоимпедансное состояние) кварц может не запуститься – потребуется всякий раз после прошивки расчленять коннектор ISSP (из положения можно выйти, включив на период отладки режим внутреннего тактового генератора). Более подробно о реализации ISSP рассказано в документе AN2014 – «Design for In-System Serial Programming (ISSP)».

Для исследования функционирования PSoC, проверки идей, отладки отдельных узлов, а также всего устройства целиком, я использую свой вариант отладочной платы, которую назвал «Psoctronic». На ней, кроме 28-выводной микросхемы PSoC, расположены 2-х строчный ЖК-дисплей, четыре кнопки, коннектор для подключения RS-232 и ряд контактов, дублирующий выводы портов микросхемы. Материалы по этой плате находятся здесь.


antiradio.narod.ru/psoc
Дата создания документа: 14.08.2004. Последнее обновление: 05.05.2011.

Сайт создан в системе uCoz