Пн май 02, 2022 11:14:52
Пн май 02, 2022 11:25:55
Пн май 02, 2022 11:27:24
Пн май 02, 2022 19:26:06
Чт май 12, 2022 11:30:29
Чт май 12, 2022 12:01:45
Ср июл 27, 2022 13:57:06
Ср июл 27, 2022 20:35:20
_Regs()->ODR ^= value;
void toggle() { _Regs()->BSRR = pinsMask << 16 | ~_Regs()->ODR & pinsMask; }
void ClearAndSet()
{
Clear<clearMask>(); // _Regs()->BSRR = clearMask << 16;
Set<setMask>(); // _Regs()->BSRR = setMask;
}
Ср июл 27, 2022 21:15:30
Чт июл 28, 2022 09:17:26
Чт июл 28, 2022 09:20:20
Чт июл 28, 2022 09:55:48
void toggle() { _Regs()->BSRR = pinsMask << 16 | ~_Regs()->ODR & pinsMask; }
Чт июл 28, 2022 10:02:08
Чт июл 28, 2022 10:06:22
azhel12 писал(а):В условиях, что на STM такого нет и это данность, как лучше всего это реализовать, если в одну операцию в принципе невозможно?
Чт июл 28, 2022 10:10:37
Чт июл 28, 2022 10:14:28
void write(uint16_t data)
{
base()->BSRR = pinsMask << 16 | (data & pinsMask);
}
void write(uint32_t value) { sio_hw->gpio_togl = (sio_hw->gpio_out ^ value) & pinsMask; }
Чт июл 28, 2022 10:22:20
Reflector писал(а):Это нужно если тоглить в разных потоках одинаковые пины, что само по себе практически никогда не нужно.
Чт июл 28, 2022 10:35:51
Чт июл 28, 2022 10:41:48
Сб авг 20, 2022 22:06:32