Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Микроконтроллеры и их применение»

ясно... а вот такой вопрос - как мне вообще кол-во кнопок узнать ?

Отправлено DASM 30 июля 2009, г. 14:44
В ответ на: Ну так сделай глобальный энум. отправлено пользователем Oldring 30 июля 2009, г. 14:38


static KEY_INFO keys[];
...
Keyboard::KEY_INFO keys[] = {
{(1 << 4) | 6, 0, Keyboard::KEY_UP},
{(1 << 4) | 2, 0, Keyboard::KEY_DOWN},
{(1 << 4) | 3, 0, Keyboard::KEY_LEFT},
{(1 << 4) | 5, 0, Keyboard::KEY_RIGHT},
{(1 << 4) | 4, 0, Keyboard::KEY_ENTER},
{(0 << 4) | 7, 0, Keyboard::KEY_MONITOR},
{(0 << 4) | 6, 0, Keyboard::KEY_A},
{(0 << 4) | 5, 0, Keyboard::KEY_AUTO},
{(0 << 4) | 4, 0, Keyboard::KEY_B}
};
.... all OK
.....
void Keyboard::Execute(void)
{
for (int i = 0; i < sizeof(keys); i++)
{
if (keys[i].PinInfo & (1 << 4)) // PINE
{
if (PINE & (1 << keys[i].PinInfo & 0x0f)) // unpressed
keys[i].keyPressCounter = 0;
else keys[i].keyPressCounter++;
}
else // PINB
{
if (PINB & (1 << keys[i].PinInfo & 0x0f)) // unpressed
keys[i].keyPressCounter = 0;
else keys[i].keyPressCounter++;
}
}
}

not OK - "Error[Pe070]: incomplete type is not allowed D:\work\remote\Ver1_0\keyb.cpp 29
"


Составить ответ | Вернуться на конференцию.

Ответы


Отправка ответа
Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 

если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 63:

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru