Читайте также:
|
|
Работать от сигнала на ножке T0 ;|+----------Запретить управление таймером от ножки INT0 ;||++-----------Перевести таймер T1 в шестнадцатиразрядный режим ;|+-------------Синхронизироваться от внутреннего генератора ;+--------------Запретить управление таймером от ножки INT1 mov TH0, #0;Обнулить старший байт счётчика mov TL0, #0;Обнулить младший байт счётчика ;---измерение вести 1 мс--------------------------------------------------------- mov TH1, #HIGH(-1000);Загрузить старший байт таймера mov TL1, #LOW(-1000);Загрузить младший байт таймера mov TCON,#01010000b;Включить частотомер ;
|| ;
Прерывание от ножки INT1возникает по фронту ;
Сбросить запрос прерывания от ножки INT1 ;
Прерывание от ножки INT1возникает по фронту ;
Сбросить запрос прерывания от ножки INT1 ;+-----------Включить таймер T0 ;||+------------Обнулить флаг таймера T0 ;|+-------------Включить таймер T1 ;+--------------Обнулить флаг таймера T1 TstTimeOut: jnb TF1, TstTimeOut;Если 1 мс прошла mov TCON, #00000000b;то отключить частотомер ;
|| ;
Прерывание от ножки INT1 возникает по фронту ;
Сбросить запрос прерывания от ножки INT1 ;
Прерывание от ножки INT1возникает по фронту ;
Сбросить запрос прерывания от ножки INT1 ;+-----------Отключить таймер T0 ;||+------------Обнулить флаг таймера T0 ;|+-------------Отключить таймер T1 ;+--------------Обнулить флаг таймера T1
Рис. 9.11. Программа измерения частоты
Если теперь на вход микроконтроллера T0 подать сигнал с неизвестной частотой, то в регистрах TH0 и TL0 будет записана его частота в килогерцах.
Дата добавления: 2015-07-20; просмотров: 44 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Использование таймера в качестве частотомера. | | | Пример выполнения работы |