Предмет: Информатика, автор: artemgensh789

5. Напишите программу, в которой по нажатию кнопки на семисегментном индикаторе выводится цифра 1, а если кнопка не нажата – то цифра 0.

Ответы

Автор ответа: obunga13
1

Ответ:

Конечно! Вот пример программы на языке Python которая моделирует такую ситуацию:

```python

import RPi.GPIO as GPIO

# Установка режима нумерации пинов

GPIO.setmode(GPIO.BOARD)

# Определение пина для кнопки и семисегментного индикатора

BUTTON_PIN = 11

SEGMENT_INDICATOR_PINS = [12 13 15 16 18 22 23]

# Настройка пина для кнопки на вход с подтяжкой

GPIO.setup(BUTTON_PIN GPIO.IN pull_up_down=GPIO.PUD_UP)

# Настройка пинов семисегментного индикатора на выход

for pin in SEGMENT_INDICATOR_PINS:

GPIO.setup(pin GPIO.OUT)

def display_digit(digit):

# Сброс состояния всех сегментов

for pin in SEGMENT_INDICATOR_PINS:

GPIO.output(pin GPIO.LOW)

# Включение сегментов для отображения цифры

if digit == 0:

# Включить сегменты A B C D E F

segments = [0 1 1 1 1 1 1]

elif digit == 1:

# Включить сегменты B C

segments = [1 0 0 0 0 0 0]

else:

# Включить сегменты A B C D E F G (отображение цифры 1)

segments = [1 1 1 0 0 1 1]

# Установка состояния сегментов

for i pin in enumerate(SEGMENT_INDICATOR_PINS):

GPIO.output(pin segments[i])

try:

while True:

if GPIO.input(BUTTON_PIN) == GPIO.LOW:

# Кнопка нажата

display_digit(1)

else:

# Кнопка не нажата

display_digit(0)

finally:

# Очистка пинов перед выходом

GPIO.cleanup()

```

Примечание: Для запуска этой программы вам потребуется установить библиотеку RPi.GPIO и подключить Raspberry Pi к семисегментному индикатору и кнопке согласно указанным пинам.

Похожие вопросы
Предмет: Геометрия, автор: Аноним