ТАВРОФОРУМ

Вернуться   ТавроФорум > Не автомобильные темы > Решение бытовых проблем > Компьютеры

Компьютеры Уголок для решения бытовых компьютерных проблем.

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 30.10.2013, 16:49   #15
Said
 
Said
 
Адрес: Днiпро
Возраст: 47
Сообщений: 1,677
Машина: 1102 1,1л. 93г.в., СПИРТ+МПСЗv1+БК2.5S+ЭБН
Длина: 8740мкм
Диаметр: 31мм
Отправить сообщение для Said с помощью ICQ
По умолчанию

Но в таком виде код не пройдет компиляцию, ибо ошибок тьма.
И, если GetEncoder разовая функция, то ее нет смысла оформлять отдельной процедурой.
В остальном направление мысли верно.
Ну вот как-то так:

#define com1 0b00001011
#define com2 0b00001010
#define com3 0b00001110
#define com4 0b00000000
#define com6 0b00001000
#define com7 0b00001001


char GetEncoder(void)
{
if (PORTB==com1) PORTD=0b00000001;
else if PORTB==com2 PORTD=0b00000010;
else if (PORTB==com3) PORTD=0b00000100;
else if (PORTB==com4) PORTD=0b00001000;
else if (PORTB==com6) PORTD=0b00100000;
else if (PORTB==com7) PORTD=0b01000000;
else return 2;
return 0;
}

int main(void) // главная рутина
{
//.........какой-то код............

while (GetEncoder()==0) _delay_ms(100);
//или
//while (GetEncoder()>0) _delay_ms(100);
//зависит от желаемого результата

//.........какой-то код............
}
__________________

Последний раз редактировалось Said; 30.10.2013 в 17:21.
Said вне форума   Ответить с цитированием
 


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 17:17. Часовой пояс GMT +3.


Перевод: zCarot Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.