Измеритель частоты синусоидального сигнала

Автор работы: Пользователь скрыл имя, 03 Марта 2011 в 16:43, курсовая работа

Описание работы

В современном обществе по мере познания им природы все более возрастает роль измерений. Соответственно непрерывно увеличивается объем измерительной информации – информации о значениях измеряемых физических величин, повышаются требования к качеству и способам ее обработки и использования.

Содержание работы

Введение ……………………………………………………….……4
Структурной схема устройства……………………………………4
Описание принципа работы структурной схемы устройства….....5
Алгоритм функционирования устройства………………………....6
Описание и расчёт основных элементов схемы электрической
Принципиальной………….….……………………………….…...7
Алгоритм работы микроконтроллера …………………………….17
Текст программы…………………………………………………. 19
Литература. ………………………………………………………….24

Файлы: 1 файл

Расчетная Р.docx

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

     При протекании водных токов операционного  усилителя через резисторы R3 и R4, на них также рассеивается определенная мощность.

     

     Видно, что эта мощность практически  равна нулю, и ею можно пренебречь.

     Постоянный  резистор R7 задает токи выходных ключей сдвигового регистра DD4. Мощность, рассеиваемая на нем рассчитывается по формуле (8)

      (Вт)

     Суммарная мощность, рассеиваемая резисторами, может  быть оценена

      (Вт)

     Далее целесообразно рассмотреть потребляемую мощность интегральных микросхем. Результаты сведены в таблицу.

     Полная  мощность, потребляемая всеми микросхемами РМ∑ может быть оценена

      , (9)

     где PDAx, PDDx – мощность, потребляемая соответствующей аналоговой или цифровой микросхемой. Численные значения

      (мВт)=1,625 (Вт)

     В общую потребляемую мощность входит также мощность, которая расходуется  на индикаторах. Каждый сегмент индикатора потребляет мощность ,

     где Iпр – прямой ток через p-n переход, мА; Uпр – падение напряжения на открытом переходе, В. Значение мощности получается в милливаттах.

     У каждого семисегментного индикатора АЛС332Г имеется 8 сегментов с Iпр=20 мА и Uпр=2,5 В. Значит один индикатор потребляет 8∙20∙2,5=400 мВт. На светодиодах VD3, VD4 рассеивается мощность 20 мВт. Суммарная потребляемая мощность всех индикаторов Ринд∑

      ,

     где РHGx, PVDx – потребляемая мощность соответствующего семисегментного индикатора и светодиода. Числовое значение

      (мВт)

     В итоге стали известны все составляющие общей мощности, которая потребляется всем прибором и теперь можно высчитать  ее численное значение

      (мВт)≈ 3,8 (Вт)

     Максимальная  мощность, потребляемая прибором составляет, около 3,8 Вт.

     4.Алгоритм  работы микроконтроллера

 

     Блок-схема работы микроконтроллер:

     

     Управление  работой всей системы происходит с помощью микроконтроллера. Последовательность действий микро-ЭВМ задает программа, записанная во внутренней памяти контроллера. Общая схема работы микроконтроллера такова.

     При включении, срабатывает встроенный алгоритм сброса микросхемы. Значение всех регистров устанавливается  в начальное состояние, запрещается  обработка прерываний. Затем начинается выполнение зашитой программы по алгоритму, указанному в Приложении 5. Далее по программе происходит инициализация и установление режимов  работы обоих счетчиков Т0 и Т1 посредством записи соответствующих  значений в биты специальных регистров  TMOD и TCON. Также установление необходимого бита в регистре режима прерываний EI разрешает микроконтроллеру выполнять программу обработки прерывания по переполнению счетчика T0. Запрещается индикация установлением на выводе Р1.0 уровня “1”.

     На  выводе порта Р3.7 устанавливается  значение логической единицы, т.е. формируются  первые временные ворота. Затем выполняется  программа формирования временной  задержки длительностью 1 с. Во время  этого интервала счетчики производят подсчет импульсов, поступающих  на их входы. Содержимое двухбайтовых регистров Т0 и Т1 увеличивается. Если при высокой частоте количество импульсов, пришедших на вход счетчика Т0, превысит емкость регистра, то происходит выполнение обработки прерывания по переполнению и содержимое дополнительного  регистра инкрементируется. Это позволяет  микроконтроллеру произвести подсчет 224 импульсов. По прошествии одной секунды, на выводе Р3.7 устанавливается “0” и формирование временных ворот заканчивается. Счетчики прекращают счет. В результате получены значения числа импульсов n и N.

     Затем микроконтроллер выполняет операцию деления двоичных чисел n и N. Число импульсов n в общем случае трехбайтное, а N – двухбайтное около 10000dec. Так как в микроконтроллере реализована операция деления более чем восьмибитных чисел, то необходимо применять специальный алгоритм, выполняющий деление. В результате получается число, целая часть которого содержится в регистре R3, а дробная – в регистре R4.

     Для получения окончательного результат  необходимо умножить это число на коэффициент Fсч=10000.

     Полученное  значение частоты необходимо привести к виду, годному для вывода на индикаторы.

     Результат переводится из двоичной формы в  двоичнo-десятичную и определяется предел частоты, т.е. как будет выводится результат – в герцах или в килогерцах. Выделяется та часть числа, которая будет выведена на семисегментные индикаторы, необходимо получить четыре значащих цифры. Определяется местоположение запятой. Теперь необходимо перевести число из двоично-десятичного кода в код семисегментного индикатора. Это производится при помощи таблицы соответствия, зашитой в памяти микроконтроллера.

     Полученные  данные нужно вывести на индикатор.

     Производится  инициализация последовательного  порта ввода-вывода путем записи определенных значений в соответствующие биты специального регистра SCON. Вывод ведется в синхронном режиме последовательным кодом младшими битами вперед. Запись байта в специальный буфер SBUF приемопередатчика приводит к автоматической перезаписи байта в сдвигающий регистр передатчика и инициирует начало передачи байта. В этом режиме информация и передается и принимается через внешний вывод входа приемника RxD. Передается восемь бит данных. Через внешний вывод выхода передатчика TxD вдаются импульсы сдвига, которые сопровождают каждый бит. Частота передачи бита информации равна 1/12 частоты резонатора. Таким образом выводится весь результат, который запоминается в сдвиговом регистре DD4.

     На  выход порта Р1.0 записывается логический ноль, что разрешает вывод информации на индикаторы. Измерение произведено.  

5.Текст программы

 

NOLIST

        #INCLUDE < АТ89С2051.inc>

 __CONFIG _MCLRE_OFF & _WDT_OFF & _XT_OSC & _PWRTE_ON & _BODEN_ON & _CP_OFF & _CPD_OFF

           

         ERRORLEVEL 2 

         DIO         EQU  0  ;вывод индикации

         INS         EQU  1  ;вывод запуска счётчика

         BTN         EQU  3  ;вывод подключения кнопки

        

; флажкии регистра  состояния программы  FLAG        

         LONG_CLICK  EQU  0  ;произошло длинное  нажатие 

         SHOT_CLICK  EQU  1  ;произошло короткое  нажатие

         CHANGE      EQU  2  ;произошла  смена режима 

; режим работы  в регистре MODE

; 0        частота 100mS

; 1        частота 100mS,dF

; 2        частота 1S

; 3        частота 1S,dF

; 4        счётчик на старте

; 5   счётчик в работе

; 6  счётчик остановлен

         

    CONSTANT TIME_MAX = 0x70 ;продолжительность длинного  нажатия 

    CONSTANT TIME_MIN = 0x05 ;продолжительность короткого  нажатия

       

    CBLOCK 0x20

          S_TMP      ;регистр для  хранения STATUS         

      W_TMP      ;регистр для хранения W

      FLAG       ;флажки программы

      MODE       ;режим работы

          TIME       ;счётчик продолжительности  нажатия кнопки

          ZIKL       ;счётчик количества  циклов по 0,1с

          IMP1_TMP   ;регистры для фиксации

          IMP2_TMP   ;счётчика импульсов 

          IMP3_TMP

          IMP4_TMP

      IMP1       ;счётчик импульсов

      IMP2

      IMP3

      IMP4

      TMP1       ;вспомогательные регистры

      TMP2

      TMP3

      TMP4

      TMP5

      TMP6

      SEC1       ;время счёта импульсов

      SEC2       ;единицы SEC1,десятки SEC2

      CNT1       ;вспомогательные регистры    

      CNT2       ;для счётчиков итераций 

      CNT3

          CNT4

      IND0       ;регистры индикации

      IND1

      IND2

      IND3

      IND4

      IND5

      IND6

      IND7

      IND8

      IND9  

    ENDC 

         LIST 

     ORG 0x00

  B INIT

            ORG 0x04

          B INTER

         

;***********************************************

;* табличная  перекодировка символов индикатора *

;*********************************************** 

INDTBL    ADDWF PCL  ;символ смещение 

  RETLW 0x0A ; 0     - 0x00

      RETLW 0x01 ; 1     - 0x01

      RETLW 0x02 ; 2     - 0x02

      RETLW 0x03 ; 3     - 0x03

          RETLW 0x04 ; 4     - 0x04

      RETLW 0x05 ; 5     - 0x05

          RETLW 0x06 ; 6     - 0x06

      RETLW 0x07 ; 7     - 0x07

          RETLW 0x08 ; 8     - 0x08

      RETLW 0x09 ; 9     - 0x09

      RETLW 0x00 ; SPASE - 0x0A

          RETLW 0x0B ; F     - 0x0B

      RETLW 0x0C ; _|    - 0x0C

      RETLW 0x0D ; |_    - 0x0D

      RETLW 0x0E ; P     - 0x0E

      RETLW 0x0F ; -     - 0x0F 

;***********************************************

;*  смена режимов  работы после нажатия кнопки  *

;*********************************************** 

MODTBL    ADDWF PCL  

  RETLW 0x01  ;частота 100mS,dF

      RETLW 0x00  ;частота 100mS

      RETLW 0x03  ;частота 1S,dF

      RETLW 0x02  ;частота 1S

      RETLW 0x05  ;счётчик в работе

      RETLW 0x06  ;счётчик остановлен

      RETLW 0x04  ;счётчик на старте 

;***********************************************

;*         начало основной программы           *

;*********************************************** 

INIT      BCF GPIO,DIO      

          MOVLW  B'00010001' ;включение TMR1 с 

      MOVWF  T1CON       ;предделителем  F/2

      BSF STATUS,RP0     ;переход в банк1

      BCF TRISIO,DIO     ;DIO на вывод

      BSF INTCON,T0IE    ;разрешины прер.TMR0

      MOVLW  B'00110111' ;включение TMR0 как счётчик  с 

          MOVWF  OPTION_REG  ;предделителем F/256

      BSF PIE1,TMR1IE    ;разрешины прер.TMR1

          BSF INTCON,PEIE    ;разрешины дополнительные прер.

          BCF STATUS,RP0     ;переход в  банк0 

          CALL D1S           ;задержка 1с 

          MOVLW 0x23         ;отчистка  регистров 

      MOVWF S_TMP        ;в директиве  CBLOCK

      MOVLW W_TMP        ;с 0x20 по 0x44

      MOVWF FSR

      CLRF INDF

Информация о работе Измеритель частоты синусоидального сигнала