у меня есть дисплей, есть клавиатура, и есть некое устройство с n кол-вом плат. Мне надо написать систему управления данным устройством ( CAN интерфейс ), скажем так, на данном этапе я освоил сам интерфейс (уже связал 2 платы, разобрался с идентификаторами, данными), написал свой API для работы с дисплеем, с CAN шиной, с клавиатуров. Интересует следующее -
у меня есть функция, которая возвращает в глобальную переменную код символа нажатой клавиши, или код отсутсвия нажатия.
У меня есть таймер, который каждую 1мс генерирует прерывание, в теле этого прекрывания я вызываю эту функцию т.е. каждую 1 мс я переписываю содержимое кода клавиши. Какой вид всё это будет иметь?
я вижу это примерно так:
Код: Выделить всё
unsigned char key=0xff; // глобальная переменная с кодом клавишы 0xff - отсутсвие нажатия клавишы
interrup timer
{
code_keys(); // здесь я вызываю функцию сканирования клавиатуры
}
int main()
{
initialization(); // допусти тут инициализация всякой перефирии итп
// отсюда я начинаю выводить на дисплей меню и соответвенно обрабатывать нажатия клавиш
// как я это представляю себе
while(1)
{
switch(key)
{
case 1:
// вызов менюшки 1 - графика + новые реакции на нажатия клавиш - т.е. аналогичная данной конструкции, т.е. while содержит // такой же switch итж
break
case 2:
// вызов менюшки 2
break;
key=0xff; // по идее я должен обнулять здесь нажатие клавиши и точно так же должен его обнулять при каждом вызове функции // сканирвоания клавишы...
}
}
}


