Съдържание:
- Стъпка 1: Предистория
- Стъпка 2: GreenPAK Design
- Стъпка 3: Генериране на цифров сигнал
- Стъпка 4: Сегментиране на генериране на сигнал
- Стъпка 5: Конфигуриране на ASM
- Стъпка 6: Тестване
Видео: DIY 4xN LED драйвер: 6 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:51
LED дисплеите са широко използвани в системи, вариращи от цифрови часовници, броячи, таймери, електронни измервателни уреди, основни калкулатори и други електронни устройства, способни да показват цифрова информация. Фигура 1 изобразява пример за 7-сегментен LED дисплей, който може да показва десетични числа и знаци. Тъй като всеки сегмент на LED дисплея може да се управлява индивидуално, този контрол може да изисква много сигнали, особено за многоцифрени. Тази инструкция описва реализация, базирана на GreenPAK ™, за да управлява множество цифри с 2-жичен I2C интерфейс от MCU.
По -долу описахме необходимите стъпки, за да разберете как чипът GreenPAK е програмиран за създаване на 4xN LED драйвер. Ако обаче просто искате да получите резултат от програмирането, изтеглете софтуера GreenPAK, за да видите вече завършения файл за проектиране GreenPAK. Включете комплекта за разработка на GreenPAK към вашия компютър и натиснете програма, за да създадете персонализирана интегрална схема за драйвера за 4xN LED.
Стъпка 1: Предистория
LED дисплеите са разделени в две категории: Общ анод и Общ катод. В обща анодна конфигурация, анодните клеми са вътрешно късо съединени заедно, както е показано на фигура 2. За да се включи светодиода, общият аноден терминал е свързан към захранващото напрежение на системата VDD, а катодните клеми са свързани към земята чрез ограничители на тока.
Конфигурацията на общ катод е подобна на конфигурация на общ анод, с изключение на това, че катодните клеми са късо съединени, както е показано на фигура 3. За да включите общия катоден светодиоден дисплей, общите катодни клеми са свързани към земята и анодните клеми са свързани към системата захранващо напрежение VDD през ограничаващи тока резистори.
N-цифрен мултиплексиран LED дисплей може да бъде получен чрез свързване на N отделни 7-сегментни LED дисплея. Фигура 4 изобразява пример за 4x7 LED дисплей, получен чрез комбиниране на 4 отделни 7 -сегментни дисплея в обща анодна конфигурация.
Както се вижда на Фигура 4, всяка цифра има общ аноден щифт / задна платка, която може да се използва за индивидуално активиране на всяка цифра. Катодните щифтове за всеки сегмент (A, B, … G, DP) трябва да бъдат късо съединени външно. За да конфигурира този 4x7 LED дисплей, потребителят изисква само 12 пина (4 общи пина за всяка цифра и 8-сегментни пина), за да контролира всички 32 сегмента на мултиплексирания 4x7 дисплей.
Дизайнът GreenPAK, подробно описан по -долу, показва как се генерират управляващите сигнали за този LED дисплей. Този дизайн може да бъде разширен, за да контролира до 4 цифри и 16 сегмента. Моля, вижте раздела Референции за връзка към дизайнерските файлове на GreenPAK, достъпни на уебсайта на Dialog.
Стъпка 2: GreenPAK Design
Дизайнът GreenPAK, показан на Фигура 5, включва генериране на сегмент и генериране на цифров сигнал в един дизайн. Сигналите за сегменти се генерират от ASM, а сигналите за избор на цифри се създават от веригата DFF. Сегментните сигнали са свързани към сегментните щифтове чрез ограничители на тока, но сигналите за избор на цифри са свързани към общите щифтове на дисплея.
Стъпка 3: Генериране на цифров сигнал
Както е описано в раздел 4, всяка цифра на мултиплексиран дисплей има индивидуална задна платка. В GreenPAK сигналите за всяка цифра се генерират от вътрешната верига DFF, управлявана от осцилатор.
Тези сигнали управляват общите щифтове на дисплея. Фигура 6 показва сигналите за избор на цифри.
Канал 1 (жълт) - Пин 6 (цифра 1)
Канал 2 (зелен) - Пин 3 (цифра 2)
Канал 3 (син) - щифт 4 (цифра 3)
Канал 4 (пурпурен) - щифт 5 (цифра 4)
Стъпка 4: Сегментиране на генериране на сигнал
GreenPAK ASM генерира различни модели за управление на сегментните сигнали. Брояч от 7,5 ms циклично преминава през ASM състоянията. Тъй като ASM е чувствителен към нивото, този дизайн използва система за управление, която избягва възможността за бързо превключване през множество състояния по време на високия период от часовника 7,5 ms. Това специфично изпълнение разчита на последователни ASM състояния, контролирани от обърнати полярности на часовника. И сегментните, и цифровите сигнали се генерират от един и същ 25kHz вътрешен осцилатор.
Стъпка 5: Конфигуриране на ASM
Фигура 7 описва диаграмата на състоянието на ASM. Състояние 0 автоматично преминава в състояние 1. Подобно превключване се случва от състояние 2 в състояние 3, състояние 4 в състояние 5 и състояние 6 в състояние 7. Данните от състояние 0, състояние 2, състояние 4 и състояние 6 се фиксират незабавно с помощта DFF 1, DFF 2 и DFF 7, както е показано на фигура 5, преди ASM да премине към следващото състояние. Тези DFF блокират данните от четните състояния на ASM, което позволява на потребителя да контролира разширен дисплей 4x11/4xN (N до 16 сегмента), използвайки ASM на GreenPAK.
Всяка цифра на 4xN дисплей се управлява от две състояния на ASM. Състояние 0/1, Състояние 2/3, Състояние 4/5 и Състояние 6/7 съответно контролират цифра 1, цифра 2, цифра 3 и цифра 4. Таблица 1 описва състоянията на ASM заедно със съответните им адреси на RAM, за да контролират всеки цифра.
Всяко състояние на ASM RAM съхранява един байт данни. Така че, за да конфигурирате 4x7 дисплей, три сегмента от цифра 1 се контролират от състояние 0 на ASM и пет сегмента от цифра 1 се контролират от състояние 1 от ASM. В резултат на това всички сегменти от всяка цифра на LED дисплея се получават чрез конкатенация на сегментите от съответните им две състояния. Таблица 2 описва местоположението на всеки от сегментите на цифра 1 в RAM на ASM. По подобен начин състоянието на ASM 2 до състояние 7 съответно включва местоположението на сегментите от цифра 2 до цифра 4.
Както се вижда от Таблица 2, сегменти OUT 3 до OUT 7 от състояние 0 и OUT 0 до OUT 2 сегменти от състояние 1 са неизползвани. Дизайнът GreenPAK на Фигура 5 може да контролира 4x11 дисплей чрез конфигуриране на OUT 0 до OUT 2 сегменти на всички нечетни състояния на ASM. Този дизайн може да бъде допълнително разширен, за да контролира разширен 4xN (N до 16 сегмента) дисплей, като използва повече DFF логически клетки и GPIO.
Стъпка 6: Тестване
Фигура 8 показва схемата на теста, използвана за показване на десетични числа на 4x7-сегментния LED дисплей. Arduino Uno се използва за I2C комуникация с ASM RAM регистрите на GreenPAK. За повече информация относно I2C комуникацията, моля, вижте [6]. Общите анодни щифтове на дисплея са свързани към GPIO за избор на цифри. Сегментните щифтове са свързани към ASM чрез ограничители на тока. Ограничаването на тока на резистора е обратно пропорционално на яркостта на LED дисплея. Потребителят може да избере силата на ограничаващите тока резистори в зависимост от максималния среден ток на GreenPAK GPIO и максималния постоянен ток на LED дисплея.
Таблица 3 описва десетични числа от 0 до 9 както в двоичен, така и в шестнадесетичен формат, които да се показват на дисплея 4x7. 0 показва, че сегментът е ВКЛЮЧЕН, а 1 показва, че сегментът е ИЗКЛЮЧЕН. Както е показано в таблица 3, са необходими два байта, за да се покаже число на дисплея. Чрез корелация на Таблица 1, Таблица 2 и Таблица 3, потребителят може да модифицира RAM регистрите на ASM, за да показва различни числа на екрана.
Таблица 4 описва командната структура I2C за цифра 1 на 4x7 LED дисплея. Командите I2C изискват начален бит, контролен байт, адрес на думата, байт с данни и стоп бит. Подобни I2C команди могат да бъдат написани за цифра 2, цифра 3 и цифра 4.
Например, за да напишете 1234 на 4x7 LED дисплея, се записват следните I2C команди.
[0x50 0xD0 0xF9 0xFF]
[0x50 0xD2 0xFC 0xA7]
[0x50 0xD4 0xF8 0xB7]
[0x50 0xD6 0xF9 0x9F]
Чрез многократно записване на всичките осем байта на ASM, потребителят може да променя показания шаблон. Като пример, код за брояч е включен в ZIP файла на бележката за кандидатстване на уебсайта на Dialog.
Изводи
Решението GreenPAK, описано в тази инструкция, позволява на потребителя да сведе до минимум разходите, броя на компонентите, пространството на платката и консумацията на енергия.
В повечето случаи MCU имат ограничен брой GPIO, така че разтоварването на LED управляващите GPIOs към малка и евтина GreenPAK IC позволява на потребителя да запазва IO за допълнителни функционалности.
Освен това интегралните схеми на GreenPAK са лесни за тестване. ASM RAM може да бъде променен с едно щракване на няколко бутона в софтуера за проектиране на GreenPAK, което показва гъвкави модификации на дизайна. Чрез конфигуриране на ASM, както е описано в тази инструкция, потребителят може да контролира четири N-сегментни LED дисплея с до 16 сегмента всеки.
Препоръчано:
Boomstick - Анимиран LED драйвер: 10 стъпки
Boomstick - Анимиран LED драйвер: Boomstick е проект за създаване на анимиран низ от програмируеми RGB светодиоди, захранван от малък Arduino и реагиращ на музика. Това ръководство се фокусира върху една хардуерна конфигурация, която можете да сглобите, за да стартирате софтуера Boomstick. Този ч
ATTiny84 базиран 3A стъпка надолу LED драйвер: 7 стъпки (със снимки)
ATTiny84 базиран 3A стъпка надолу LED драйвер: Ако искате да захранвате 10W LED, можете да използвате този 3A LED драйвер. С 3 Cree XPL светодиода можете да постигнете 3000 лумена
Arduino и TLC5940 PWM LED драйвер IC: 7 стъпки
Arduino и TLC5940 PWM LED драйвер IC: В тази статия ще разгледаме IC-драйвера на 16-каналния LED драйвер на Texas Instruments TLC5940. Нашата причина да направим това е да демонстрираме друг, по -лесен начин за управление на много светодиоди - а също и серво. Първо, ето няколко примера за TLC5940
Прост DIY индукционен нагревател с ZVS драйвер: 3 стъпки
Прост DIY индукционен нагревател с ZVS драйвер: Здравейте. В тази инструкция ще ви покажа как да направите Прост DIY индукционен нагревател, базиран на популярния драйвер ZVS (превключване на нулево напрежение)
1 Watt RGB LED драйвер за Ardiuno: 3 стъпки
RGB LED драйвер с мощност 1 Watt за Ardiuno: RGB LED е авансов тип светодиод, който може да произвежда повече цветове от обикновените моноцветни светодиоди. Единичен 3 -милиметров монохромен може лесно да се управлява от ardiuno с помощта на резистор (100 -220 ома за оптимална яркост), но 1 ватов светодиод или RGB светодиод не може да задвижва, тъй като