уровень 2 · практика
Секундомер
Соберите секундомер: кнопка СТАРТ запускает счёт с нуля, кнопка СТОП его останавливает и оставляет результат на экране. Левый индикатор показывает секунды, правый — десятые доли.
Чем управляете
| Выводы | Что это |
|---|---|
| D2 … D8 | Сегменты a, b, c, d, e, f, g — общая шина на оба индикатора. |
| D9 | Разряд HG1 — секунды. Пока HIGH, на сегментах его цифра. |
| D10 | Разряд HG2 — десятые доли. |
| D11 / D12 | Кнопки СТАРТ и СТОП — это ВХОДЫ. |
Сегменты общие, поэтому разряды зажигают по очереди — это называется динамической индикацией. Глаз не успевает заметить перебор, и кажется, что горят обе цифры сразу.
Что проверяется
- Старт с нуля. После нажатия СТАРТ на индикаторах 0.0.
- Счёт идёт вперёд: меняются десятые, из них набегают секунды.
- Стоп замораживает результат — и не гасит его.
- Повторный старт сбрасывает прежний результат, а не продолжает его.
Подсказка
Время считает ваша программа: раз в 100 мс прибавляйте единицу к счётчику десятых. Секунды — это счётчик / 10, десятые — счётчик % 10. Выводить цифру нужно постоянно, а не один раз: между прибавлениями успевайте перебрать оба разряда.