кнопки обрабатываются в разных функциях, из-за особенности подключения кнопок.
Приведу пример обработки одной кнопки:
Код: Выделить всё
unsigned int button1(void)
{
unsigned int Bb1;
P3MDOUT = 0; //Настраиваем на вход
P3 = 0xFF;
DB4 = 1; //это одновременно шина данных ЛСД и кнопки. если в один порт поставить 1, то именно эта кнопка будет работать
DB5 = 0;
DB6 = 0;
DB7 = 0;
if (B0 == 1)
{Delay(10000); //проверка на дребезг
Delay(5000);
}
if (B0 == 1)
{currentButton1 = 1;}
if (lastButton1 == 0 && currentButton1 == 1)
{//LED2 = !LED2;
//LED1 = !LED1;
//LED3 = !LED3; //предположим что то делается тут.
//LED4 = !LED4;
Bb1 = 1;
//T = T-1;
}
else {Bb1 = 0;}
lastButton1 = currentButton1;
return Bb1;
}
Схема подключения кнопок: http://i023.radikal.ru/1111/b8/80306427b39b.jpg
B0 - это Р3.0 - c его помощью и проверяем нажата кнопка или нет
Заранее спасибо
ЗЫ я серьезно буду благодарен и без всякой иронии, поскольку Си для меня пока на 1/10 (а может и 4/100) понятен