Устройство имитации работы светофора на микроконтроллере PIC16F84A

Устройство имитации работы светофора на микроконтроллере PIC16F84A

Устройство имитации работы светофора реализовано на микроконтроллере PIC16F84A. Схема включения микроконтроллера (МК) стандартная, в качестве кварцевого резонатора используется резонатор на 32768 Гц, используемый в часах.

Datasheet микроконтроллера PIC16F84A

Светодиоды подключаются к выводам RB1..RB6 через токоограничительные резисторы 500 - 200 Ом: Вместо светодиодов можно использовать любые другие лампы, но для этого надо на выходы микроконтроллера поставить транзисторные ключи или иные согласующие устройства (оптореле, оптроны и т.д.)

1 светофор
RB1 - красный (К1)
RB2 - желтый (Ж1)
RB3 - зеленый (З1)
2 светофор
RB4 - красный (К2)
RB5 - желтый (Ж2)
RB6 - зеленый (З2)

Пример составления программы для имитации работы светофора: Для составления программы необходимо составить блок-схему работы.

  • К1 = 1, З2 = 1
    включить красный на первом светофоре, зеленый на втором, остальные отключены
  • К1 = 1, З2 = 0,1,0,1,0,1,0,1,0,1
    красный на первом светофоре продолжает гореть, зеленый на втором моргает 5 раз, остальные отключены
  • К1 = 1, Ж1 = 1, Ж2 = 1
    красный на первом продолжает гореть, включается желтый на первом и втором светофорах, остальные отключены
  • К2 = 1, З1 = 1
    включить красный на втором и зеленый на первом светофорах, остальные отключены
  • К2 = 1, З1=0,1,0,1,0,1,0,1,0,1
    красный на втором светофоре продолжает гореть, зеленый на первом моргает 5 раз, остальные отключены
  • К2 = 1, Ж2 = 1, Ж1 = 1
    красный на втором продолжает гореть, включается желтый на втором и первом светофорах, остальные отключены
  • Текст программы с комментариями на ассемблере и HEX-файл (комментарии не повторяются)

    Немного по программе:

  • включение красного на первом и зеленого на втором осуществляется с помощью копирования в PortB константы 01000010.
    Подпрограмма Pause_1 служить для задержки на время примерно 10 сек состояния выводов PortB.
  • Для "моргания" зеленого используется подпрограмма Z_1 включающая в себя две подпрограммы задержки с применением бит ориентированных команд (bcf PortB,6, bsf PortB,6): 1) зеленый погашен 2) зеленый включен.
    Далее все аналогично.
  • Автор: А. Каплий, Украина, Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript ; Публикация:






    Рекомендуемый контент




    Copyright © 2010-2020 housea.ru. Контакты: info@housea.ru При использовании материалов веб-сайта Домашнее Радио, гиперссылка на источник обязательна.