Реферат: Измерение длительности импульса

--PAGE_BREAK--


2. РАЗРАБОТКА СТРУКТУРНОЙ СХЕМЫ. ОБОБЩЕННЫЙ АЛГОРИТМ РАБОТЫ

 Структурная схема измерительного прибора приведена на рис.1

Структурная схема измерительного прибора

<img width=«549» height=«198» src=«ref-1_404317029-4018.coolpic» v:shapes="_x0000_i1025">

мСек – кнопка выбора отображения измеренной длительности импульса в мили Секундах.

Сек — кнопка выбора отображения измеренной длительности импульса в Секундах

Инверсия – кнопка выбора первого или второго режима измерения см ТЗ.

Св.Д1. – светодиод индицирующий включение второго режима измерения

Св.Д2. – светодиод индицирующий включение режима отображения измеренной длительности импульса в секундах.

Св.Д3. – светодиод индицирующий включение режима отображения измеренной длительности импульса в мили секундах.

AVR90S8515 – однокристальная микро-ЭВМ AVR90S8515

Рисунок 1.

Дешифраторы производят дешифрацию двоично-десятичного кода, а индикаторы отображают результаты измерения.

При включении питания микро-ЭВМ производит выполнение подпрограммы инициализации (инициализация стека, настройка используемых портовВВОДА/ВЫВОДА, загружается в компаратор А таймер/счетчика число 80000, выбирается нужный режим работы таймер/счетчика 1 (бит CTC1 регистра управления таймером/счетчиком 1(TCCR1B), устанавливается в единицу, что означает сброс таймер/счетчика 1 при срабатывании компаратора А, также бит CS10,находящийся в этом же регистре, устанавливается в единицу, это означает, что в качестве источника синхронизации будет использоваться частота синхронизации кварцевого резонатора), происходит глобальное разрешение прерываний ). Далее происходит опрос состояния кнопки выбора режима измерения длительности импульса и в зависимости от ее состояния (0 – измерение низкого уровня длительности импульса, 1 — измерение высокого уровня длительности импульса ), происходи переход на соответствующую подпрограмму (IMPULS_POLOGITELNAY – подпрограмма измерения высокого уровня длительности импульса, IMPULS_OTRICHATELNAY — подпрограмма измерения низкого уровня длительности импульса ).

Алгоритм работы этих двух подпрограмм практический одинаковый, для примера рассмотрим работу подпрограммы IMPULS_POLOGITELNAY. При переходе на эту подпрограмму МП начинает опрос линии PA0 и в случае обнаружения на ней логической единицы запускает таймер/счетчик 1. При срабатывании компаратора А происходит сброс таймер/счетчика 1 (в компаратор А загружено число – 8000, при частоте синхронизации МП равной 8Мгц срабатывание компаратора произойдет ровно через 1мС±1% ), что говорит о прошествии 1мСек. Отчет мили секунд в соответствии с ТЗ начнется после прошедшей девятой мили секунды. Индикация измеряемой длительности импульса происходит каждые 50 мСек. Вмести с этим МП продолжает сканировать линию PA0 и после того как он обнаружит на ней состояние логического нуля, что говорит о конце измерения длительности импульса, произойдет остановка таймера/счетчика 1 и произведется переход на подпрограмму перевода двоичного шестнадцати разрядного числа в двоично-десятичное — bin16BCD5 (детальный алгоритм перевода двоичного шестнадцати разрядного числа в двоично-десятичное рассмотрен ниже). После выполнения подпрограммы bin16BCD5, МП опрашивает состояние кнопок мСек и Сек. Если нажата кнопка Сек (индикация результата измерения производится в секундах), то тогда МП путем выдачи с линии РА7 логической единицы индицирует точку разделяющую целую часть числа от дробной. Если не нажата ни одна из двух кнопок или нажаты все, то тогда индикация результата измерения производится не будет. После того как произведется индикация результата измерения (через линии порта Dи C) МП возвращается в основную программу. На этом цикл работы программы заканчивается .

Алгоритм подпрограмма перевода двоичного шестнадцати разрядного числа в двоично-десятичное

Арифметико-логическое устройство AVR-микроконтроллеров (как и других микропроцессоров) выполняет элементарные арифметические и логические операции над числами, представленными в двоичном коде. В двоичном коде считываются результаты преобразования АЦП, в двоичном коде (в формате целых чисел или чисел с плавающей точкой) удобно выполнять обработку результатов измерения. Однако, когда окончательный результат отображается на индикаторе, он должен быть преобразован в десятичный формат, удобный для восприятия человеком.

 Форматы представления десятичных чисел

В настоящее время распространены два формата представления десятичных чисел в микропроцессорах — упакованный двоично-десятичный код (BCD-Binary-Coded Decimal).

Упакованный BCD-код — это такое представление десятичного числа, когда каждая десятичная цифра представляется 4-х битным двоичным позиционным кодом 8-4-2-1. При этом байт содержит две десятичные цифры. Младшая десятичная цифра занимает правую тетраду (биты 3: 0), старшая — левую тетраду (биты 7: 4). Многоразрядные BCD-числа занимают несколько смежных байт. Если число является знаковым, то для представления знака в BCD-формате отводится старшая тетрада старшего байта

Алгоритм подпрограммы bin16bcd5 заключается в следующем. Предположим, что имеется целое беззнаковое 16-битное число (диапазон от 0 до 65535). Очевидно, что необходимо найти 5 десятичных цифр. Способ преобразования заключается в том, чтобы, вычитая из исходного числа число 10000, сначала определить десятичную цифру десятков тысяч. Затем находится цифра тысяч последовательным вычитанием числа 1000 и т. д. Вычитание каждый раз производится до получения отрицательной разности с подсчетом числа вычитаний. При переходе к определению каждого следующего десятичного разряда в регистрах исходного числа восстанавливается последняя положительная разность. После того, как будет найдена десятичная цифра десятков, в регистрах исходного числа останется десятичная цифра единиц.

3. РАЗРАБОТКА И РАСЧЕТ ЭЛЕМЕНТОВ ПРИНЦИПИАЛЬНОЙ ЭЛЕКТРИЧЕСКОЙ СХЕМЫ

3.1 Выбор микропроцессорного комплекта

В соответствии с ТЗ ядром измерительного прибора послужила однокристальная микро-ЭВМ AVR90S8515 фирмы Atmel.

Основные характеристики однокристальной микро-ЭВМ AVR90S8515:

• AVR RISC архитектура — архитектура высокой производительности и малогопотребления

• 120 команд, большинство которых выполняется за один машинный цикл

• 8 Кбайта Flash ПЗУ программ, с возможностью внутрисистемногоперепрограммирования и загрузки через SPI последовательный канал, 1000 цикловстирание/запись

• 512 байтов ЭСППЗУ данных, с возможностью внутрисистемной загрузки через SPIпоследовательный канал, 100000 циклов стирание/запись

• 512 байтов встроенного СОЗУ

• 32 x 8 бит регистра общего назначения

• 32 программируемых линий ввода/вывода

• 16-разрядный и 32-разрядный формат команд

• Диапазон напряжений питания от 2,7 В до 6,0 В

• Полностью статический прибор — работает при тактовой частоте от 0 Гц до 8 МГц

• Длительность командного цикла: 125 нс, при тактовой частоте 8 МГц

• 8-разрядный и 16-разрядный (с режимами сравнения и захвата) таймеры/счетчики

• Сдвоенный ШИМ с 8, 9 или 10-разрядным разрешением

• Программируемый полный дуплексный UART

• Два внешних и десять внутренних источников сигнала прерывания

• Программируемый сторожевой таймер с собственным встроенным генератором

• Встроенный аналоговый компаратор

• Режимы энергосбережения: пассивный (idle) и стоповый (power down)

• Блокировка режима программирования

• Промышленный (-40°C...85°C) и коммерческий (0°C...70°C) диапазоны температур

• 40-выводной корпус PDIP и 44-выводные корпуса TQFP и PLCC

КМОП микроконтроллер AT90S8515 реализован по AVR RISC архитектуре

(Гарвардская архитектура с раздельной памятью и раздельными шинами для памятипрограмм и данных) и совместим по исходным кодам и тактированию с 8-разряднымимикроконтроллерами семейства AVR (AT90SXXX). Выполняя команды за один тактовыйцикл, прибор обеспечивает производительность, приближающуюся к 1 MIPS/МГц. AVRядро объединяет мощную систему команд с 32 8-разрядными регистрами общегоназначения и конвейерное обращение к памяти программ. Шесть из 32 регистровмогут использоваться как три 16-разрядных регистра-указателя при косвенной адресациипространства памяти. Выполнение относительных переходов и команд вызовареализуется с прямой адресацией всех 4К адресного пространства. Адресапериферийных функций содержатся в пространстве памяти ввода/вывода. Архитектураэффективно поддерживает как языки высокого уровня, так и программы на языкахассемблера.Встроенная загружаемая Flash память обеспечивает внутрисистемноеперепрограммирование с использованием интерфейса SPI (в последовательномВстроенная загружаемая Flash память обеспечивает внутрисистемноеперепрограммирование с использованием интерфейса SPI (в последовательномнизковольтовом режиме) или с использованием стандартных программаторовэнергонезависимой памяти (в 12-вольтовом параллельном режиме).Потребление прибора в активном режиме составляет 3,5 мА и в пассивномрежиме 1 мА (при VCC =3 В и f=4 МГц). В стоповом режиме, при работающемсторожевом таймере, микроконтроллер потребляет 50 мкА.низковольтовом режиме) или с использованием стандартных программаторовэнергонезависимой памяти (в 12-вольтовом параллельном режиме).Потребление прибора в активном режиме составляет 3,5 мА и в пассивномрежиме 1 мА (при VCC =3 В и f=4 МГц). В стоповом режиме, при работающемсторожевом таймере, микроконтроллер потребляет 50 мкА.

3
.1.1
Выбор кварцевого резонатора


Для работы МП необходим кварцевый резонатор который подключается к выводам XTAL1 и XTAL2 (см. графическую часть курсового проекта)

Рабочая частота кварцевого резонатора непосредственно связана с точностью измерения длительности импульса (из рис. 2 видно, что чем больше частота синхронизации тем точнее измерение длительности) для заданной погрешности измерения достаточно, чтобы частота резонатора была равна fрез=8МГц

<img width=«371» height=«218» src=«ref-1_404321047-2182.coolpic» v:shapes="_x0000_i1026">

Рисунок 2



3.1.1.1 Определение погрешности от источника синхронизации

Погрешность от кварцевого резонатора возникает в следствии нестабильности его частоты во время работы.

Нестабильность частоты кварцевого резонатора МА406 примерно равно 0.00001 от частоты синхронизации, исходя из этого погрешность возникающая в следствии нестабильности частоты можно определить по формуле

<img width=«128» height=«47» src=«ref-1_404323229-357.coolpic» v:shapes="_x0000_i1027">

где К — нестабильность частоты кварцевого резонатора

К=0.00001*8000000=80 Гц

fBQ– частота кварцевого резонатора

<img width=«159» height=«67» src=«ref-1_404323586-421.coolpic» v:shapes="_x0000_i1028">

3.2 Выбор интегральной микросхемы дешифратора

В дешифратора будет использоваться интегральная микросхема КР514ИД2

3.3 Выбор средств индикации

 В качестве средств индикации будут использоваться светодиодные индикаторы – ААС3224А

3.4 Выбор внешних элементов гальванической развязки

 В качестве элементов гальванической развязки используется цифровая микросхема 249ЛП5 — оптоэлектронный переключатель на основе диодных оптопар выполненных в металлостеклянном корпусе. основные характеристики цифровой микросхемы 249ЛП5 приведены в табл. 1.

Таблица 1

Основные характеристики цифровой микросхемы 249ЛП5

Электрические параметры

Входное напряжение при IВХ=15 мА

не более 1.7 В

Выходное напряжение в состоянии логического нуля

0.4 В

Выходное напряжение в состоянии логической единицы

2.4

Предельные эксплутационные данные

Входной постоянный ток

12 мА

Входной импульсный ток

15 мА
Напряжение питания
5(±0.5) В

Диапазон рабочих температур

-60…+85 °С
    продолжение
--PAGE_BREAK--
еще рефераты
Еще работы по информатике