Подписка на новости

Опрос

Нужны ли комментарии к статьям? Комментировали бы вы?

Реклама

 

2009 №4

Микроконтроллеры Microchip PIC18F1xK50 с модулем USB

Афанасьев Илья


Компания Microchip Technology выпускает широкую номенклатуру PIC-микроконтроллеров с интегрированным модулем USB, поддерживающим спецификацию 2.0. В настоящее время выпускаются 8-, 16-, и 32-битные полноскоростные (Full Speed, FS) USB-микроконтроллеры в корпусах с числом выводов от 28 до 100, с поддержкой функций «устройство», «хост» и OTG.

Компания Microchip расширила семейство USB-контроллеров, выпустив на рынок 20-выводные микроконтроллеры PIC18F1xK50 (PIC18F13K50 и PIC18F14K50), различающиеся размером памяти программ. Характеристики семейства микроконтроллеров PIC18F1xK50 представлены в таблице 1.

Таблица 1. Семейство микроконтроллеров PIC18F1xK50

Контроллер Память АЦП Захват/
сравнение/ ШИМ (ECCP)
MSSP EUART Компаратор Таймер
8/16 бит
USB
программ ОЗУ EEPROM 10р SPI I2C
PIC18F13K50
PIC18LF13K50
8K 512 256 11 1 1 1 1 2 1/3 1
PIC18F14K50
PIC18LF14K50
16K 768 256 11 1 1 1 1 2 1/3 1

Ядро

Контроллеры семейства K50 имеют расширенную систему команд. Дополнительно к стандартным 75 инструкциям ядра PIC18 новые микроконтроллеры поддерживают команды, расширяющие функциональность ядра. Дополнительные восемь инструкций пополняют операции с косвенной и индексной адресацией, в новом ядре также реализована индексная адресация со смещением для многих стандартных инструкций ядра PIC18. Расширение системы команд по умолчанию запрещено. Для разрешения работы расширенных команд служит специальный бит XINST в битах конфигурации микроконтроллера. Таким образом, реализуется полная программная совместимость со стандартным ядром, если пользователь применяет новые микроконтроллеры со старым программным обеспечением.

Расширенные инструкции предназначены для улучшения оптимизации и возможности создания реентерабельного кода на языках высокого уровня, например на Си. Наряду с прочим, расширенные системы команд позволяют компиляторам языков высокого уровня эффективно выполнять такие операции над данными, как:

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

Контроллеры серии K50 могут работать с максимальной тактовой частотой 48 МГц в диапазоне напряжений от 2,7 до 5,5 В и на частоте 20 МГц в диапазоне от 1,8 до 2,7 В.

Интерфейсы

Модуль USB-контроллеров PIC18F1xK50 поддерживает LS (Low Speed — 1,5 Мбит/с) и FS (Full Sped — 15 Мбит/с) спецификации USB 2.0. Контроллеры имеют по 256 байт выделенных для работы с USB двухпортовой ОЗУ, поддерживают 16 конечных точек (по 8 на вход и на выход). Для определения физического подключения микроконтроллера к шине USB-контроллеры имеют возможность формирования прерывания по изменению состояния на выводах D+ и D–. Так же как и старшие контроллеры семейства PIC18, новые 20-выводные контроллеры содержат все необходимое для прямого подключения к USB-хосту (встроенный USB-модуль с трансивером, подтягивающие резисторы на линии D+ и D– для задания скорости шины), но не могут работать с внешним USB-трансивером.

Устройства на базе контроллеров семейства PIC18F1xK50 могут работать с питанием от шины USB, от собственного источника питания или иметь комбинированное питание. При наличии в устройстве собственного источника питания может пригодиться возможность PIC-контроллера определять подключение USB-кабеля с помощью возможности формирования прерывания по изменению состояния на линиях D+ и D–. Хост или хаб USB имеет подтягивающие к «земле» резисторы порядка 15 кОм. При подключении микроконтроллера к шине USB и наличии внешних подтягивающих резисторов к напряжению питания микроконтроллер может определить изменение состояния на выводах D+ и D–, выставить флаг прерывания и включить модуль USB.

Помимо модуля USB-контроллеры имеют модуль последовательного интерфейса EUSART и модуль синхронного последовательного интерфейса MSSP.

Модуль EUSART поддерживает работу с интерфейсами RS-485, RS-232 и LIN 2.0. Наличие внутреннего точного стабилизированного RC-генератора и возможности автоматического определения скорости принимаемых данных позволяет работать без внешнего кварцевого генератора.

Модуль синхронного последовательного интерфейса MSSP дает возможность работать в режимах Master и Slave с интерфейсами SPI и I2C.

Аналоговая периферия

Микроконтроллеры серии PIC18F1xK50 содержат всю ставшую стандартной аналоговую периферию — 10-разрядный АЦП, два аналоговых компаратора и программируемый источник опорного напряжения. Из нововведений следует отметить наличие встроенного прецизионного источника фиксированного опорного напряжения. Для фиксированного источника опорного напряжения выбираются три значения напряжения 1,024, 2,048 и 4,096 В. Источник фиксированного опорного напряжения может использоваться как база для программируемого источника опорного напряжения (ЦАП) или подключаться на вход АЦП и компараторов.

Выход программируемого источника опорного напряжения может также подключаться к входу АЦП и компараторов и выводиться на вывод микроконтроллера для использования совместно с внешними цепями микроконтроллера.

Микроконтроллеры PIC18F1xK50 имеют два аналоговых компаратора. Компараторы часто интегрируются в микроконтроллеры, так как они предоставляют некоторые полезные функции, независимые от исполняемого программного кода. Встроенные компараторы имеют входной мультиплексор, позволяющий подключать входы компараторов к тому или иному выводу микроконтроллера и источникам опорного напряжения. Выход компаратора может подключаться на выходной порт микроконтроллера, может быть источником прерывания, выводить микроконтроллер из режима энергосбережения Sleep, а также выключать ШИМ-модуль микроконтроллера.

Модуль компараторов может работать совместно с интегрированным RS-триггером. Данная связка позволяет реализовать сенсорные клавиатуры, импульсные преобразователи энергии, управление мощными светодиодами и многое другое.

Микроконтроллеры семейства PIC18F1xK50, как и все контроллеры К-серии, выполнены по технологии 0,35 микрон и имеют максимальное напряжение питания 3,6 В. Однако версии контроллеров PIC18F1xK50 имеют встроенный регулятор напряжения 3,2 В, что позволяет работать от питающих напряжений в диапазоне от 1,8 до 5,5 В, при этом вся периферия также работает во всем диапазоне питающих напряжений, за исключением выводов RA1 и RA2 (D+ и D–), которые могут работать как входы с уровнями напряжений до 3,6 В или как линии интерфейса USB. В версиях контроллера PIC18LF1xK50 нет встроенного регулятора напряжения питания, поэтому LF-контроллеры имеют ограниченный диапазон питания от 1,8 до 3,6 В.

Новые микроконтроллеры совместимы по выводам со всеми 20-выводными контроллерами Microchip, однако один вывод выделен для подключения конденсатора для стабилизации внутреннего регулятора напряжения. Совместимость по выводам как с предыдущими контроллерами, так и с будущим семейством PIC18F1xK22 (аналогичные контроллеры, но без модуля USB) позволит унифицировать печатную плату под различные задачи или с минимальными доработками интегрировать USB-интерфейс в существующую разработку.

Микроконтроллеры PIC18F1xK50 выпускаются в корпусах DIP-20, SOIC-20 и миниатюрном корпусе SSOP-20 и имеют индустриальный температурный диапазон –40…+125 °С.

Новые контроллеры поддерживаются всеми средствами отладки компании Microchip (программаторами-отладчиками PICkit2, PICkit3, ICD-2, ICD-3 и внутрисхемным эмулятором REAL ICE). Однако, как и для всех маловыводных контроллеров, для внутрисхемной отладки необходим специальный отладочный модуль. На плате отладочного модуля установлен специальный микроконтроллер PIC18F14K50-ICD, который содержит модуль теневой отладки и имеет дополнительные выводы, выделенные для внутрисхемной отладки.



Рисунок. Демонстрационный комплект Low Pin Count USB Development Kit

В помощь разработчику компания Microchip выпускает демонстрационный комплект Low Pin Count USB Development Kit (номер для заказа DV164126). Демонстрационный комплект Low Pin Count USB Development Kit (рисунок) содержит все необходимое для начала работы и освоения маловыводных микроконтроллеров с USB:

  • демонстрационную плату с микроконтроллером PIC18F14K50 и одну плату без установленных компонентов для самостоятельной сборки;
  • отладочный модуль для внутрисхемной отладки контроллеров семейства PIC18F1xK50;
  • внутрисхемный отладчик-программатор PICkit2;
  • компакт-диск с необходимым программным обеспечением, примерами программ и лабораторными работами для освоения USB-микроконтроллеров.

Новые USB-контроллеры поддерживаются готовыми USB-библиотеками Microchip. Пакет программ MCHPFS USB Framework содержит реализации различных классов USB-устройств. Для контроллеров PIC18F14K50 вы найдете примеры реализации коммуникационного CDC класса (виртуальный COM-порт через USB), различных HID-устройств (манипулятор мышь, джойстик, пользовательское устройство), устройство хранения данных — MSD, составное устройство (реализация HID и MSD через одно USB-соединение).

Благодаря низкой цене, малому размеру корпусов, обширной коммуникационной и аналоговой периферии, новые USB-контроллеры семейства PIC18F1xK50 найдут широкое применение в преобразователях интерфейсов, датчиках, периферийных USB-контроллерах. Совместимость кода со старшими семействами и готовые примеры реализации различных классов USB-устройств помогут программистам легко и быстро освоить новое семейство маловыводных USB-контроллеров производства Microchip.

Таблица 2. Электрические параметры контроллеров серии K50

Тип
контроллера
Встроенный
стабилизатор
питания
Диапазон
питающих
напряжений, В
Ток портов
ввода/вывода,
мА
PIC18F13K50
PIC18F14K50
3,2 В 1,8–5,5 ±25
PIC18LF13K50
PIC18LF14K50
нет 1,8–3,6 ±25

Литература

  1. PIC18F13K50/14K50 Data Sheet
  2. www.microchip.com

Скачать статью в формате PDF  Скачать статью Компоненты и технологии PDF

 


Другие статьи по данной теме:

Сообщить об ошибке