Микропроцессорная система

Автор: Пользователь скрыл имя, 14 Июня 2013 в 09:51, курсовая работа

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

Для обработки применяются как универсальные процессоры общего назначения - Intel 8035, 8051, 80x86, Motorola 68xxx, SPARC - так и специализированные цифровые сигнальные процессоры (Digital Signal Processor, DSP) Texas Instruments TMS xxx, Motorola 56xxx, Analog Devices ADSP-xxxx и др. Разница между универсальным процессором и DSP состоит в том, что первый ориентирован на широкий класс задач - научных, экономических, логических, игровых и т.п., и содержит большой набор команд общего назначения. DSP специально ориентированы на обработку сигналов и содержат наборы специфический операций - сложение с ограничением, перемножение векторов, вычисление математического ряда и т.п. Реализация даже несложной обработки звука на универсальном процессоре требует значительного быстродействия и далеко не всегда возможна в реальном времени, в то время как даже простые DSP нередко справляются в реальном времени с относительно сложной обработкой, а мощные DSP способны выполнять качественную спектральную обработку сразу нескольких сигналов.

Содержание

Введение
1. Обзор патентно-технической литературы
1.1 Ручные регуляторы уровня
1.2 Автоматические регуляторы уровня
1.3 Статические и динамические характеристики и параметры
автоматических регуляторов уровня
1.4 Комбинированные и адаптивные автоматические регуляторы
уровня
2. Разработка структурной и принципиальной схем
2.1 Разработка структурной схемы и пользовательского меню
устройства
2.2 Выбор составляющих компонентов
2.2.1 Выбор микроконтроллера
2.2.2 Аналого-цифровой преобразователь
2.2.3 Цифровой потенциометр
2.2.4 Регулятор громкости с электронным управлением
2.2.5 Жидкокристаллический модуль
2.2.6 Логарифмический измеритель уровня
2.3 Разработка принципиальной схемы устройства
3. Разработка управляющей программы
4. Разработка печатной платы
5. Экономическая часть
5.1 Расчет себестоимости системы
5.2 Определение экономической эффективности
5.3 Выводы

6. Раздел безопасности и экологичности проекта
6.1 Характеристики объекта с точки зрения безопасности труда
6.2 Анализ опасных и вредных факторов
6.3 Разработка мероприятий по защите от опасных и вредных факторов
6.4 Расчет освещенности
6.5 Экологичность проекта
6.6 Выводы
Заключение
Литература

Работа содержит 1 файл

Микропроцессорная система.doc

— 238.00 Кб (Скачать)

AT89C2051 - низковольтная, быстродействующая  CMOS 8-разрядная микро ЭВМ с 2 КБ электрически стираемой флэш  ПЗУ (EPROM). ……..

……Микроконтроллер полностью совместим с архитектурой MCS-51, и может быть запрограммирован, используя систему команд MCS-51. Однако имеются несколько соображений, которые нужно иметь в виду при использовании некоторых команд в программе для этого устройства. Все команды, связанные с переходом к подпрограмме или безусловным переходом должны быть ограничены так, чтобы они адресовали ячейку в пределах физического пространства памяти программ устройства, которое ограничено 2КБ для AT89C2051.

$

Рисунок 2.2 – Расположение выводов  AT89C2051

Альтернативные функции выводов порта P3 (см. рисунок 2.2):

P3.0 - RXD (вход последовательного  порта) 

P3.1- TXD (выход последовательного  порта) 

P3.2 - INT0 (внешнее прерывание)

P3.3 - INT1 (внешнее прерывание)

P3.4 - T0 (таймер 0 внешний ввод)

P3.5 - T1 (таймер 1 внешний ввод)

Альтернативные функции выводов  порта P1:

P1.0 - AIN0 (отрицательный вход компаратора)

P1.1 - AIN1 (положительный вход компаратора)

На рисунке 2.3 представлена блок-схема  микроконтроллера.

$$$$

Рисунок 2.3 – Блок - схема внутреннего  устройства микроконтроллера AT89C2051

Предельно допустимые параметры:

Рабочая температура ...............................

Температура хранения ............................

Напряжение на любом выводе

относительно земли .................................

Максимальное напряжение питания ......

Выходной ток (лог 1) ................................

2.2.2 Аналого-цифровой преобразователь

 

Аналого-цифровой преобразователь (АЦП) в разрабатываемом устройстве служит для оценки величины выходного сигнала, оцифровки с последующей передачей данных в микроконтроллер. В качестве АЦП выбираем ADS7816 (Burr-Brown) — 12-ти битная высоко скоростная микросхема, с обрабатываемой частотой до 200 кГц. Он применяется в маломощных устройствах с автоматическим выключением, последовательным синхронным интерфейсом и дифференциальным входом. Рабочее напряжение может варьировать от 100 милливольт до 5 вольт, с разрешающей способностью от 24 микровольт до 1.22 милливольт соответственно. Он также идеален для удалённой и/или изолированной передачи данных. ADS7816 возможен в следующих исполнениях: пластиковый 8-pin mini-DIP или в 8-lead MSOP корпусах (рисунок 2.5). На рисунке 2.4 представлена блок схема данного АЦП.

Рисунок 2.4 – Блок схема ADS7816

На вход подается сигнал старта преобразования, по входу DCLOCK производится тактирование АЦП, с выхода Dout принимаются результаты преобразования, бит за битом. Временные диаграммы сигналов на ножках , DCLOCK и Dout приведены на рисунке 2.6.

$

Рисунок 2.5 – Расположение выводов ADS7816

$

Рисунок 2.6 – Временные диаграммы  работы ADS7816

 

При обращении МК должен установить на ножках и Dout единичные уровни сигналов, а на DCLOCK - нулевой. Запуск преобразования осуществляется установкой нулевого уровня на ножке . После этого МК должен сформировать на DCLOCK три положительных импульса. По спаду последнего из них на выходе Dout появится старший бит результата преобразования (DB11). Считав его, МК должен сформировать на DCLOCK следующий положительный импульс. По спаду его на выходе Dout появится следующий бит результата преобразования (DB10). Считав его, МК снова формирует импульс на DCLOCK, по спаду которого на Dout появится бит (DB9) и т.д., вплоть до DB0. Считав последний, МК должен оставить DCLOCK нулевым, а вернуть в единицу. На этом цикл запуска преобразования и считывания информации завершается.

2.2.3 Цифровой потенциометр

 

В качестве ЦАП применим цифровой потенциометр (ЦП)-микросхему AD8400AR10 (10kOm) фирмы Analog Device, имеющая следующие параметры:

256 позиционный переменный резистор  с цифровым управлением

Линейная зависимость сопротивления  от цифрового кода

Начальная установка в среднее  положение

3-х проводной последовательный  интерфейс SPI

Напряжение питания …..

$

Рисунок 2.7 – Блок схема AD8400

$

Рисунок 2.8 – Расположение выводов  AD8400

2.2.4 Регулятор громкости с электронным управлением

В качестве регулирующего элемента, управляющим громкостью звучания в нашей схеме будет служить микросхема TDA 8196 (SGS-Thomson) (рисунок 2.9). Регулятор имеет два входа: "input 1", "input 2"  и один выход output. Переключение между входами осуществляется выводом "switch control". Управление громкостью осуществляется выводом "volume control". На рисунке 2.10 представлена кривая зависимости затухания громкости от управляющего напряжения.

$

 

Рисунок 2.9 – Схема включения TDA 8196

Регулятор имеет логарифмическую  характеристику управления с диапазоном регулирования от 70 до 90 дБ. На рисунке 2.10 представлены кривые управления. Величина управляющего напряжения может варьироваться в диапазоне от 0,5 до 4,5В. Данный регулятор, требует небольшого числа навесных элементов и обладает стабильностью и точностью регулировки.

Рисунок 2.10 – Кривая управления

 

Приведем основные характеристики микросхемы.

Напряжение питания---------------------------------

Ток потребления---------------------------------------

Напряжение включения:

input 1----------------------------------------------------

input 2----------------------------------------------------

Амплитуда входного сигнала-----------------------

Входное сопротивление (input 1, input 2)--------

Выходное сопротивление---------------------------

$

$

 

$

$

$

$

$


 

2.2.5 Жидкокристаллический модуль

 

Жидкокристаллический модуль WH1202A (рисунок 2.11) состоит из БИС контроллера управления (HD44780 фирмы Hitachi) и ЖК панели.

$

Рисунок 2.11 – Внешний вид модуля WH1202A

 

Модуль позволяет отображать две  строки по 16 символов в каждой. Символы  отображаются в матрице 5x8 точек. Между  символами имеется интервалы шириной в одну отображаемую точку. Каждому отображаемому на ЖК символу соответствует его код в ячейке ОЗУ модуля. Модуль содержит два вида памяти - кодов отображаемых символов и пользовательского знакогенератора, а также логику для управления ЖК панелью.

Контрастность индикатора зависит  от напряжения питания модуля. Управление контрастностью производится подключением внешнего делителя к выводу Vo.

Внимание! Недопустимо воздействие  статического электричества больше 30 вольт.

Основные сведения:

модуль позволяет работать как  по 8-ми, так и по 4-х битной шине данных (задается при инициализации);

принимать  команды  с  шины  данных;

записывать данные  в  ОЗУ  с  шины  данных;

читать данные  из  ОЗУ на  шину данных;

читать статус состояния  на  шину данных; запоминать до  8  изображений  символов,  задаваемых  пользователем;  выводить мигающий  (или не  мигающий)  курсор двух типов;

управлять контрастностью

 

Таблица 2.1 – Электрические характеристики ЖК модуля

$

2.2.6 Логарифмический измеритель  уровня

Логарифмический выпрямитель выполнен (рисунок 2.12) на основе микросхемы КР157ДА1, которая представляет собой двухканальный двухполупериодный выпрямитель. Микросхема преобразует переменное напряжение, поступающее на ее входной контакт 2, в постоянный ток источника тока, вытекающий из контакта 13, с величиной, пропорциональной среднему значению переменного напряжения. Если необходим выход по напряжению, то вывод 13 заземляется, а сигнал снимается с контакта 12 - выхода эмиттерного повторителя, установленного после внутреннего нагрузочного резистора источника тока. К выводу 12 подключен конденсатор С7, который совместно с внутренним ограничительным резистором и резисторами R7, R11 обеспечивает динамические характеристики (постоянные времени нарастания и спада), требуемые для стандартного VU измерителя. Выходной делитель на резисторах R7, R11 необходим для согласования уровней выпрямителя и линейного индикатора. В стандартной схеме включения линейный выпрямитель обеспечивает индикацию уровней сигналов в диапазоне чуть более 20 дБ, что явно недостаточно для качественного усилителя. По этой причине в схему была введена цепь логарифмирования на элементах R8, R10, R12, R13, R14 и VT1, VT2. Она обеспечивает нелинейную нагрузку для внутренних источников выпрямленного тока, поднимая до +20 дБ усиление на слабых сигналах и оставляя его неизменным на больших сигналах. Делитель на резисторах R12-R14 задает точки перегиба кривой логарифмирования. В результате использования цепи логарифмирования удалось расширить диапазон индикации до более чем 40 дБ. В данной схеме можно поэкспериментировать со схемой логарифмирования и оценить ее эффективность. Для того, чтобы отключить схему логарифмирования и перевести детектор в линейный режим, достаточно перемкнуть резистор R8. Резистор R1 регулирует чувствительность выпрямителя, что позволяет применять устройство с различными источниками звуковых сигналов. Для использования выпрямителя на линейном выходе усилителя (250 мВ) требуются резисторы с номиналом 10 кОм, а для подключения к мощному выходу усилителя их номинал потребуется увеличить до нескольких сотен кОм. Точное значение лучше подобрать экспериментально.

$$$

Рисунок 2.12 – Логарифмический измеритель уровня

 

2.3 Разработка принципиальной схемы  устройства

Принципиальная схема разрабатываемого устройства представлена на рисунке 2.11.

Микроконтроллер ?? производит управление всеми периферийными устройствами: цифровым потенциометром DD2, аналого-цифровым преобразователем DD3, жидкокристаллическим модулем DD4, клавиатурой SB1-SB3. Затухание сигнала на DA1 регулируется цифровым потенциометром, который формирует  линейное управляющее напряжение. Логарифмический закон регулировки формируется в самой микросхеме регулятора громкости DA1. Управление ЖК-индикатором и клавиатурой происходит по мультиплексированным выводам порта контроллера, ?? – по шине SPI.

Опишем работу схемы. Звуковой сигнал на входе устройства поступает на регулятор громкости DA1 и на вход логарифмического измерителя уровня DA2. С выхода логарифмического измерителя уровня сигнал 0…4В поступает на вход АЦП. АЦП, по запросу микроконтроллера, производит преобразование сигнала из аналоговой формы в цифровую. Получив данные, контроллер выводит информацию об уровне сигнала на индикатор. В зависимости от режима работы, контроллер записывает в ЦАП необходимый уровень громкости, а также выводит информацию о громкости на ЖК-индикатор. Частоту выборки сигнала из АЦП и запись в ЦАП выберем равной 2 кГц.

Опрос всех периферийный устройств  производится по очереди, с учетом скорости обмена данных.

$$$$

Рисунок 2.13 – Регулятор мощности звукового сигнала с микроконтроллерным управлением, схема электрическая принципиальная

 

3 РАЗРАБОТКА УПРАВЛЯЮЩЕЙ ПРОГРАММЫ

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

Алгоритм основных выполняемых действий микроконтроллера сведем в цикл (основной цикл программы), который можно описать следующим образом:

  • считать уровень звукового сигнала с АЦП;
  • произвести запись в ЦАП необходимое значение для регулятора громкости, которое определяется состоянием контроллера;
  • прочитать состояние клавиатуры и произвести необходимое изменение состояния контроллера;
  • вывести информацию на индикатор и подготовка информации для вывода на индикатор;
  • повтор вышеперечисленных действий с определенным периодом.

Приведем блок-схему основного цикла программы (рисунок 3.1) и дадим более подробное описание ее работы.

 

$$

 

Рисунок 3.1 – Блок схема основного  цикла программы

 

Основной цикл программы выполняет  следующие действия: считывает данные из АЦП, далее, если установлен режим ручной регулировки усиления производит запись содержимого регистра VGr в ЦАП, если же установлен один из видов АРУ, то в регистр VGr заносится число согласно считанному значению из АРУ и регулировочной таблице Uвых(Uвх). Далее, в зависимости от числа проходов основного цикла управляющей программы может произойти вызов одной из следующих подпрограмм (п/п): 1) п/п обработки клавиатуры (вызывается каждые 40 проходов, т.е. с периодом 20 мс); 2) п/п вывода информации на ЖК – индикатор (приблизительно каждые 2 мс); 3) п/п перевода чисел из шестнадцатеричного представления в двоично-десятичное (приблизительно через 0,3 секунды). В конце основного цикла происходит ожидание наступления прерывания от таймера-счетчика 0. После прерывания цикл основной программы запускается снова. Данный подход был применен для решения проблемы обработки различных периферийных устройств с различной скоростью.

Перейдем теперь к описанию подпрограммы обработки клавиатуры.

Подпрограмма обработки клавиатуры разбита на три части – каждая для обработки "своей" клавиши. Здесь программно реализован антидребезг контактов. Выполняемое клавишей действие зависит от выбранного режима работы устройства, а также от предыдущего состояния клавиатуры (например однократное нажатие клавиши или нажатие с последующим ее удержанием).

Приведем описание подпрограммы обработки  клавиши "меню" (рисунок 3.2). Антидребезг контактов работает следующим образом: производится считывание состояние клавиши. Если состояние клавиши не изменилось с прошлого чтения (20 мс назад), то ее значение принимаем за действующее. Если же состояние клавиши изменилось, то новое значение записываем в буфер, а за действующее принимаем предыдущее состояние клавиши. Далее смотрим, нажата ли клавиша, если нет, то производим обработку  следующей

Рисунок 3.2 – Обработка клавиши "меню"

 

кнопки "больше", в противном  случае продолжается выполнение п/п  обработки кнопки "меню". Проверка разрешения клавиатуры необходима для устранения многократного изменения состояния микроконтроллера при удержании клавиши в положении "нажато". Далее проверяется состояния бита меню (активно меню или нет). При значении бита "0", производится его установка (запись "1") – меню становится активным, далее обработка клавиатуры заканчивается. Если же значение бита меню равно "1", то либо происходит загрузка регистра DPTR адресом таблицы выбранной АРУ и сброса режима "усилитель", либо установка режима "усилитель" в зависимости от содержимого переменной VRM (состояние меню). Таким образом происходит загрузка нового режима работы устройства при его выборе клавишей "меню".

Информация о работе Микропроцессорная система