1, Апаратна архітектура: багатомодульні драйвери та синхронізація сигналу
Дисплей із кількома блоками сегментованого РК-дисплея базується на апаратному рівні багатокомпонентного COM (загального кінця) та мульти SEG (сегментного кінця). Візьмемо як приклад 4-цифровий РК-сегментний кодовий екран, який зазвичай містить 4 COM-порти та кілька портів SEG всередині, причому кожна комбінація COM-SEG відповідає одиниці відображення (наприклад, цифрі або символу одиниці). Наприклад, певна модель екрана сегментного коду передає 4 цифрові біти через 4 COM-порти, використовуючи додаткові порти SEG для керування відображенням символів одиниць (В/А/Гц).
Основні апаратні параметри:
Обов'язок: Визначити кількість COM-портів. Наприклад, 1/4 Duty означає, що 4 COM-порти керуються поперемінно, причому кожен порт має робочий цикл 25%, що підходить для 4-значного дисплея.
BIAS (коефіцієнт зміщення): впливає на контрастність і напругу керування. 1/3 BIAS означає, що напруга керування становить 1/3 робочої напруги, що може зменшити споживання енергії та покращити стабільність відображення.
Стабільність напруги: молекули рідких кристалів повинні керуватися сигналами змінного струму, а зміщення постійного струму може спричинити розмитість дисплея. Наприклад, у певному проекті використовується мікроконтролер STM32F103C8T6 для генерації точних прямокутних сигналів змінного струму через таймер, забезпечуючи стабільну різницю напруги 3,3 В і запобігаючи старінню молекул рідкого кристала.
Типові сценарії застосування:
Обладнання для моніторингу потужності: воно має одночасно відображати такі параметри, як напруга (В), струм (А) і потужність (Вт). Певний інтелектуальний лічильник використовує екран 8-бітного сегментного коду, який синхронно відображає 4 набори чисел (наприклад, 220 В, 5,6 A) і 3 одиничні символи через 8 COM-портів і 32 SEG-порти.
Медичний монітор: під час відображення таких параметрів, як частота серцевих скорочень (ударів на хвилину) і вміст кисню в крові (SpO2%), різні типи даних потрібно розрізняти через кілька COM-портів. Наприклад, певна модель монітора має конструкцію 1/8 Duty, яка підтримує незалежне керування 8 цифрами та 4 одиничними символами.
2, Логіка драйвера: динамічне сканування та відображення даних
Багатокомпонентне відображення сегментного коду LCD має бути досягнуте за допомогою динамічного сканування. Основна логіка полягає у повторному використанні COM-портів із-розподілом часу, швидкому перемиканні відображуваного вмісту та використанні ефекту стійкості людського візуального сприйняття для формування стабільних зображень. Конкретні кроки такі:
Відображення даних: перетворюйте числа та символи одиниць, які мають відображатися, у дані коду сегмента. Наприклад, сегментний код для числа «8» — 0x7F (відповідає повністю освітленим сегментам a-g), а сегментний код для одиниці «V» — 0x01 (тільки освітлений сегмент a).
Динамічне сканування: активуйте COM-порти за фіксований цикл (наприклад, 1 мс) і надсилайте відповідні дані SEG. Наприклад, на 4-значному дисплеї COM1-COM4 активується по черзі, щоразу оновлюючи лише номер і одиницю, що відповідають поточному COM-порту.
Контроль контрастності: оптимізуйте продуктивність дисплея, регулюючи напругу або робочий цикл. Наприклад, у сильно освітленому середовищі певний проект відкоригував BIAS з 1/3 до 1/4, збільшив контраст до 1500:1 і забезпечив чіткість і розрізнення символів одиниць.
3, Програмування програмного забезпечення: керування кількома завданнями та оновлення даних
Програмна реалізація багатоблокового дисплея має вирішувати дві основні проблеми:-дані в реальному часі та синхронізацію дисплея. Нижче наведено ключові стратегії оптимізації.
Сканування, кероване перериванням: використання переривань за таймером для досягнення періодичного сканування та уникнення блокування основної програми. Наприклад, проект встановлює переривання таймера на 1 мс, яке кожного разу оновлює дані для одного COM-порту та завершує повне оновлення екрана за 4 мс.
Механізм подвійної буферизації: використовується два буфери відображення (передній/фоновий), буфер переднього плану використовується для поточного відображення, а буфер фонового – для оновлення даних. Після завершення оновлення перемкніть буфер через прапорець, щоб уникнути мерехтіння, викликаного мутаціями даних під час процесу сканування.
Динамічне перемикання символів одиниць: динамічне завантаження символів одиниць залежно від типів параметрів. Наприклад, у сценаріях вимірювання частоти, коли вхідний сигнал виявляється як меандр, одиниця автоматично перемикається з «V» на «Hz».
Корпус: інтелектуальний частотомір
Проект заснований на мікросхемах драйверів STM32F103 і HT1621 для вимірювання та відображення частоти прямокутних хвиль. Процес програмного забезпечення виглядає наступним чином:
Вимірювання частоти: Використовуйте таймер, щоб зафіксувати передній фронт вхідного сигналу, обчислити період і перетворити його на значення частоти.
Декомпозиція даних: розкладіть значення частоти на тисячі, сотні, десятки та одиниці цифр.
Оцінка одиниці: якщо частота перевищує 1 кГц, на дисплеї відображатиметься «кГц»; В іншому випадку відобразіть «Hz».
Оновлення дисплея: надішліть числові дані та код сегмента одиниць на HT1621 через інтерфейс SPI та синхронно оновлюйте 4-значний РК-дисплей.
4, Стратегія оптимізації: покращення якості та надійності дисплея
Конструкція захисту від перешкод: у сильному електромагнітному середовищі (наприклад, промислові об’єкти) екрановані дроти використовуються для з’єднання РК-дисплея та мікроконтролера, а на кінці джерела живлення додається фільтрація магнітних кульок для зменшення шумових перешкод.
Компенсація за низьку температуру: при -20 градусах зниження активності молекул рідкого кристала може призвести до зменшення контрастності. Проблему можна вирішити шляхом збільшення напруги керування (наприклад, з 3,3 В до 3,6 В) або додавання логіки попереднього нагріву (відображення з низьким контрастом під час запуску та поступове повернення до нормальних значень).
Оптимізація за низьким енергоспоживанням: у пристроях, що живляться від акумулятора, використовується стратегія динамічного регулювання частоти сканування. Наприклад, коли немає жодної операції, зменшення частоти сканування з 1 кГц до 100 Гц зменшує споживання електроенергії на 90%, зберігаючи при цьому вміст дисплея через апаратні схеми утримування.