Я не знаком с RC8, и Ренес не говорит много о производительности, но это процессор CISC с обычно 4 циклами на команду, так что давайте оценим около 4 MIPS?Некоторые инструкции намного длиннее с делением до 30 циклов.
Таким образом, если вы создаете таймер 64 кГц и переключаете выход на каждое прерывание, у вас есть около 63 инструкций между каждым прерыванием, у вас есть задержка прерывания плюс кодперевернуть бит.Если он вообще работает, он, вероятно, будет представлять собой значительную нагрузку на процессор и может повлиять на своевременность других операций.
Реалистично, без редизайна проект может оказаться нежизнеспособным.Вы уже подчеркиваете это тактом 4KHz OS, на мой взгляд - программные издержки с такой скоростью, скорее всего, являются значительной частью вашей загрузки процессора.
[ADDED]
Ранее я предлагал 6 инструкций между прерываниями - проблема с пальцами в калькуляторе, я изменил эту оценку до 63 и смягчил свой вывод до "едва выполнимого".
Однако я снова посмотрел на лист данных,задержка прерывания является переменной, потому что выполнение инструкции является переменным, и текущая инструкция должна завершиться до обслуживания прерывания, наихудший случай - когда выполняется инструкция DIVX, когда требуется до 51 цикла до first инструкция процедуры прерывания.Это 2,55 мкс, когда вам нужно прерывание для запуска каждые 15,625 мкс, переменная задержка будет вызывать значительный джиттер и составлять от 6 до 16% вашего общего процессорного времени, даже не принимая во внимание то, что используется самим ISR. Плюс, если само прерываниес опережением или если прерывание с более высоким приоритетом выполняется, когда наступает срок действия, будет наложен дополнительный джиттер.
Будет ли оно работать, будет зависеть от точности и ограничений джиттера 32 кГц, а также от того, что еще нужно вашему кодучтобы сделать.