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

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

Я бы сделал так: (Как сделать, чтобы форматирование сохранялось?)

Отправлено leon 12 февраля 2008 г. 12:54
В ответ на: Если я правильно понял, необходимо постоянно вызывать функцию с параметром зависящим от измеренного значения? отправлено leon 12 февраля 2008 г. 11:39

//Команды
#define VOL_up 0b10011101011000100010100011010111 //VOL+
#define VOL_down 0b10011101011000101010100001010111 //VOL-
#define SRC 0b10011101011000101100100000110111 //SRC
#define FORWARD 0b10011101011000100101000010101111 //F
#define REVERCE 0b10011101011000101101000000101111 //R
#define ATT 0b10011101011000100110100010010111 //ATT
#define FM_up 0b10011101011000101011000001001111 //FM+
#define AM_down 0b10011101011000100011000011001111 //AM-
#define AUD 0b10011101011000101110100000010111 //AUD
#define PAUSE 0b10011101011000100111000010001111 //PAUSE

flash unsigned long KeyTab[10] =
{
VOL_up
,VOL_down
,SRC
,FORWARD
,REVERCE
,ATT
,FM_up
,AM_down
,AUD
,PAUSE
};

flash unsigned int AdcTab[10] =
{
20
,40
,100
,200
,250
,400
,500
,600
,800
,950
};

void QQQ2(void)
{
unsigned int key_res;
unsigned char in_key = 2;
unsigned char N;

while (1) {
key_res = read_adc(in_key);
for (N = 10; --N >= 0; )
#if 0
// Если необходимо попасть в значение
if (abs(AdcTab[N] - key_res) <= 3) {
PRESS_KEY(KeyTab[N]);
break;
}
#else
// Если необходимо попасть в диапазон между значениями
if (key_res >= AdcTab[N]) {
PRESS_KEY(KeyTab[N]);
break;
}
#endif
}
}



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

Ответы


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

Сообщение:

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

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

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

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