Перейти к содержанию

Микроконтроллер НИИЭТ К1921ВК035

К1921ВК035 — 32-разрядный микроконтроллер АО «НИИЭТ» (Воронеж) для систем управления электроприводом: ядро с плавающей запятой на 100 МГц, три блока ШИМ, квадратурный декодер для датчика положения ротора и АЦП, который сам запускает ШИМ, — в металлокерамическом корпусе 6×6 мм.

Обновлено Редакция GAW

К1921ВК035 — микроконтроллер для систем управления электроприводом. По руководству пользователя его ядро выполняет команды Thumb и Thumb-2, умеет DSP-операции и операции с плавающей запятой одинарной точности, а отладка работает через JTAG и SWD. НИИЭТ указывает производительность 125 DMIPS и называет функциональным аналогом LM4F132 из семейства Stellaris компании Texas Instruments.

Характеристики

  • Частота: до 100 МГц; RC-генератор 8 МГц, кварц 8–24 МГц или внешний сигнал до 40 МГц, PLL.
  • Память: флеш-память 64 КБ (64 страницы по 1 КБ), загрузочная флеш-память 4 КБ, кэш команд и данных по 1 КБ, ОЗУ 16 КБ; DMA на 16 каналов.
  • Для электропривода: три двухканальных блока ШИМ с входом аварии, квадратурный декодер QEP, три блока захвата, четырёхканальный 12-разрядный АЦП с цифровыми компараторами, который запускает ШИМ по окончании преобразования.
  • Интерфейсы: два UART, CAN 2.0B с выводами узлов CAN0 и CAN1, I²C, SPI; четыре 32-разрядных таймера и сторожевой таймер.
  • Питание: 3,3 В ± 0,3 В по цифровой и аналоговой части, ток потребления — не больше 150 мА при 100 МГц; выводу CX нужен внешний конденсатор 4,7 мкФ для встроенного регулятора.
  • Порты: A и B по 16 линий, ток вывода — до 6 мА, суммарный ток портов — не больше 50 мА; электрические нормы заданы при −60, 25 и 125 °C.

Выводы

Корпус МК 5162.48-1 — 48 выводов, 6×6 мм. Цифровое питание 3,3 В — выводы 7, 19, 31, 43, цифровая земля — 6, 18, 30, 42; аналоговое питание — 24, аналоговая земля — 25; CX — 32, RESET# — 33, кварц XO_OSC и XI_OSC — 34 и 35, SERVEN — 36, NMI# — 37. Функции линий портов:

ВыводЛинияАльтернативная функция
4A0I2C_SCL
5A1I2C_SDA
8A2JTAG_TCK (SWCLK)
9A3JTAG_TMS (SWDIO)
10A4JTAG_TDI, ECAP0_IO
11A5JTAG_TDO (SWO), ECAP1_IO
12A6JTAG_TRST, ECAP2_IO
13A7PWM_TZ
14A8PWM0_A
15A9PWM0_B
16A10PWM1_A
17A11PWM1_B
20A12PWM2_A
21A13PWM2_B
22A14TMR0_IN
23A15TMR1_IN
26B0ADC_CH0
27B1ADC_CH1
28B2ADC_CH2
29B3ADC_CH3
38B4SPI_FSS
39B5SPI_SCK
40B6SPI_RX
41B7SPI_TX
44B8UART1_TX
45B9UART1_RX
46B10UART0_TX, QEP_S
47B11UART0_RX, QEP_I
48B12CAN1_RX, QEP_B
1B13CAN1_TX, QEP_A
2B14CAN0_RX
3B15CAN0_TX

После сброса линии портов — входы в третьем состоянии, кроме A2–A6: они сразу работают как JTAG. У NMI# и RESET# постоянная подтяжка к питанию, у SERVEN — к земле.

Тактирование

Частота PLL задаётся тремя коэффициентами:

fPLL=fвх⋅MN⋅12ODf_\text{PLL} = f_\text{вх} \cdot \frac{M}{N} \cdot \frac{1}{2^{OD}}

Руководство ограничивает промежуточные частоты: fвх / N — от 4 до 20 МГц, fвх · M / N — от 120 до 200 МГц, выход — от 15 до 200 МГц. От кварца 8 МГц при N = 1, M = 25 и OD = 1 получается 8 · 25 = 200 МГц и на выходе 100 МГц. Флеш-память читается примерно за 30 нс, поэтому с ростом частоты нужны такты ожидания в поле LAT регистра CTRL:

Частота ядра, не больше30 МГц60 МГц90 МГц100 МГц
Тактов ожидания0123

После сброса LAT = 1, так что перед переходом выше 60 МГц его нужно увеличить.

Загрузка и защита

Загрузочная флеш-память (область NVR) хранит собственный загрузчик пользователя — под него отведены первые 3 КБ — и конфигурационное слово CFGWORD по смещению C00h. Его биты выбирают, откуда стартовать (BMODEDIS: 1 — из основной памяти, так по умолчанию), запрещают запись основной и загрузочной памяти (FLASHWE, NVRWE), отладку (DEBUGEN) и выводы JTAG/SWD (JTAGEN). Если отладка запрещена, микросхему возвращают к жизни сервисным стиранием через вывод SERVEN — порядок описан в вопросах ниже.

Errata

В errata от 2 июля 2021 года три ошибки. При снижении питания во время работы от PLL микроконтроллер может зависнуть при сбросе — НИИЭТ рекомендует подключить RESET# к супервизору питания. Цифровой компаратор АЦП в многократном режиме выдаёт прерывание только при первом срабатывании, а режимы удержания ШИМ — циклический и одиночный — не различаются; оба режима errata советует не использовать. Подключение к шине CAN описано в разделе «CAN», а другие отечественные микроконтроллеры — в разделе «Отечественные микроконтроллеры», например К1986ВЕ92 Миландра. Чем управляют блоки ШИМ и квадратурный декодер, рассказывает раздел «Двигатели».

Частые вопросы

Какой зарубежный аналог у К1921ВК035?

НИИЭТ называет функциональным аналогом LM4F132 семейства Stellaris компании Texas Instruments. Функциональный — значит близкий по возможностям, а не взаимозаменяемый: у К1921ВК035 свой корпус МК 5162.48-1, свои выводы и регистры периферии.

Как настроить PLL К1921ВК035 на 100 МГц?

Частота PLL равна f_in · M / N / 2^OD при ограничениях из руководства: f_in / N — от 4 до 20 МГц, f_in · M / N — от 120 до 200 МГц. От кварца 8 МГц подходит N = 1, M = 25, OD = 1: промежуточная частота 200 МГц, на выходе 100 МГц. Перед переключением на 100 МГц флеш-памяти нужно три такта ожидания.

Как разблокировать К1921ВК035, если отладка запрещена?

Сервисным стиранием: подтянуть вывод SERVEN к 3,3 В во время сброса — тогда чтение флеш-памяти запрещается, а биты DEBUGEN и JTAGEN игнорируются, — и по SWD или JTAG записать 1 в регистр SERVCTL блока SIU. Стираются и основная, и загрузочная флеш-память; конец стирания показывает флаг DONE.

Выдерживают ли выводы К1921ВК035 5 В?

Нет. По руководству высокий уровень на входе — не выше напряжения питания цифровой части, а оно от 3,0 до 3,6 В. Подавать напряжение на выводы при выключенном питании тоже нельзя.

Источники

  1. АО «НИИЭТ». Микросхема интегральная 1921ВК035. Руководство пользователя, 2020 — разд. 2.1 — состав: 32-разрядное ядро с FPU одинарной точности, MPU, JTAG и SWD, флеш 64 КБ и загрузочная 4 КБ, кэш команд и данных по 1 КБ, ОЗУ 16 КБ, DMA, порты A и B по 16 разрядов, четырёхканальный 12-разрядный АЦП с цифровыми компараторами, три блока ШИМ, QEP, три блока захвата, четыре 32-разрядных таймера, два UART, CAN 2.0B, I²C, SPI; табл. 2.1 — выводы; разд. 2.2 — питание 3,3 В ± 0,3 В, ток портов 6 мА и суммарно не больше 50 мА, ток потребления не больше 150 мА при 100 МГц, нормы при −60, 25 и 125 °C; разд. 4.2 — PLL; табл. 7.1 — такты ожидания флеш-памяти; табл. 7.2 — CFGWORD; разд. 7.3 — сервисное стирание; разд. 8 — 16 каналов DMA
  2. АО «НИИЭТ». ERRATA К1921ВК035, версия от 02.07.2021 — 1 — зависание при сбросе во время работы от PLL при снижении питания, обход — супервизор питания на RESET#; 2 — прерывания цифрового компаратора АЦП в многократном режиме приходят один раз; 3 — режимы удержания ШИМ CBC и OST не различаются
  3. АО «НИИЭТ». Страница продукта К1921ВК035 — тактовая частота 100 МГц, ОЗУ 16 КБ, флеш 64 КБ, питание 3,3 В ± 10 %, корпус МК5162.48-1 6×6 мм (QLCC, 48 выводов), производительность 125 DMIPS; функциональный аналог — LM4F132 семейства Stellaris (Texas Instruments)

Нашли ошибку?