Mощная функция! Что ж, заимствую еще один вывод
timer0 на PIN_A2, считаем, изм период заканчивается, PPS, timer0 на PIN_C3, CLC LC1POL в 0/1 и получили досчета.
А меньшим делителем, даже не мерцает +/-. И вижу температурьные изменения генераторов ...
Код: Выделить всё
#bit LC1POL = 0xF11.7
...
void main() {
LC1POL = 1;
setup_clc1(CLC_ENABLED | CLC_OUTPUT_INVERTED);
...
while (TRUE) {
t0_pre = 256;
uint8_t tmp = get_timer0();
pin_select("T0CKI", PIN_C3);
while (tmp == get_timer0()) {
LC1POL = 0;
output_bit(PIN_C3, LC1OUT);
LC1POL = 1;
output_bit(PIN_C3, LC1OUT);
t0_pre--;
}
pin_select("T0CKI", PIN_A2);
freq = ((uint32_t)t0_hi * 256 + (uint32_t)t0_lo) * 256 + (uint32_t)t0_pre; // prescaler = 256