Config Portd.2 = Output ' конфигурируем вывод 2 порта D на выход - подключаем к нему светодиод
Config Portd.4 = Output ' конфигурируем вывод 4 порта D на ВЫХОД - подключаем к нему светодиод
Config Portd.6 = Output ' конфигурируем вывод 6 порта D на ВЫХОД - подключаем к нему светодиод
Config Portb.0 = Output ' конфигурируем вывод 0 порта B на ВЫХОД - подключаем к нему светодиод
Config Portb.2 = Output ' конфигурируем вывод 2 порта B на ВЫХОД - подключаем к нему светодиод
' Для машин
Red 0 Alias Portd.2 ' присваиваем имя Red выводу 2 порта D
Yellow Alias Portd.4 ' присваиваем имя Yellow выводу 4 порта D
Green 0 Alias Portd.6 ' присваиваем имя Green выводу 6 порта D
' Для пешиходов
Red 1 Alias Portb.2 ' присваиваем имя Red 1 выводу 2 порта B
Green 1 Alias Portb.0 ' присваиваем имя Green 1 выводу 0 порта B
Do 'начало цикла программы
' Зажигаем красный для машин и зелёный для пешиходов на 3 секунды
Red 0 = 1 'устанавливаем на ножке порта лог 1 - светодиод горит
Green 1 = 1 'устанавливаем на ножке порта лог 1 - светодиод горит
Waitms 3000 'задержка в миллисекундах 3000мс = 3 секунды
' Зажигаем жёлтый на 3 секунды
Yellow = 1 'устанавливаем на ножке порта лог 1 - светодиод горит
Waitms 3000 'задержка в миллисекундах 3000мс = 3 секунды
' Моргаем зелёным для пешиходов 3 раза
Green 1 = 1 'устанавливаем на ножке порта лог 1 - светодиод горит
Waitms 500 'задержка в миллисекундах 500мс = 0.5 секунды
Green 1 = 0 'устанавливаем на ножке порта лог 0 - светодиод не горит
Waitms 500 'задержка в миллисекундах 500мс = 0.5 секунды
Green 1 = 1 'устанавливаем на ножке порта лог 1 - светодиод горит
Waitms 500 'задержка в миллисекундах 500мс = 0.5 секунды
Green 1 = 0 'устанавливаем на ножке порта лог 0 - светодиод не горит
Waitms 500 'задержка в миллисекундах 500мс = 0.5 секунды
Green 1 = 1 'устанавливаем на ножке порта лог 1 - светодиод горит
Waitms 500 'задержка в миллисекундах 500мс = 0.5 секунды
Green 1 = 0 'устанавливаем на ножке порта лог 0 - светодиод не горит
Waitms 500 'задержка в миллисекундах 500мс = 0.5 секунды
Green 1 = 1 'устанавливаем на ножке порта лог 1 - светодиод горит
Waitms 500 'задержка в миллисекундах 500мс = 0.5 секунды
Green 1 = 0 'устанавливаем на ножке порта лог 0 - светодиод не горит
' Гасим красный и жёлтый для машин. Зажигаем зелёный для машин. Гасим зелёный для пешиходов и зажигаем для них красный.
Red 0 = 0 'устанавливаем на ножке порта лог 0 - светодиод не горит
Yellow = 0 'устанавливаем на ножке порта лог 0 - светодиод не горит 'задержка в миллисекундах 3000мс = 3 секунды
Green 0 = 1 'устанавливаем на ножке порта лог 1 - светодиод горит
Green 1 = 0 'устанавливаем на ножке порта лог 0 - светодиод не горит
Red 1 = 1 'устанавливаем на ножке порта лог 1 - светодиод горит
Waitms 3000 'задержка в миллисекундах 3000мс = 3 секунды
' Гасим зелёный для машин и зажигаем красный для пешиходов и жёлтый.
Green 0 = 0 'устанавливаем на ножке порта лог 0 - светодиод не горит
Yellow = 1 'устанавливаем на ножке порта лог 1 - светодиод горит
Red 1 = 1 'устанавливаем на ножке порта лог 1 - светодиод горит
Waitms 1000 'задержка в миллисекундах 1000мс = 1 секунда
' Гасим жёлтый и красный(для пешиходов)
Yellow = 0 'устанавливаем на ножке порта лог 0 - светодиод не горит
Red 1 = 0 'устанавливаем на ножке порта лог 0 - светодиод не горит
Waitms 500 'задержка в миллисекундах 500мс = 0.5 секунды
Loop
'И переходим к началу программы
End
Config Portb.0 = Output ' конфигурируем вывод 2 порта B на ВЫХОД - подключаем к нему светодиод
Config Pinc.2 = Input ' конфигурируем вывод 2 порта С на ВХОД - подключаем к нему кнопку
Led Alias Portb.0 ' присваиваем имя LED выводу 0 порта B
Button Alias Pinc.2 ' присваиваем имя Button выводу 2 порта С
Do ' начало цикла программы
If Button = 0 Then ' УСЛОВИЕ - если на 2-й ножке порта С низкий логический уровень то...
Led = 1 ' устанавливаем на ножке 0 порта В высокий логический уровень (светодиод горит)
Else ' в противном случае...
Led = 0 ' устанавливаем на ножке 0 порта В низкий логический уровень (светодиод не горит)
End If 'конец условия
Lcd "01.07.2012" ' пишем текст на 1 строку
Wait 1
Lowerline ' с помощью этой команды переключаемся на нижнюю строку
Lcd "coІepёcxeјy.pд" ' пишем текст на вторую строку
Вот еще один интересный код, при включении светодиод горит, если нажать кнопку то светодиод начнет мигать, чтобы остановить мигание светодиода, нужно нажимать и держать кнопку, если кнопку отпустить - светодиод будет мигать.
Code
$regfile = "m8def.dat"
$crystal = 1000000
Config Pinb.0 = Input
Config Pinc.0 = Output
Do
If Pinb.0 = 0 Then
Portc.0 = 1
Else
Pinc.0 = 1
Waitms 3
Pinc.0 = 0
Waitms 3
End If
Loop
End