Клавиатура
Библиотека: | Ввод/вывод |
Введён в: | 2.2.0 |
Внешний вид: |
Поведение
Этот компонент позволяет схеме считывать символы с клавиатуры, если только они представимы в 7-разрядном ASCII коде. После нажатия на компонент с помощью Инструмента Нажатие, пользователь может печатать символы, которые накапливаются в буфере. ASCII значение крайнего левого символа буфера постоянно поступает на крайний правый выход. Когда срабатывает тактовый вход, крайний левый символ исчезает из буфера и новый левый символ поступает на крайний правый выход.
Поддерживаемые для буфера символы включают все печатаемые ASCII символы, а также пробел, символ перехода на новую строку, Backspace и Control-L. В дополнение, клавиши стрелка влево и стрелка вправо перемещают курсор внутри буфера и клавиша Delete удаляет символ справа от курсора (если он есть).
Компонент асинхронен в том смысле, что когда буфер пуст, и пользователь печатает символ, то символ посылается на выход немедленно, не дожидаясь импульса на тактовом входе.
Контакты
- Западный край, отмечен треугольником (вход, разрядность равна 1)
- Тактовый вход - когда срабатывает при ненулевом значении контакта разрешения чтения, крайний левый символ буфера удаляется, и выходы обновляются чтобы отразить новое состоянию буфера.
- Южный край, левый контакт (вход, разрядность равна 1)
- Разрешение чтения - когда значение равно 1 (или плавающее, или ошибка), срабатывание тактового входа считает левый символ из буфера. Тактовый вход игнорируется, когда значение входа Разрешение чтения - 0.
- Южный край, второй контакт слева (вход, разрядность равна 1)
- Очистка - когда значение равно 1, буфер очищается и больше не принимает символов.
- Южный край, второй контакт справа (выход, разрядность равна 1)
- Наличие - значение равно 1, когда буфер содержит хотя бы один символ, и 0, когда буфер пуст.
- Южный край, правый контакт (выход, разрядность равна 7)
- Данные - 7-битный ASCII код для левого символа в буфере, или 0, если буфер пуст.
Атрибуты
- Длина буфера
- Количество символов, которые буфер может одновременно хранить.
- Срабатывание
- Если значение -
Передний фронт
, то когда значение тактового входа изменяется с 0 на 1, то левый символ считывается (если разрешено входом Разрешение чтения). Если же значение -Задний фронт
, то это происходит, когда значение тактового входа меняется с 1 на 0.
Поведение Инструмента Нажатие
Нажатие кнопки мыши на компоненте даёт ему фокус ввода клавиатуры, и отображается вертикальный курсор.
Каждый введённый символ будет помещаться в буфер, пока буфер не достиг предела вместимости, и если символ - один из поддерживаемых компонентом: печатаемые символы ASCII кода, а также пробел, символ перехода на новую строку, Backspace и Control-L. В дополнение, пользователь может нажимать клавиши стрелка влево и стрелка вправо чтобы переместить курсор внутри буфера и клавишу Delete для удаления символ справа от курсора (если он есть).
Поведение Инструмента Текст
Нет.