Вт ноя 16, 2021 16:17:24
ее результат - не логическая константа
Вт ноя 16, 2021 16:20:34
while (PINB&(1 << PB4)){}
Вт ноя 16, 2021 16:36:58
while (PINB & (1 << PB4) == (1 << PB4)){}
Вт ноя 16, 2021 16:46:33
while ((PINB&(1 << PB4)) == 0){} // Ждем пока на выводе PB4 лог. 0
Вт ноя 16, 2021 17:18:16
while (!(PINB & (1 << PB4)); // висим, пока на пине 0
while (PINB & (1 << PB4); // висим, пока на пине 1
Ср ноя 17, 2021 00:33:54
Ср ноя 17, 2021 00:41:07
if (!(PORTB & (1 << PB0)))
{
PORTB |= (1 << PB1);
_delay_ms(500);
PORTB &= ~(1 << PB1);
}
} // Задержка
Ср ноя 17, 2021 00:52:16
Ср ноя 17, 2021 00:56:55
} // Задержка
while (!(PINB & (1 << PB4))); // Ждем пока на выводе PDO лог. 0
_delay_ms(50);}// Задержка
Ср ноя 17, 2021 01:19:06
Ср ноя 17, 2021 01:33:46
TCCR1A = 0b10000010; // non-inverting, fast PWM
TCCR1B = 0b00011001; // fast PWM, full speed
TCCR0A = 0;
TCCR0B = 0;
TCCR0A |= (1 << WGM01); //Выставляем режим CTC
TCCR0A |= (1 << COM0A0); //Инвертируем значение OC0A по срабатыванию таймера.
TCCR0B |= (1 << CS02); //Ставим предделитель на значение 256. Запускаем генерацию
CLKPR = (1 << CLKPCE);
CLKPR = (0 << CLKPCE) | (0 << CLKPS3) | (0 << CLKPS2) | (1 << CLKPS1)
| (0 << CLKPS0); //Делим на 4
TCCR1A = (1 << COM1A1) | (1 << WGM12) | (1 << WGM10); // Выставляем FAST PWM
TCCR1B = (1 << CS12) | (1 << CS10); // Предделитель
TCNT1 = 0; // clear counter
ICR1 = 23039; // 100 Hz from 9216000/4 MHz clock
TCCR1A = 0b10000010; // non-inverting, fast PWM
TCCR1B = 0b00011001; // fast PWM, full speed
Ср ноя 17, 2021 09:24:08
Просто словами опишите, где кнопки, и что хотите получить.
Иначе, получается разговор глухого с немым.
Ср ноя 17, 2021 10:38:47
if (PORTB &= ~(1 << PB0))
{
PORTB |= (1 << PB1);
_delay_ms(500);
PORTB &= ~(1 << PB1);
}
if ( (PORTB & (1 << PB0)) != 0 ) // Сработает, если PB0 = 1. Если нужно наоборот, то писать нужно так: if ( (PORTB & (1 << PB0)) == 0 )
{
PORTB |= (1 << PB1);
_delay_ms(500);
PORTB &= ~(1 << PB1);
}
Чт ноя 18, 2021 06:42:37
Чт ноя 18, 2021 15:57:05
Чт ноя 18, 2021 16:58:59
Чт ноя 18, 2021 19:18:42
честно говоря, мне по барабану, во что они превращаются - хоть в тыкву... хотя предположу, что таки да, в эти ассемблерные конструкции (если аргументы однобайтовые, конечно)DX168B писал(а):Они случайно не превращаются после компиляции
Пт ноя 19, 2021 23:29:17
if ( (PORTB & (1 << PB0)) != 0 )
{
PORTB |= (1 << PB1);
_delay_ms(500);
PORTB &= ~(1 << PB1);
}
if ( (PORTB & (1 << PB0)) == 0 )
{
PORTB |= (1 << PB1);
_delay_ms(500);
PORTB &= ~(1 << PB1);
}
Сб ноя 20, 2021 16:04:57
char str[] = "\0";
char *str = "\0";
Сб ноя 20, 2021 16:57:35