Поклонники продукции Microchip Technology Inc тусуются тут.
Ответить

Рандомные пропуски счета таймера 0 и 1 в прерываниях PIC16

Пн сен 23, 2019 05:12:55

Привет всем. Столкнулся с непонятной особенностью таймера 0 (или 1) в обработке прерывания. По переполнению таймера в прерывании командой hserout выдается последовательный байт. Далее сброс флага TMR0IF. Ничего особенного и необчного. Основная программа упрощена до предела. Даже простой loop ничего не меняет. На картинке можно увидеть неравномерность в выдаче имульсов. Менял hserout на короткий имульс - результат тот же. Не могу понять, в чём дело. Если кто-то из вас сталкивался с подобной особенностью, просьба поделитьсчя решением. Код не привожу в силу его элементарности.
Вложения
timer.jpg
(22.21 KiB) Скачиваний: 124

Re: Рандомные пропуски счета таймера 0 и 1 в прерываниях PIC

Пн сен 23, 2019 07:18:06

Вероятно это особенность "PicBasic Pro" или "элементарного кода". С микроконтроллером PIC и его таймерами 0 и 1 - все в порядке.

Re: Рандомные пропуски счета таймера 0 и 1 в прерываниях PIC

Пн сен 23, 2019 09:14:27

Пишите на Си, будет вам счастье.

Re: Рандомные пропуски счета таймера 0 и 1 в прерываниях PIC

Пн сен 23, 2019 10:40:18

Ассемблер и Си - все идеально. Никаких проблем.
Ответить