- Ключові елементи TFT-дисплея
- Сучасні види інтерфейсів графічних TFT-дисплеїв
- Мікроконтролери STM32 як основа пристроїв з графічними дисплеями
- Мікроконтролери на базі Cortex-M0 / M0 +
- Мікроконтролери на базі Cortex-M3
- Мікроконтролери на базі Cortex-M4
- Мікроконтролери на базі Cortex-M7
- STM32H7
Продовжуємо серію статей «STM32 + периферія = LOVE», розпочату в кінці минулого року.
Найпростіші TFT-дисплеї можна підключати до мікроконтролерів STMicroelectronics уже молодшої лінійки - STM32L0 . А такі вбудовані в вироби старших лінійок спеціалізовані модулі як прискорювач графіки Chrom-ART в STM32F429 / STM32F439 , Повноцінний TFT-контролер в STM32L4R7x / STM32L4R9x і вбудований апаратний модуль JPEG для прискорення кодування / декодування в STM32F7x7 / STM32F7x9 надають розробникам додатків з візуалізацією інформації досить широкі можливості.
При розробці сучасних споживчих, торгових і промислових пристроїв розробники все частіше стикаються із завданням графічного відображення інформації. Це стосується і різних панелей управління, і портативних пристроїв, і бортових комп'ютерів, і всіляких лічильників.
Ще не так давно для більшості завдань було цілком достатньо використовувати у вбудованих пристроях сегментні або знакосінтезірующіе дисплеї. Однак в результаті швидкого розвитку споживчої електроніки, а також завдяки здешевленню технології виробництва з кожним роком зростає попит на графічні дисплеї (TFT, AMOLED, IPS). Збільшуються діагоналі екранів, приділяється велика увага якості інтерфейсу - його плавності, зручності, швидкості відгуку.
Інтернет речей (IoT) також має великий вплив на розвиток сучасних технологій, в тому числі - систем відображення інформації.
У статті ми торкнемося питання правильного підбору і використання мікроконтролерів для побудови пристроїв з графічним інтерфейсом, розглянемо різні варіанти підключення дисплеїв, їх плюси і мінуси, розберемо різні сімейства 32-бітових контролерів виробництва компанії STMicroelectronics, починаючи з бюджетних, і, спираючись на попередню статтю циклу - «TFT-дисплеї Winstar: новинки, характеристики і особливості підключення» , Наведемо варіанти їх використання спільно з дисплеями Winstar.
Ключові елементи TFT-дисплея
Перш ніж ми розглянемо інтерфейси, що використовуються в сучасних дисплейних модулях, давайте поглянемо на основні елементи дисплеїв (рисунок 1).
Мал. 1. Типова структура модуля дисплея
Головними складовими частинами TFT-панелі є:
- матриця пікселів;
- графічна RAM-пам'ять (GRAM) або фреймбуфер;
- контролер дисплея;
- контролер тимчасової розгортки (Timing controller);
- елементи підсвічування.
Фреймбуфер - оперативна пам'ять, призначена для зберігання даних про елементи зображення, яке необхідно виводити на дисплей. Величина використовуваної пам'яті безпосередньо залежить від дозволу матриці дисплея і глибини кольору (кількість біт на піксель). Необхідний обсяг графічної пам'яті в залежності від глибини кольору і дозволу дисплея дан в таблиці 1.
Таблиця 1. Розмір буфера екрана в залежності від глибини кольору і дозволу
Глибина кольору, bpp Роздільна здатність дисплея 320х240 480х272 640х480 800х480 1024х768 Розмір буфера, кбайт 8 75 127,5 300 375 768 16 150 255 600 750 1536 24 225 383 900 1125 2304 32 300 510 1200 1500 3072
У деяких випадках використовується подвійна буферизація (малюнок 2), при якій вміст одного з буферів передається на дисплей, в той час як у другому малюється нове зображення. Після завершення промальовування зображення в другому з буферів ролі міняються. Дана технологія використовується при промальовуванні складних зображень, що збільшує необхідний розмір графічної пам'яті вдвічі.

Мал. 2. Подвійна буферизація зображення
Основним завданням контролера дисплея є безперервне копіювання вмісту графічної пам'яті з частотою не менш 60 Гц для забезпечення відображення стабільної картинки без будь-яких артефактів. Найчастіше подібні контролери мають ряд додаткових функцій, таких як обертання зображення, масштабування, робота з декількома шарами зображення, бітмапами (малюнок 3) та інші.

Мал. 3. бітмапи - масив пікселів, що формують цифрове зображення
Залежно від того, чи знаходяться контролер дисплея і фреймбуфер всередині TFT-панелі або ж необхідно їх зовнішнє підключення, можна розглядати кілька типів дисплеїв, що мають на увазі різні типи підключення та вимоги до пропускної здатності при однакових дозволах і глибині кольору.
Сучасні види інтерфейсів графічних TFT-дисплеїв
В даний час для невеликих TFT-панелей (величиною до 9 дюймів включно) існує три основних типи інтерфейсів підключення:
- Display Pixel Interface (DPI), званий також паралельним інтерфейсом RGB, що працює у відеорежимі, в якому відбувається передача лише даних пікселів;
- Display Bus Interface (DBI), що працює в командному режимі, в якому поряд з даними пікселів відбувається передача команд. Набір команд дисплея (DCS) використовують такі інтерфейси:
- SPI / UART
- Motorola 6800
- Intel 8080
- Display Serial Interface (DSI) або ж MIPI DSI, що підтримує як командний, так і режим відео роботи з дисплеями.
Звичайно ж, варто згадати, що існують і більш продуктивні варіанти підключення дисплеїв, такі як: LVDS, eDP і подібні, але в основному вони застосовуються в панелях з великою діагоналлю і, відповідно, здатністю не нижче 1024 × 768 пікселів і не призначені для використання спільно з мікроконтролерами на базі ядер Cortex-M.
SPI - один з найвідоміших і широко використовуваних на даний момент інтерфейсів зв'язку між різними мікросхемами в електронних пристроях. Його основними перевагами є простота, мале необхідну кількість висновків (у багатьох випадках достатньо всього лише трьох), легкість реалізації друкованої плати при розробці пристрою (рисунок 4).

Мал. 4. Підключення дисплея по SPI-інтерфейсу
Ключовою відмінністю SPI від паралельних інтерфейсів є, то що він має всього одну лінію передачі даних, і швидкість передачі часто не перевищує 20 Мбіт / с, що серйозно обмежує пропускну здатність, а отже - і максимальний дозвіл керованого дисплея, і робить практично неможливим створення складних динамічних зображень. Крім того, управління дисплеєм відбувається за допомогою постійної пересилання команд і змушує ядро контролера виконувати безліч зайвих завдань, підвищуючи його завантаження і роблячи роботу з зображенням неефективним.
Даний інтерфейс ідеально підходить для управління недорогими TFT-панелями з невеликим дозволом (320 × 240), що мають вбудований контроллер дисплея і графічну пам'ять.
Motorola 6800 / Intel 8080. Як і в разі SPI, дані інтерфейси застосовуються з дисплейними модулями з вбудованим контролером і буфером екрану, що дозволяє уникнути використання зовнішнього ОЗУ і трохи знизити вартість розроблюваного устрою.
Основною відмінністю даних інтерфейсів є паралельна шина даних, яка значно збільшує пропускну здатність.
Інтерфейс 8080 заснований на чотирьох керуючих сигналах і паралельної шині даних шириною до 16 біт. Таблиця 2 описує дані сигнали.
Таблиця 2. Опис керуючих сигналів інтерфейсу 8080
LCD-сигнали Опис сигналу RS Вибір регістру LCD D0-D15 Дані D0-D15 CS Вибір мікросхеми RD Операція читання: активний низький WR Операція запису: активний низький
Інтерфейс 6800 дещо відрізняється від 8080, типові сигнали відображені в таблиці 3.
Таблиця 3. Опис сигналів інтерфейсу 6800
LCD-сигнали Опис сигналу RS Вибір регістру LCD D0-D15 Дані D0-D15 CS Вибір мікросхеми E Дозвіл читання / запису WR Операція читання / запису
Незважаючи на те, що сучасні зовнішні контролери, вбудовані в дисплейні модулі, мають непоганий набір графічних можливостей, таких як поворот зображення, дзеркальне відображення і вибір активної області, ядру основного мікроконтролера доводиться постійно передавати координати перед записом чергового значення кольору пікселя, виробляти різні розрахунки графічних фігур, пересилання розташованих в пам'яті (найчастіше Flash) бітмапами по потрібним координатами, а про накладення декількох шарів зображення один на одного краще навіть не замислюватися.
Основне призначення двох згаданих інтерфейсів - передача зображень на екрани з роздільною здатністю до 800х480 пікселів. Побудова сучасного динамічно відображуваного інтерфейсу з малим часом відгуку досить важко, все обмежується ступенем завантаження ядра і пропускною спроможністю шини.
Parallel RGB. Одним з широко поширених сучасних дисплейних інтерфейсів (для TFT-панелей) є паралельний інтерфейс RGB (малюнок 5). На відміну від розглянутих раніше прикладів, робота з даними інтерфейсом не має на увазі передачу будь-яких команд по шині: відбувається передача тільки корисних піксельних даних, що благотворно впливає на швидкість передачі інформації про значення пікселів на дисплей.

Мал. 5. Підключення дисплея по інтерфейсу Parallel RGB
В даному варіанті дисплейні модулі не містять графічної пам'яті і зовнішнього контролера, що здешевлює їх, зате необхідна передача кадрів з частотою 60 Гц.
Управління дисплеєм з даного інтерфейсу відбувається за допомогою наступних сигналів:
- тактового сигналу CLK;
- сигналу синхронізації лінії зображення HSYNC;
- сигналу синхронізації кадру зображення VSYNC;
- сигналу DE, який повідомляє про необхідність захоплення корисних даних (значень пікселів);
- даних пікселя RGB (до 24 ліній).
MIPI DSI. Display serial interface (DSI) - високошвидкісний послідовний протокол передачі даних, розроблений MIPI Aliance для взаємодії дисплейних модулів з хост-контролером. Застосовується головним чином в мобільних пристроях.
Даний інтерфейс має ряд переваг в порівнянні з розглянутими раніше:
- істотно знижуються вимоги до кількості висновків мікроконтролера - при однаковій з паралельним RGB-інтерфейсом пропускної здатності потрібно в кілька разів менше висновків (6 ... 8);
- зменшується складність при трасуванні друкованої плати за рахунок меншої кількості ліній;
- підтримується масштабованість, тобто можна змінити кількість ліній передачі згідно з вимогою до пропускної спроможності;
- знижується енергоспоживання.
Важливою відмінністю DSI є диференціальна передача даних, тобто при передачі даних і Тактирование паралельно передаються інверсні сигнали (рисунок 6).
Мал. 6. З'єднання дисплея по інтерфейсу DSI
Передача даних і команд в DSI виконується у вигляді посилки пакетів. Залежно від типу пакетів розрізняють два режими роботи:
- Command mode. Командний режим являє собою передачу команд і даних дисплейної модулю. Дисплей, що підтримує командний режим, містить контролер і фреймбуфер. DSI-хост побічно управляє активністю дисплея за допомогою відсилання команд і даних контролера дисплея.
- Video mode. У відеорежимі хост посилає потік значень пікселів в режимі реального часу. Дисплейний модуль очікує потоку даних зображення на прийнятній швидкості, що дозволяє уникнути видимих спотворень (малюнок 7).

Мал. 7. Приклад конфігурації PHY з двома лініями даних
Невід'ємною складовою DSI-хоста і дисплейного модуля є фізичний рівень D-PHY, що забезпечує високошвидкісний (HS) і малопотребляющій (LP) режими передачі даних (малюнок 8). Передача по інтерфейсу DSI може виконуватися як в прямому, так і зворотному напрямку. Можлива швидкість при передачі в режимі HS - до 1,5 Гбайт / с на кожній лінії, а в LP-режимі максимальна швидкість - 10 Мбайт / с.

Мал. 8. Рівні сигналів в режимах LP і HS
Всі передачі в зворотному напрямку відбуваються в режимі малого споживання, при цьому використовується лише одна лінія даних DATA0.
У командному режимі лінія DATA0 двунаправленная, в той час як у відеорежимі вона може бути як двобічної, так і односпрямованої. Всі інші лінії - односпрямовані і підтримують тільки HS-режим передачі.
Мікроконтролери STM32 як основа пристроїв з графічними дисплеями
Одним з провідних гравців на ринку мікроконтролерів (МК) в даний час є компанія STMicroelectronics. Номенклатура виробів компанії дозволяє розробникам проектувати будь-які пристрої: від малопотребляющіх на батарейках до надпродуктивних, здатних виконувати складні математичні розрахунки, прийом / передачу даних, відображати графічний інтерфейс. Як видно з малюнка 9, компанія пропонує 11 сімейств МК з ядрами від Cortex-M0 до Cortex-M7.
Мал. 9. Сімейства мікроконтролерів STM32
У нашому випадку найбільш цікаві саме графічні можливості контролерів ST. Розглянемо різні сімейства STM32 , Починаючи з молодших, з точки зору роботи з TFT-дисплеями.
Мікроконтролери на базі Cortex-M0 / M0 +
У даній групі знаходяться молодші бюджетні контролери від ST (таблиця 4):
- STM32F0 c частотами ядра до 48 МГц і продуктивністю 38 DMIPS;
- малопотребляющіе STM32L0 з частотами до 32 МГц і продуктивністю 26 DMIPS.
Обмежена продуктивність і відсутність спеціалізованих інтерфейсів для роботи з дисплеями не дозволяє повноцінно працювати з TFT-екранами. В даному випадку можна підключати SPI-дисплеї або програмно реалізовувати інтерфейси 6800/8080, що негативно позначиться на продуктивності.
Цілком припустимо використовувати мікроконтролери цієї групи для виведення нескладної інформації на графічні дисплеї з вбудованим TFT-контролером і дозволом не вище 320х240 пікселів.
Таблиця 4. Лінійки мікроконтролерів на базі Cortex-M0 / M0 +
Найменування Ядро Частота, МГц Flash, кбайт RAM, кбайт SPI STM32F0x0 Cortex-M0 48 16 ... 256 4 ... 32 + STM32F0x1 Cortex-M0 48 16 ... 256 4 ... 32 + STM32F0x2 Cortex-M0 48 16 ... 128 4 ... 16 + STM32F0x8 Cortex-M0 48 32 ... 256 4 ... 32 + STM32L0x1 Cortex-M0 + 48 192 20 + STM32L0x2 Cortex-M0 + 32 192 20 + STM32L0x3 Cortex-M0 + 32 192 20 +
Дана група контролерів може використовуватися, наприклад, з дисплеями M-серії, такими як WF35MTIBCDRN0 і WF57MTIBCDRN0 .
Мікроконтролери на базі Cortex-M3
До складу цієї групи входять три сімейства (таблиця 5):
- малопотребляющіе STM32L1 c частотою 32 МГц і продуктивністю 33 DMIPS;
- STM32F1 c параметрами 72 МГц і 61 DMIPS;
- STM32F2 cо 120 Мгц і 150 DMIPS.
Таблиця 5. Лінійки мікроконтролерів на базі Cortex-M3
Крім збільшеної продуктивності і розміру Flash- / RAM-пам'яті мікроконтролери даних родин мають вбудований FSMC-модуль для підключення зовнішніх мікросхем SRAM-пам'яті і модуль SDIO для підключення карт SD / MicroSD. Модуль SDIO може бути дуже корисний для організації зберігання бітмапами, шрифтів у зовнішній пам'яті і їх завантаження при необхідності.
Крім підключення зовнішньої SRAM-пам'яті модуль FSMC може використовуватися для підключення дисплеїв по інтерфейсів 6800/8080 (малюнки 10 і 11), що збільшує швидкість передачі графічних даних дисплейної модулю в порівнянні з SPI-інтерфейсом.
Мал. 10. Приклад підключення між FSMC і дисплеєм по інтерфейсу 8080, де NEx приймає значення NE1 ... NE4, а Ax - значення A0 ... A25
Мал. 11. Приклад підключення між FSMC і дисплеєм по інтерфейсу 6800, де NEx приймає значення NE1 ... NE4, а Ax - значення A0 ... A25
Мікроконтролери даної групи можуть використовуватися для управління дисплеями з вбудованим TFT-контролером по інтерфейсів SPI або 6800/8080. Як і у випадку з родинами на базі Cortex-M0 / M0 +, дані мікроконтролери не мають будь-яких прискорювачів графіки, і всі розрахунки, пов'язані з малюванням графічних фігур, лягають на плечі ядра, тому реалізувати складну динамічну графіку кілька проблемно. Рекомендовані дозволу для підключаються дисплеїв дані в таблиці 6.
Таблиця 6. Рекомендовані дозволу дисплеїв
Найменування Максимальна роздільна здатність дисплея STM32L1 320х240 STM32F1 480х272 STM32F2 800х480
Використовуючи дані мікроконтролери, можна підключати дисплеї Q Series, наприклад WF35QTIBCDBCA , WF43QTIBEDBC0 , WF70QTIFGDBT0 , І дисплеї P Series - WF35PTIBCDBT0 , WF43PTIBEDBTB , WF70PTIFGDBG0.
Мікроконтролери на базі Cortex-M4
До цієї групи входять чотири сімейства (таблиця 7):
- малопотребляющіе STM32L4 c частотою до 80 МГц і продуктивністю 100 DMIPS;
- малопотребляющіе STM32L4 + з частотою до 120 МГц і продуктивністю 150 DMIPS;
- STM32F3 з частотою до 72 МГц і продуктивністю 90 DMIPS;
- STM32F4 з частотою до 180 Мгц і продуктивністю 225 DMIPS.
Таблиця 7. Лінійки мікроконтролерів на базі Cortex-M4
Найменування Частота Flash, кбайт RAM, кбайт QSPI TFT Display Controller Chrome-ART Інтерфейс 8080/6800 MIPI-DSI STM32F302 72 32 ... 512 16 ... 64 + STM32F303 72 32 ... 512 16 ... 80 + STM32F398 72 512 80 + STM32F429 / 439 180 512 ... 2048 256 + + + STM32F469 / 479 180 512 ... 2048 384 + + + + + STM32L496 80 256 ... тисячі двадцять чотири 128 ... 320 + + + STM32L4R5xx 120 1024 ... 2048 640 + + + STM32L4R7xx 120 1024 ... 2048 640 + + + + STM32L4R9xx 120 1024 ... 2048 640 + + + + +
Мікроконтролери STM32L4 відрізняються дещо більшою продуктивністю і появою в лінійці STM32L496 вбудованого прискорювача графіки Chrome-ART.
Chrom-ART дозволяє значно знизити навантаження на ядро (при ефективному використанні - до декількох відсотків), одночасно пропонуючи широкі функціональні можливості:
- Виконання операцій накладання двох шарів з різнімі ступенями прозорості;
- заливку прямокутна областей Вибране кольори;
- Копіювання прямокутна областей з одночаснім перетворенням формату пікселів и накладення с урахуванням ступенів прозорості.
Завдяк вбудований в вироби Серії L496 прискорювач графіки можна сделать значний швідшою промальовування інтерфейсу, вікорістовуючі бітмапі, что зберігаються у Внутрішній або Зовнішній Flash-пам'яті. Вузька місцем при передачі Даних є інтерфейс 6800/8080, так як при відправці шкірного пікселя на дисплей ядру доводитися Виконувати невелика функцію з Flash-пам'яті. Рекомендоване максимальний дозвіл для контролерів STM32L496 - 800х480 пікселів при побудові інтерфейсу на базі бітмапами, для інших лінійок сімейства - 480х272.
сімейство мікроконтролерів STM32F3 є найменш продуктивним в даній групі. Завдяки вбудованому модулю FSMC можливе підключення дисплеїв по інтерфейсів 6800/8080. Рекомендована роздільна здатність підключаються дисплеїв - не вище 480х272 пікселів.
сімейство STM32F4 на ядрі Cortex-M4 є найпродуктивнішим. Дане сімейство має ряд нововведень, що дозволяють перейти на новий рівень якості відображуваного на дисплеях інтерфейсу.
Важливою особливістю є підтримка зовнішньої SDRAM-пам'яті в лінійках STM32F427 , STM32429 , STM32469 и STM32F446 . SDRAM значно дешевше статичної, підтримуваної молодшими микроконтроллерами від ST. Вона може застосовуватися в якості графічного буфера екрана при нестачі внутрішньої SRAM-пам'яті.
Ще одним нововведенням стала наявність вбудованого контролера дисплея в ряді лінійок STM32F4.
STM32F429 / STM32F439 - перші контролери сімейства STM32F4 з інтегрованим TFT-LCD-контролером і графічним прискорювачем Chrom-ART. Вбудований контролер дисплея дозволяє підключити панелі з дозволом до XGA (1024 × 768) і глибиною кольору до 24 біт.
Наступним кроком компанії STMicroelectronics стало впровадження в контролерах STM32F469 / 479 підтримки мобільних екранів з інтерфейсом MIPI-DSI. Даний інтерфейс покликаний зменшити кількість використовуваних висновків (рисунок 12), в той же час дозволяючи збільшити роздільність дисплея і зменшити енергоспоживання при управлінні дисплеєм. Вбудований DSI-хост підтримує екрани з 1-2 лініями передачі даних і роздільною здатністю 1024х768.
Мал. 12. Порівняння кількості висновків для різних інтерфейсів дисплеїв
Ще одним важливим нововведенням стала підтримка QSPI NOR Flash-пам'яті, що дозволяє використовувати зовнішню пам'ять з мінімальною кількістю висновків (до 6 при підключенні одного зовнішнього модуля пам'яті), але забезпечує при цьому високу пропускну здатність (до 90 МБ / с в режимі SDR, до 120 Мб / с в DDR-режимі). При одночасному використанні двох модулів пам'яті є можливість удвічі підняти максимально можливу швидкість читання.
Для швидкого освоєння можливостей мікроконтролерів STM32F4 є кілька налагоджувальних плат. Найпопулярнішою з них є STM32F429I-DISCOVERY (Рисунок 13). STM32F429I-DISCOVERY заснована на контролері STM32F429ZIT6 з 2 Мбайт Flash, 256 кбайт RAM, має дисплей 2,4 "QVGA TFT-LCD з сенсорним екраном, зовнішню пам'ять SDRAM 64 Мбіт. Серед плат з розширеними можливостями можна виділити STM32F469I-DISCOVERY, STM32429I-EVAL и STM32479I-EVAL .
Мал. 13. Отладочная плата 32F429IDISCOVERY
STM32L4 + . Цілком логічним кроком для STMicroelectronics стало впровадження в сімейство малопотребляющіх мікроконтролерів TFT-контролера, головною особливістю якого є знижене споживання при високій продуктивності.
Якщо в лінійці STM32L496 був присутній лише прискорювач графіки Chrom-ART, то в STM32L4R7x / STM32L4R9x вбудований вже повноцінний TFT-контролер і з'явилася можливість управляти дисплеями DSI з двома лініями даних і роздільною здатністю 1024х768.
Висока швидкість розвитку ринку споживчої електроніки, зокрема - портативних гаджетів, змушує виробників електроніки замислюватися про впровадження в вироби нових функцій. Так в новій лінійці МК компанія ST застосувала вбудований модуль Chrom-GRC, що дозволяє зменшити споживання пам'яті до 20% при використанні дисплеїв круглої форми, наприклад, в смарт-годинах (рисунок 14).

Мал. 14. Застосування модуля Chrom-GRC для роботи з модулями круглої форми
Ще одним нововведенням став інтерфейс OctoSPI, дозволяє використати зовнішню пам'ять з пропускною спроможністю, вдвічі більшою порівняно з QuadSPI.
Розробники легко можуть оцінити всі нововведення сімейства L4 + завдяки ряду доступних налагоджувальних плат і безлічі прикладів застосування. Хотілося б особливо виділити отладочную плату STM32L4R9I-DISCO з можливістю роботи з AMOLED-екраном дозволом 390х390 пікселів і ємнісним сенсором, Octo-SPI Flash 512 Мбіт, MEMS-мікрофоном, можливістю підключення додаткових плат розширення (рисунок 15).
Мал. 15. Отладочная плата 32L4R9IDISCOVERY
Спільно з мікроконтролерами даної групи з вбудованим TFT-контролером можна використовувати або дисплеї Q Series і P Series c інтерфейсами 8080, або, що більш переважно, стандартні TFT-дисплеї Winstar з RGB-інтерфейсом: WF43GTIAEDNG0, WF50BTIAGDNN0 и WF70HTIAGDNC0 .
Також можливе використання дисплея WF40BTYAQMNN0 з DSI-інтерфейсом спільно з контролерами STM32F469 / 479 и STM32L4R9xx .
Мікроконтролери на базі Cortex-M7
Наступною сходинкою в розвитку контролерів ST (в тому числі - для графічних застосувань) стала лінійка STM32F7 , Побудована на новому надсучасному ядрі ARM Cortex-M7 (рисунок 16). Контролери даної серії мають значно перероблену шинну архітектуру і практично вдвічі більшу пікову продуктивність в порівнянні з попередньою серією F4 (462 DMIPS при частоті 216 МГц проти максимальних 225 DMIPS при 180 МГц).
Мал. 16. Порівняння продуктивності STM32F4 з STM32F7
До того ж, крім збільшеного до 512 кбайт обсягу SRAM-пам'яті (включаючи 128 кбайт DTCM) інженери ST впровадили L1-кеш інструкцій / даних величиною 8 ... 32 кбайт. Саме завдяки наявності L1-кеша стало можливе виконання коду з зовнішньої пам'яті (SDRAM, QSPI NOR Flash) без втрати продуктивності, що надзвичайно важливо при розробці пристроїв з TFT-панелями, в яких потрібна висока швидкість читання з пам'яті. Широко використовуються при роботі з графічними бібліотеками бітмапи займають чималу кількість Flash-пам'яті, і тому застосування зовнішніх модулів пам'яті стає нагальним питанням.
У сімействі STM32F7, крім вбудованого контролера дисплея, присутнього в лінійках STM32F7x6 / STM32F7x9, в старших моделях STM32F7x7 / STM32F7x9 з'явився вбудований апаратний модуль JPEG для прискорення кодування / декодування, помітно знижує завантаженість ядра і дозволяє паралельно займатися іншими завданнями. Завдяки модулю розробники отримали цікаву можливість реалізації ефективного відтворення MJPEG-відео з вкрай низьким завантаженням ядра (рисунок 17).
Мал. 17. Реалізація MJPEG-відеоплеєра на базі контролера STM32F769
Варто відзначити, що у компанії ST вийшло зберегти, незважаючи на разючі відмінності в архітектурі, повиводную сумісність з контролерами попереднього сімейства F4, до того ж перехід на контролери F7 не складає труднощів завдяки практично повній сумісності скомпільованої коду і достатку доступних прикладів в бібліотеці CubeF7.
Відмінним варіантом для швидкого освоєння мікроконтролерів STM32F7 є отладочная плата STM32F746G-DISCO (Рисунок 18) на базі STM32F746NGH6 з ємнісним екраном 4,3 "роздільною здатністю 480 × 272. Плата має Quad-SPI Flash-пам'ять 128 Мбіт і 128 Мбіт SDRAM, порти Ethernet, USB OTG HS, USB OTG FS, MicroSD.
Мал. 18. Отладочная плату STM32F746G-DISCO
Крім.
STM32H7
Перехід на новий технологічний процес 40 нм дозволив компанії STMicroelectronics зробити черговий ривок вперед і представити нове сімейство мікроконтролерів - STM32H7 , Масове виробництво яких почалося вже на початку 2018 року. Увібравши все краще від попередніх поколінь, дана серія стала ще швидше, енергоефективніше, а набір доступною в одному кристалі периферії просто вражає.
Використовуючи всі переваги L1-кеша, мікроконтролери STM32H7 видають максимальну теоретичну продуктивність ядра Cortex-M7 незалежно від того, з зовнішньої пам'яті або з внутрішньої виповнюється код: 856 DMIPS при частоті ядра 400 МГц.
Значно підвищився обсяг вбудованої SRAM-пам'яті - до 1 Мбайт, що дає можливість в деяких випадках розмістити буфер TFT-екрану прямо у внутрішній пам'яті без необхідності використання зовнішньої SDRAM.
Абсолютно нова архітектура має три домену харчування і дозволяє оптимізувати енергоефективність, переводячи ту чи іншу групу периферії в режим зниженого споживання (рисунок 19).

Мал. 19. Три домену харчування в архітектурі контролерів STM32H7
Вбудовані апаратні прискорювачі і великий набір цифрової та аналогової периферії роблять контролери STM32H743 / 753 ідеальними для використання в промислових рішеннях, де ключовою вимогою є швидка реакція на події, або ж для пристроїв з HMI, де дуже важливі просунуті можливості графіки і підтримка відтворення аудіо / відео.
Варто відзначити, що серія STM32H7 pin-to-pin сумісна з серією STM32F7 для більшості корпусів (таблиця 8).
Компанія ST пропонує ряд налагоджувальних плат для ознайомлення з можливостями STM32H7, наприклад, STM32H743I-EVAL (Рисунок 20). Дана плата заснована на STM32H743XIH6 , Має 5,7 "640 × 480 ємнісний TFT-дисплей, 1 Гбіт Twin Quad-SPI NOR Flash, 32 Мбіт SDRAM, 16 Мбіт SRAM і 16 Мбіт NOR Flash, роз'єми Ethernet, USB і ряд додаткових особливостей.

Мал. 20. Отладочная плата STM32H743I-EVAL
Таблиця 8. Лінійки мікроконтролерів на базі Cortex-M7
Найменування Частота Flash, кбайт RAM, кбайт QSPI TFT Display Controller Chrome-ART Інтерфейс 8080/6800 MIPI-DSI JPEG codec STM32F7x6 216 512 ... 1024 320 + + + + STM32F7x7 216 1024 ... 2048 512 + + + + + STM32F7x8 / STM32F7x9 216 1024 ... 2048 512 + + + + + + STM32H743 400 1024 ... 2048 1024 + + + + + STM32H753 400 1024 ... 2048 1024 + + + + +
Спільно з мікроконтролерами даної групи можна використовувати ті ж дисплеї, що і з контролерами на базі ядер Cortex-M4, тобто - з паралельним RGB-інтерфÐ