Гл ас д-р инж. Любомир Богданов


Въведение в таймерните модули



Pdf просмотр
страница2/17
Дата06.03.2024
Размер2.94 Mb.
#120572
1   2   3   4   5   6   7   8   9   ...   17
06 timers
Свързани:
01 introduction
Въведение в таймерните модули


7/86
За генерирането на времеви интервали има два подхода:
*да се реализира софтуерно, чрез цикъл;
*да се реализира хардуерно – чрез таймер.
Софтуерно:
mov #100, r5 ;Зареди 100 в r5, 2-такта
L1: sub #1, r5 ;Намали r5 с едно, 2-такта jnz L1 ;Сравни и се върни в L1, ако е ненулев
;резултат, 2-такта
Въведение в таймерните модули


8/86
Ако микропроцесорът работи с тактова честота 8 MHz, то периода на един такт ще е Т = 1 / 8 MHz = 125 ns.
От горната програма може да изчислим колко време ще отнеме цялото изпълнение на цикъла: t
delay
= [2 + 100*(2+2)]*125 ns = 50250 ns = 50.25 µs.
Чрез промяна на първия ред можем да променим това време зануждите на приложението.
Въведение в таймерните модули


9/86
volatile uint8_t i;
for(i = 0; i < 100 ; i++){ }
и ако знаем времето, за което се изпълнява една итерация на цикъла, може да изчислим закъснението на цялата for- конструкция.
Предимства – софтуерното генериране на времеви интервали не изисква специални хардуерни модули.
Недостатъци – докато микропроцесорът изпълнява кода на цикъла, нищо друго не може да извършва.
Конвейерното изпълнение на инструкцията и зануляването на конвейера затрудняват изчислението на времето.
Въведение в таймерните модули


10/86
Хардуерно генериране на закъснение – може да се извърши със таймерен модул, вграден в микроконтролера.
Неговата цел е да отмери определен брой тактови импулси и да сигнализира на процесора, когато е достигнат максимума.
Предимства – докато този отделен модул отброява, микропроцесорът може да продължи изпълнението на програмата си.


Сподели с приятели:
1   2   3   4   5   6   7   8   9   ...   17




©obuch.info 2024
отнасят до администрацията

    Начална страница