клава, светодиоды и 1 мин таймер
Добавлено: Пт мар 11, 2011 21:17:57
Задача- сделать устройство для брейг ринга
дано
2 админские клавиши СТАРТ и ДОП. ВРЕМЯ
4 командные клавиши- с них и принимаются сигнлы
8+2 светодиода
8=4+4 4 означают ответ комманы, 4 других фальшстарт
2= админский начало и время комманд вышло
кварц- 10 мгц
язык- баском
Мега 8
пока-что есть только это
таймеры 1 мин и 3х доп время по 20 сек...
прошу помочь с проблеммой. хотя-бы кодом таймеров и обработкой клавиш во время работы таймера
! вспомнил! после нажатия 1 из кнопок ответчиков- другие надо игрнорировать .КАК?
дано
2 админские клавиши СТАРТ и ДОП. ВРЕМЯ
4 командные клавиши- с них и принимаются сигнлы
8+2 светодиода
8=4+4 4 означают ответ комманы, 4 других фальшстарт
2= админский начало и время комманд вышло
кварц- 10 мгц
язык- баском
Мега 8
пока-что есть только это
Код: Выделить всё
$regfile = "m8def.dat"
$crystal = 10000000
Config Portc = Output
Config Portd.0 = Input
Config Portd.1 = Input
Config Portd.2 = Input
Config Portd.3 = Input
Config Portb.0 = Input
Config Portb.1 = Input
Config Portb.2 = Output
Config Portb.3 = Output
Portc = 0
Portb.2 = 0
Portb.3 = 0
Enable Interrupts
On Int0 Stopbutton
Dim A Is Byte
A = 0
Do
If Portb.0 = 1 Then A = A + 1
If A = 1 Then Do
If Portd.0 = 1 Then Do
Portc.0 = 1
Config Portd.1 = Output
Config Portd.2 = Output
Config Portd.3 = Output
Portd.3 = 0
Portd.2 = 0
Portd.1 = 0
End
End If
If Portd.1 = 1 Then Do
Portc.1 = 1
Config Portd.0 = Output
Config Portd.2 = Output
Config Portd.3 = Output
Portd.3 = 0
Portd.2 = 0
Portd.0 = 0
End
End If
If Portd.2 = 1 Then Do
Portc.2 = 1
Config Portd.0 = Output
Config Portd.1 = Output
Config Portd.3 = Output
Portd.3 = 0
Portd.0 = 0
Portd.1 = 0
End
End If
If Portd.3 = 1 Then Do
Portc.3 = 1
Config Portd.1 = Output
Config Portd.2 = Output
Config Portd.0 = Output
Portd.0 = 0
Portd.2 = 0
Portd.1 = 0
End
end IF
End If
If A = 0 Then Do
If Portd.0 = 1 Then Do
Portc.4 = 1
Config Portd.1 = Output
Config Portd.2 = Output
Config Portd.3 = Output
Portd.3 = 0
Portd.2 = 0
Portd.1 = 0
End
End If
If Portd.1 = 1 Then Do
Portc.5 = 1
Config Portd.0 = Output
Config Portd.2 = Output
Config Portd.3 = Output
Portd.3 = 0
Portd.2 = 0
Portd.0 = 0
End
End If
If Portd.2 = 1 Then Do
Portb.4 = 1
Config Portd.0 = Output
Config Portd.1 = Output
Config Portd.3 = Output
Portd.3 = 0
Portd.0 = 0
Portd.1 = 0
End
End If
If Portd.3 = 1 Then Do
Portb.5 = 1
Config Portd.1 = Output
Config Portd.2 = Output
Config Portd.0 = Output
Portd.0 = 0
Portd.2 = 0
Portd.1 = 0
End
End If
End If
End If
End
прошу помочь с проблеммой. хотя-бы кодом таймеров и обработкой клавиш во время работы таймера
! вспомнил! после нажатия 1 из кнопок ответчиков- другие надо игрнорировать .КАК?