Энциклопедия Технологий и Методик
|
|
Световые и звуковые спецэффекты |
|
Устройство имитации работы светофора
Устройство имитации работы светофора реализовано на микроконтроллере PIC16F84A. Схема включения микроконтроллера (МК) стандартная, в качестве кварцевого резонатора используется резонатор на 32768 Гц, используемый в часах.
Datasheet микроконтроллера PIC16F84A
Светодиоды подключаются к выводам RB1..RB6 через токоограничительные резисторы 500 - 200 Ом: Вместо светодиодов можно использовать любые другие лампы, но для этого надо на выходы микроконтроллера поставить транзисторные ключи или иные согласующие устройства (оптореле, оптроны и т.д.)
1 светофор |
2 светофор |
RB1 – красный (К1)
RB2 – желтый (Ж1)
RB3 – зеленый (З1) |
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-файл (комментарии не повторяются)
Немного по программе:
1. Включение красного на первом и зеленого на втором осуществляется с помощью копирования в PortB константы 01000010.
Подпрограмма Pause_1 служить для задержки на время примерно 10 сек состояния выводов PortB.
2. Для «моргания» зеленого используется подпрограмма Z_1 включающая в себя две подпрограммы задержки с применением бит ориентированных команд (bcf PortB,6, bsf PortB,6): 1) зеленый погашен 2) зеленый включен.
Далее все аналогично.
Автор: А. Каплий, Украина
Источник: http://cxem.net
http://patlah.ru
© "Энциклопедия Технологий и Методик" Патлах В.В. 1993-2007 гг.
|