Помню как-то нужно было за вечер сварганить приблуду, которая промышленному кондиционеру в составе стойки с оборудованием должна была команды подавать без пульта. Пультик такой, как от телевизора. Сначала подумал накопать информации по пульту и его кодам, но как-то плюнул на все это и быстренько написал дешифратор кнопок пульта - какая-то STM32 самая мелкая, естественно на захвате таймера сделал определение длительностей переключения выхода инфракрасного приемника, выплюнул их в UART, подкорректировал ручками эти числа из-за входного тристабильного внешнего буфера. И в общем получились у меня три массива чисел-команд: включение, перевод в режим обдува и снижение температуры. Теперь обратная задача - эту последовательность скармливаю регистру сравнения и в прерывании по совпадению подсовываю следующий код длительности. В итоге при включении питания я параллельно ИК-датчику выдаю кондиционеру три команды, а он и не в курсе, что
роботы захватили мир батарейки в пульте уже давно сели и никто им не пользуется