Устройства индикации
Драйвер семисегментных индикаторов MAX7219/MAX7221.
Микросхемы MAX7219 и MAX7221 предназначенs для управления 8-ю семисегментными светодиодными индикаторами, либо светоизлучающими матрицами 8х8 с общим катодом. В микросхеме реализован принцип динамической индикации. Управление работой производится по трехпроводной последовательной шине. Модель MAX7221 совместима со стандартами SPI™, QSPI™, и Microwire™. Областью применения данных микросхем является построение многоразрядных индикаторов, шкальных индикаторов, графических дисплеев, управление светодиодными матрицами.
Электрические характеристики.
Напряжение питания 4.0 – 5.5В
Минимальный потребляемый ток без индикации 150мкА
Частота обновления дисплея 500-1300Гц
Ток одного сегмента индикатора 30-45мА
Управление микросхемой.
Типовая схема включения
Для загрузки данных в микросхему используется последовательный пакет длиной 16 бит. Младшие 8 бит являются информационными, следующие 4 задают номер регистра микросхемы, старшие 4 не используются. Первым передается старший бит.
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
Не используется |
Регистр |
Данные |
Адреса регистров
Регистр |
Адрес |
HEX CODE |
||||
D15-D12 |
D11 |
D10 |
D9 |
D8 |
||
Нет операции |
х |
0 |
0 |
0 |
0 |
X0 |
Индикатор 0 |
х |
0 |
0 |
0 |
1 |
X1 |
Индикатор 1 |
х |
0 |
0 |
1 |
0 |
X2 |
Индикатор 2 |
х |
0 |
0 |
1 |
1 |
X3 |
Индикатор 3 |
х |
0 |
1 |
0 |
0 |
X4 |
Индикатор 4 |
х |
0 |
1 |
0 |
1 |
X5 |
Индикатор 5 |
х |
0 |
1 |
1 |
0 |
X6 |
Индикатор 6 |
х |
0 |
1 |
1 |
1 |
X7 |
Индикатор 7 |
х |
1 |
0 |
0 |
0 |
X8 |
Режим декодирования |
х |
1 |
0 |
0 |
1 |
X9 |
Интенсивность |
х |
1 |
0 |
1 |
0 |
XA |
Рабочие индикаторы |
х |
1 |
0 |
1 |
1 |
XB |
Гашение |
х |
1 |
1 |
0 |
0 |
XC |
Тест индикаторов |
х |
1 |
1 |
1 |
11 |
XF |
Режим декодирования
Микросхема MAX7219 может работать в двух режимах – декодирования BCD кода или непосредственной установки каждого сегмента. Имеется возможность установки режима для отдельных индикаторов. Делается это с помощью регистра режима декодировании. При записи в этот регистр, каждый разряд отвечает за отдельный семисегментный индикатор (одну цифру). Если в регистр записаны все 0, тогда декодирование не производится. Некоторые возможные варианты данных, для записи в регистр декодирования приведены в таблице.
Режим декодирования |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
HEX CODE |
Нет декодирования |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
00 |
Декодирование в индикаторах 0-3. |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0F |
Декодирование во всех индикаторах |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
FF |
Интенсивность свечения.
MAX7219/7221 позволяет задавать интенсивность свечения индикаторов, путем изменения скважности импульсов, реализующих режим динамической индикации. Для этого в соответствующий регистр заносится нужное значение. Для записи используются только 4 младших бита данных.
Соотношение цикла |
D4-D7 |
D3 |
D2 |
D1 |
D0 |
HEX CODE |
|
MAX7219 |
MAX7221 |
||||||
1/32 |
1/16 |
x |
0 |
0 |
0 |
0 |
X0 |
3/32 |
2/16 |
x |
0 |
0 |
0 |
1 |
X1 |
5/32 |
3/16 |
x |
0 |
0 |
1 |
0 |
|
7/32 |
4/16 |
x |
0 |
0 |
1 |
1 |
X3 |
9/32 |
5/16 |
x |
0 |
1 |
0 |
0 |
X4 |
11/32 |
6/16 |
x |
0 |
1 |
0 |
1 |
X5 |
13/32 |
7/16 |
x |
0 |
1 |
1 |
0 |
X6 |
15/32 |
8/16 |
x |
0 |
1 |
1 |
1 |
X7 |
19/32 |
9/16 |
x |
1 |
0 |
0 |
0 |
X8 |
17/32 |
10/16 |
x |
1 |
0 |
0 |
1 |
X9 |
21/32 |
11/16 |
x |
1 |
0 |
1 |
0 |
XA |
23/32 |
12/16 |
x |
1 |
0 |
1 |
1 |
XB |
25/32 |
13/16 |
x |
1 |
1 |
0 |
0 |
XC |
27/32 |
14/16 |
x |
1 |
1 |
0 |
1 |
XD |
29/32 |
15/16 |
x |
1 |
1 |
1 |
0 |
XE |
31/32 |
15/16 |
x |
1 |
1 |
1 |
1 |
XF |
Использование индикаторов
При работе микросхемы MAX7219 и MAX7221 позволяют использовать не все 8 индикаторов, а только необходимое количество. При этом отсчет начинается с 0 индикатора. Для задания используется 3 младших байта данных.
Индикатор |
D3-D7 |
D2 |
D1 |
D0 |
HEX CODE |
0 |
x |
0 |
0 |
0 |
X0 |
0,1 |
x |
0 |
0 |
1 |
X1 |
0,1,2 |
x |
0 |
1 |
0 |
X2 |
0,1,2,3 |
x |
0 |
1 |
1 |
X3 |
0,1,2,3,4 |
x |
1 |
0 |
0 |
X4 |
0,1,2,3,4,5 |
x |
1 |
0 |
1 |
X5 |
0,1,2,3,4,5,6 |
x |
1 |
1 |
0 |
X6 |
0,1,2,3,4,5,6,7 |
x |
1 |
1 |
1 |
X7 |
Тест дисплея
При записи в регистр теста единицы в младший разряд, микросхема включает все индикаторы. Это позволяет проверить работоспособность схемы и LED индикаторов.
Каскадирование индикаторов
Микросхемы MAX7219/7221 допускают каскадное включение. При этом информация передается последовательно из микросхемы в микросхему. Для целей недопущения искажения индикации, может быть использован регистр – Нет операции. При его задействовании микросхемы не производят никаких действий с индикаторами.
Выбор резистора Rset.
Для задания тока через отдельный сегмент, используется вход ISET, к которому подключается резистор Rset. Выбрать номинал резистора в кОм можно по таблице:
Ток через сегмент (мА) |
Напряжение питания индикатора (В) |
||||
1.5 |
2.0 |
2.5 |
3.0 |
3.5 |
|
40 |
12.2 |
11.8 |
11.0 |
10.6 |
9.69 |
30 |
17.8 |
17.1 |
15.8 |
15.0 |
14.0 |
20 |
29.8 |
28.0 |
25.9 |
24.5 |
22.6 |
10 |
66.7 |
63.7 |
59.3 |
55.4 |
51.2 |