Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МК2 МПУ.docx
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
4.11 Mб
Скачать

13. Семисегментный индикатор. Семисегментные коды. Понятие динамической индикации.

Самый простой способ отображения информации – светодиоды. Подаем напряжение U через токоограничительное сопротивление R. Через диод HL начинает течь ток и появляется свечение определенной длительности волны (в зависимости от типа светодиода).

Семисегментные индикаторы состоят из 7 светодиодов и одного дополнительного потому как у нас есть 8 байт, (A B C D E F G дополнительный H), где H точка.

Принцип написания семисегментного кода

Так как будут отображаться десятичные цифры (от 0 до 9) то необходимо создать блок данных DB7 в котором мы запишем все константы.

Пример: Р ассмотрим цифру 4.

Запишем код в виде H G F E D C B A ( H=0 так как точка не понадобится.)

01100110 переведем полученный код в шестнадцатеричную систему.

Используя полубайты (0110-6) и (0110-6).

Соответственно:

4: КН0066, так расписываются все цифры.

Динамическая индикация (ди)

Схема индикатора с общим катодом

Существуют индикаторы с общим катодом или анодом. При соединении между собой нескольких индикаторов получается многозначный индикатор. Здесь используется принцип динамической индикации. При ДИ под семисегментный код выделяется только 1 байт, на который выставляется код зажигаемой цифры и подается сигнал «1» на общую катодную точку того индикатора, где должна появиться данная цифра. Цифры на несколько индикаторов выводятся поочередно, но так быстро, чтобы человеческий глаз не замечал поочередности зажиганий.

Для получения изображения на многосегментном индикаторе необходимо:

  1. Определить для каждого индикатора семисегментный код.

  2. Указать позицию для каждого индикатора.

  3. Подать сигнал на общую катодную (анодную) точку, того индикатора на котором должно появится изображение.

14. Команды условного и безусловного (абсолютного) перехода (вызова блоков).

Команды абсолютного перевода в блок SPA FBn

При выполнении данной команды тело основной программы прерывается и происходит переход в указанный блок (FBn). По данному блоку один раз происходит выполнение программы и по команде BE осуществляется возврат из этого блока в тело основной программы на следующую команду (после которой вышли).

Команды условного вызова spb

Переход в указанный блок по данной команде произойдет только в том случае, если VKE=1, т.е. если выполняется условие перехода в данный блок. Эти условия необходимо распологать перед командой SPB. Если переход произошел то программа вернется в точку выхода (на следующую команду). Если прехода не происходит то выполняется следующая команда.

Перейти в FB1, если Е0.1 или Е0.2=0

ON E0.1

ON E0.2

SPB FB1

Если число положительное, то перейти в FB3.

L MW2

L KF0

>F

SPB FB3

15. Команды сдвига

Команды сдвига работают только в FB и с информацией, которая находится в AKKU1.

Различают:

а) Простой сдвиг. При простом сдвиге информация в AKKU1 сдвигается влево или вправо на указанное кол-во бил, а освобожденные биты заполняются нулями.

SLWn – сдвиг влево (на n бит)

SRWn – сдвиг вправо (на n бит)

Пример:

До сдвига.

7

6

5

4

3

2

1

0

0

1

1

0

0

1

0

1

После простого сдвига в лево на 3 бита.

7

6

5

4

3

2

1

0

0

0

1

0

1

0

0

0

б)Циклический сдвиг. При циклическом сдвиге информация в AKKU1переносится влево или вправо по кругу.

Пример:

До сдвига.

7

6

5

4

3

2

1

0

0

1

1

0

0

1

0

1

После циклического сдвига в лево на 3 бита.

7

6

5

4

3

2

1

0

0

0

1

0

1

0

1

1

в) Сдвиг вправо со знаком. Информация в AKKU1 сдвигается вправо на указанное количество бит, а освободившиеся слева биты заполняются нулями при положительном числе и единицами при отрицательном.

Пример:

До сдвига.

7

6

5

4

3

2

1

0

0

1

1

0

0

1

0

1

После сдвига вправо со знаком на 3 бита.

7

6

5

4

3

2

1

0

0

0

0

0

1

1

0

0

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]