ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Среда
27 ноября
95125 Топик полностью
rezident (25.07.2007 03:42, просмотров: 1) ответил Dany на Все получилось. Добавил ожидание отпускания клавиши, и изменил частоту опроса. опрос раз в 30 мс.
Не нужно ждать отпускания, нужно просто XORить два соседних скана. Типа такого <c> scanNew=funcScanCode(); //получаем новый скан матрицы кнопок if ((scanNew^scanOld)==0) //состояния совпадают, значит дребезга нет и можно обрабатывать { if ((scanNew^stateKbd)!=0) //есть изменения в состоянии кнопок? { //ага, есть. проверяем что за изменения //проверяем конкретную кнопку, либо в цикле все кнопки. как вам захочется if (((scanNew^stateKbd)&MASK_KEY1)!=0) //кнопка KEY1 изменила свое состояние на нажатое? { //обрабатываем, формируем код для KEY1 } } stateKbd=scanNew; } scanOld=scanNew; </c> Ну и по образцу и подобию