Создайте программу, которая эмулирует функционирование светофора на железной дороге, где две красные лампочки мигают

Создайте программу, которая эмулирует функционирование светофора на железной дороге, где две красные лампочки мигают поочередно. Лампочки подключены к портам 10.
Летучий_Мыш

Летучий_Мыш

Для создания программы, эмулирующей функционирование светофора, можно использовать язык программирования, такой как Python. Этот язык широко используется и отлично подходит для таких задач. Давайте разработаем программу пошагово:

1. Сначала, нам необходимо импортировать библиотеку или модуль, который позволит нам управлять портами и устанавливать состояние лампочек. Для этого мы можем использовать модуль RPi.GPIO. Вот как это можно сделать:


import RPi.GPIO as GPIO


2. Теперь, нам нужно определить, какие порты будут использоваться для подключения к лампочкам светофора. Предположим, что первая красная лампочка будет подключена к порту 17, а вторая красная лампочка - к порту 18. Мы также должны настроить порты в режим вывода:


red_light_1_pin = 17
red_light_2_pin = 18

GPIO.setmode(GPIO.BCM)
GPIO.setup(red_light_1_pin, GPIO.OUT)
GPIO.setup(red_light_2_pin, GPIO.OUT)


3. Теперь, мы можем создать бесконечный цикл, в котором будем переключать состояние лампочек между включенным и выключенным с определенными интервалами времени. Для этого можно использовать функцию `GPIO.output()`, чтобы установить состояние порта в нужное значение. Вот как это можно сделать:


while True:
GPIO.output(red_light_1_pin, GPIO.HIGH) # Включить первую лампочку
GPIO.output(red_light_2_pin, GPIO.LOW) # Выключить вторую лампочку
time.sleep(1) # Подождать 1 секунду

GPIO.output(red_light_1_pin, GPIO.LOW) # Выключить первую лампочку
GPIO.output(red_light_2_pin, GPIO.HIGH) # Включить вторую лампочку
time.sleep(1) # Подождать 1 секунду


4. Не забудьте импортировать модуль `time` в начале программы:


import time


5. Наконец, для безопасного выхода из программы, когда вы закончите использование светофора, добавьте следующий код в конце программы:


GPIO.cleanup()


Этот код сбрасывает состояние всех портов GPIO и восстанавливает их в исходное состояние.

Полный код программы выглядит следующим образом:


import RPi.GPIO as GPIO
import time

red_light_1_pin = 17
red_light_2_pin = 18

GPIO.setmode(GPIO.BCM)
GPIO.setup(red_light_1_pin, GPIO.OUT)
GPIO.setup(red_light_2_pin, GPIO.OUT)

while True:
GPIO.output(red_light_1_pin, GPIO.HIGH) # Включить первую лампочку
GPIO.output(red_light_2_pin, GPIO.LOW) # Выключить вторую лампочку
time.sleep(1) # Подождать 1 секунду

GPIO.output(red_light_1_pin, GPIO.LOW) # Выключить первую лампочку
GPIO.output(red_light_2_pin, GPIO.HIGH) # Включить вторую лампочку
time.sleep(1) # Подождать 1 секунду

GPIO.cleanup()


Эта программа создаст эмуляцию работы светофора, где две красные лампочки будут мигать поочередно с интервалом по 1 секунде. Примечание: для запуска этой программы на Raspberry Pi вам потребуется правильно подключенный светодиод или лампочка к указанным портам.

Надеюсь, что эта информация полезна для вас. Удачи!
Знаешь ответ?
Задать вопрос
Привет!
hello