Введение
Компания Cypress Semiconductor занимается довольно обширным кругом деятельности, начиная от сенсорных панелей, заканчивая беспилотными системами управления автомобилей. Главный офис фирмы расположен в Америке, в штате Калифорния. По данным википедии, за 2012 год размер компании составляет около 3600 человек. На сегодняшний день фирма поставляет на рынок серию микроконтроллеров PSoC (Programmable System-on-Chip), сопутствующую им обвязку и программное обеспечение. К сожалению, в странах СНГ эти названия слышатся редко, а девайсы Cypress попадают к нам в руки ещё реже. В данном цикле статей мы будем исправлять данное положение. Подразумевается, что читатель обладает базовыми познаниями микроэлектроники и программирования.
Аппаратное обеспечение
Наш подопытный будет CY8C29466 – 24PXI. Цена на официальном сайте за штуку составляет 4.58$ (дата написания статьи январь 2014г).
Технические характеристики:
Ядро
M8C
Ширина шины данных
8 bit
Максимальная тактовая частота
24 MHz
Размер программной памяти
32 KB
Размер ОЗУ данных
2 KB
Рабочее напряжение питания
3 V to 5.25 V
Диапазон рабочих температур
— 40 C to + 85 C
Разрядность АЦП
14 bit
Доступные аналоговые/цифровые каналы
12
Размер ПЗУ данных
32 KB
Количество программируемых входов/выходов
24
Серия процессора
CY8C29x66
Плата, на которой он будет сидеть это CY3210-PSoCEval1.
Иногда в статьях будут приводиться вырезки из оригинальной документации, которую можно найти на сайте http://www.cypress.com или непосредственно связавшись со мной http://vk.com/id26632194, буду рад всем помочь. Если видите текст на английском языке на скриншотах или в виде вставки в текст, то скорее всего это из оригинальной документации.
На плате располагаются следующие устройства:
За 40$ (у российских поставщиков немного дороже) на официальном сайте можно заказать Development Kit, в который входит:
Если все это (или похожие по конфигурации оборудование у вас есть), то можно качать программное обеспечение по ссылке http://www.cypress.com/?rID=2541&source=shop или устанавливать его из комплекта поставки. Неприятным моментом будет то, что потребуется регистрация. И хотя на сайте раздаётся две софтины, PSoC Designer и PSoC Programmer. Нам потребуется лишь первая. Так как функционал для прошивки чипа включён в комплект дизайнера.
Программное обеспечение PSoC Designer 5.3
Программирование в среде PSoC Designer 5.3 осуществлено на достаточно высоком уровне (хотя и программированием это назвать с уверенностью нельзя, это что-то среднее между программированием и моделированием). Основное рабочие пространство среды представляет собой схему чипа. На которой располагаются свободные блоки (а если вы уже что то добавили то не свободные) для установки модулей микроконтроллера. Это могут быть различные ЦАП, АЦП, контроллеры дисплея, трансиверы данных, программируемые усилители, таймеры, счетчики, датчики температуры (имеется ввиду, встроенные в микросхему), пользовательские блоки и так далее. Цифровые модули располагаются в верней части рабочего пространства, аналоговые — в нижней. В рабочую зону входят так же шины, на которые вешаются входы и выходы аналоговых и цифровых модулей, которые в свою очередь связываются с портами(так называемые ноги микроконтроллера). Для большей наглядности я загружу какой-нибудь проект и опишу оставшиеся части интерфейса.
Для более детального ознакомления со средой разработки, можно посмотреть видео, представленное в примере 1.
Пример 1. Lighting LED
Задача: Зажечь один из светодиодов на отладочной плате.
Программную часть по настройке проекта и программирования можно посмотреть на видео.
Для наглядности приведу код прошивки:
#include // part specific constants and macros
#include «PSoCAPI.h» // PSoC API definitions for all User Modules
void main(void)
{
M8C_EnableGInt ; // Uncomment this line to enable Global Interrupts
// Insert your main routine code here.
PWM8_1_Start();
PWM8_1_EnableInt();
while(1);
}
После того как всё описанное на видео было проделано, осталось подключить микроконтроллер и полюбоваться результатом.
Подключаем следующим образом:
Ну и наконец результат работы прошивки!
В комментариях к статье хотелось бы услышать какие темы интересно будет затронуть в следующих уроках.
Прикрепленные файлы:
- Lighting_LED.zip (204 Кб)