Таймерные функции

Автор работы: Пользователь скрыл имя, 29 Ноября 2011 в 12:11, лабораторная работа

Краткое описание

Цель работы. Изучение понятия таймеров микропроцессора, возможностей и режимов работы шестнадцатиразрядного таймера TMR1.

Содержимое работы - 1 файл

002 лаб.doc

— 38.50 Кб (Скачать файл)

    МИНИСТЕРСТВО  ОБРАЗОВАНИЯ И НАУКИ РЕСПУБЛИКИ КАЗАХСТАН 

    Алматинский университет энергетики и связи 

Кафедра Инженерной Кибернетики 
 
 
 
 
 
 
 
 
 
 
 

Лабораторная  работа №2 

Тема: Таймерные функции

                                                   
 
 
 
 
 
 
 

                Принял:  к.т.н., профессор

                       Копесбаева А.А.

                Выполнили: Амандикова Г.

                Группа:  МАУп-10-2 
                 
                 
                 
                 
                 
                 
                 

Алматы 2011

 

      Цель работы. Изучение понятия таймеров микропроцессора, возможностей и режимов работы шестнадцатиразрядного таймера TMR1.

     Задание

     1. Изучить поле сторожевого таймера WDT регистра STATUS и флаг прерывания по переполнению  тайм аута –TOIF регистра INTCON, разряды регистров TMRO-TMR2.

     2. Написать программу организации задержки за счет таймерных функций процессора при использовании TMR1. 

     Ход выполнения работы

     Программа 2.1. Если коротко охарактеризовать работу таймера, то это накопление импульсов тактового генератора. Это накопление происходит до тех пор, пока не переполнятся два 8-разрядных регистра таймера TMR1 (TMR1H и TMR1L), то есть один 16 –разрядного регистр. Понятно, что это переполнение произойдет, когда в регистр поступит 216 импульсов (65536). Частота, с которой поступают импульсы, определяется частотой тактового генератора (12 Мгц), а также значением предделителя частоты (1:8). Накопление времени происходит каждый машинный цикл, который состоит из 4-х тактов тактового генератора. При таких данных период поступления импульсов составляет Т= [1/(12*10-6)]*8*4 = 2,67 мкс. Тогда максимальное время до установки флага переполнения:  tmax=2,67x65536x10-6 =0,18 c, значит, частота миганий светодиодов (или частота выходных импульсов) fmin=1/0,18= 5,56 Гц, tmin=2,67x10-6 с, значит, частота миганий светодиодов (или частота выходных импульсов) fmax=(1/2,67)x106= 375 KГц. Большее, чем 0,18 секунд, время формируем за счет организации вложенных циклов или простым повторением циклов опроса таймера. Формирование времени осуществляется накоплением импульсов от начального значения регистров TMR1H и TMR1L до переполнения таймера.

     CLRF  STATUS

      BSF   STATUS,RP0

      MOVLW  B'00000000'

      MOVWF  TRISC

      CLRF  STATUS

      CLRF T1CON ; Остановить TMR1, тактирование от внутреннего

             ; генератора, пределитель частоты  =1:1

      CLRF  TMR1H ;очистить старший байт таймера

      CLRF  TMR1L ;очистить младший байт таймера

      CLRF INTCON ; Запретить прерывания от TMR1

      BSF  STATUS,RP0

      CLRF  PIE1  ; Запретить периферийные прерывания

     BCF  STATUS,RP0

      CLRF  PIR1  ; Обнулить флаг периферийных прерываний

      MOVLW 0X30; Тактирование от внутреннего

      MOVWF T1CON; генератора, пределитель частоты =1:8

      BSF  T1CON,TMR1ON; Старт TMR1

T1_OFF

      BTFSS PIR1,TMR1IF; до тех пор, пока не установится

      GOTO T1_OFF   ;флаг переполнения таймера зациклить

      MOVLW H'FF'  ;когда флаг переполнения установится

      MOVWF PORTC ;зажечь светодиоды

      BCF  PIR1,TMR1IF ;обнулить флаг переполнения таймера

      BSF  T1CON,TMR1ON ; Старт TMR1

T2_OFF 

      BTFSS PIR1,TMR1IF

      GOTO T2_OFF

      CLRF  PORTC  ;потушить светодиоды

      BCF  PIR1,TMR1IF  ;обнулить флаг переполнения таймера

      GOTO START  ;повторить сначала

END 
 
 
 

     ЗАКЛЮЧЕНИЕ 

     При выполнении этой программы получены навыки программирования таймерных функций. Сначала производится настройка портов и регистров. При этом используются регистры INTCON, TMR1H-TMR1L. Работа таймеры основывается на переполнении двух регистров таймера и установке флага переполнения PIR1 таймера.

Информация о работе Таймерные функции