Смекни!
smekni.com

Разработка микропроцессорной системы на базе микроконтроллера - синтезатора игры пианино в пределах (стр. 1 из 5)

Реферат

Пояснительная записка состоит из 49 страниц, 6 рисунков, 2 таблиц, 4 источников.

Микроконтроллер, МЕЛОДИЯ, Датчик, СВЕТОДИОД.

Цель работы: разработка микропроцессорной системы на базе микроконтроллера, синтезатора игры на пианино в пределах одной октавы, обеспечивающий проигрывание мелодии из памяти и проигрывания нот при нажатии клавиш, индикацию состояния нажатия клавиш при помощи светодиодов. Задание режима проигрывания мелодии осуществляется при помощи специальной кнопки. Проигрывание мелодии отображается специальным светодиодом.

Содержание работы: в работе выполнено построение структурной схемы, построение функциональной схемы, сформирован алгоритм работы системы, выбор элементной базы, оптимальной для реализации поставленных задач по диапазону характеристик, разработана программа, разработана принципиальная схема устройства.

Содержание

Введение

1. Описание объекта

2. Функциональная спецификация

3. Описание структуры системы

4. Описание ресурсов МК РIC16F876

4.1.Набор регистров РIC

4.2.Регистры общего назначения

4.3. Специальные регистры W, INTCON, OРTION

4.4. Сторожевой таймер WDT

4.5. Тактовый генератор

4.6. Схема сброса

4.7. Система команд микроконтроллера РIC16F876

4.8. Ассемблирование

4.9. Программирование микроконтроллера

5.Разработка алгоритма работы устройства

6. Описание функциональных узлов МПС и алгоритма их взаимодействия

7. Описание выбора элементной базы и работы принципиальной схемы

Заключение

Список литературы

Приложение А. Листинг программы и объектный файл

Приложение Б. Схема электрическая принципиальная

Введение

Современную микроэлектронику трудно представить без такой важной составляющей, как микроконтроллеры. Микроконтроллеры незаметно завоевали весь мир. Микроконтроллерные технологии очень эффективны. Одно и то же устройство, которое раньше собиралось на традиционных элементах, будучи собрано с применением микроконтроллеров, становится проще, не требует регулировки и меньше по размерам. С применением микроконтроллеров появляются практически безграничные возможности по добавлению новых потребительских функций и возможностей к уже существующим устройствам. Для этого достаточно просто изменить программу.

Однокристальные (однокорпусные) микроконтроллеры представляют собой приборы, конструктивно выполненные в виде БИС и включающие в себя следующие составные части: микропроцессор, память программ и память данных, а также программируемые интерфейсные схемы для связи с внешней средой.

Мировая промышленность выпускает огромную номенклатуру микроконтроллеров. По области применения их можно разделить на два класса: специализированные, предназначенные для применения в какой-либо одной конкретной области (контроллер для телевизора, контроллер для модема, контроллер для компьютерной мышки ) и универсальные, которые не имеют конкретной специализации и могут применяться в самых различных областях микроэлектроники, с помощью которых можно создать как любое из перечисленных выше устройств, так и принципиально новое устройство.

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

Применение цифрового управления имеет ряд несомненных преимуществ перед аналоговым:

1. Существенно упрощается проектирование аппаратной части звукового тракта.

2. Многократно расширяются возможности по обработке звукового сигнала.

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

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

1. Описание объекта

Синтезатор предназначен для воспроизведения звучания 7 нот в пределах одной октавы-«до», «ре», «ми», «фа», «соль», «ля», «си», «до», подобно пианино. Он должен иметь 7 клавиш, каждая из которых соответствует своей ноте. При нажатии на клавишу, динамик будет воспроизводить соответствующую ноту. Если будут нажаты сразу несколько кнопок, то частота звучания будет соответствовать среднеарифметической частоте нажатых клавиш. При нажатии последовательности клавиш устройство будет записывать мелодию в память и проигрывать при нажатии специальной кнопки. Состояние нажатия кнопок выводится на 7 светодиодов, а во время проигрывания записанной мелодии горит восьмой светодиод.

2. Функциональная спецификация

1. Входы

a. 7 кнопок нот

b. Кнопка запуска (включение питания)

c. Кнопка воспроизведения мелодии из памяти

2. Выходы

a. 7 светодиодов клавиш

b. 1 светодиод воспроизведения

c. Звуковой динамик

3. Функции

a. Запись мелодии в память.

b. Выдача частоты нажатой ноты на динамик.

c. Воспроизведение мелодии из памяти.

d. Индикация нот

e. Индикация воспроизведения мелодии.

3. Описание структуры системы

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

Рис. 1. Структурная схема синтезатора.

4. Описание ресурсов МК РIC16F876

В курсовом проекте был выбран однокристальный 8-разрядный Flash CMOS микроконтроллер РIC16F876.

РIC16F87X - это 8-разрядные микроконтроллеры с RISC архитектурой, производимые фирмой Microchiр Technology. Это семейство микроконтроллеров отличается низкой ценой, низким энергопотреблением и высокой скоростью. Микроконтроллеры имеют встроенное ЭППЗУ программы, ОЗУ данных и выпускаются в 18 и 28 выводных корпусах.

Микроконтроллеры семейства РIC имеют очень эффективную систему команд, состоящую всего из 35 инструкций.

Все инструкции выполняются за один цикл, за исключением условных переходов и команд, изменяющих программный счетчик, которые выполняются за 2 цикла. Один цикл выполнения инструкции состоит из 4 периодов тактовой частоты. Таким образом, при частоте 4 МГц, время выполнения инструкции составляет 1 мксек. Каждая инструкция состоит из 14 бит, делящихся на код операции и операнд (возможна манипуляция с регистрами, ячейками памяти и непосредственными данными).

Высокая скорость выполнения команд в РIC достигается за счет использования двухшинной Гарвардской архитектуры вместо традиционной одношинной Фон-Hеймановской. Гарвардская архитектура основывается на наборе регистров с разделенными шинами и адресным пространством для команд и для данных. Набор регистров означает, что все программные объекты, такие как порты ввода/вывода, ячейки памяти и таймер, представляют собой физически реализованные аппаратные регистры.

Использование Гарвардской архитектуры позволяет достичь высокой скорости выполнения битовых, байтовых и регистровых операций. Кроме того, Гарвадская архитектура допускает конвейерное выполнение инструкций, когда одновременно выполняется текущая инструкция и считывается следующая. В традиционной же Фон-Hеймановской архитектуре команды и данные передаются через одну разделяемую или мультиплексируемую шину, тем самым ограничивая возможности конвейеризации.

внутренние физические и логические компоненты, из которых состоит РIC16CXX аналогичны любому другому микроконтроллеру Гарвардская архитектура и большая разрядность команды позволяют сделать код для РIC значительно более компактным, чем для других микроконтроллеров и существенно повысить скорость выполнения программ.

4.1 Набор регистров РIC

Все программные объекты, с которыми может работать РIC, представляют собой физические регистры. Набор операционных регистров состоит из регистра косвенной адресации (f0), регистра таймера/счетчика (f1), программного счетчика (f2), регистра слова состояния (f3), регистра выбора (f4) и регистров ввода/вывода (f5,f6).

4.2 Регистры общего назначения

Регистры общего назначения представляют собой статическое ОЗУ, расположенное по адресам 0Ch-2Fh.

4.3 Специальные регистры W, INTCON, OРTION

К ним относятся рабочий регистр W, используемый в большинстве команд в качестве регистра аккумулятора и регистры INTCON и OРTION. Регистр прерываний INTCON (адрес 0Bh) служит для управления режимами прерывания и содержит биты разрешения прерываний от различных источников и флаги прерываний. Регистр режимов OРTION (адрес 81h) служит для задания источников сигнала для предварительного делителя и таймера/счетчика, а также для задания коэффициента деления предварительного делителя, активного фронта сигнала для RTCC и входа прерывания. Кроме того при помощи регистра OРTION могут быть включены нагрузочные резисторы для разрядов порта B, запрограммированных как входы.

4.4 Сторожевой таймер WDT

Сторожевой таймер WDT предназначен для предотвращения катастрофических последствий от случайных сбоев программы. Он также может быть использован в приложениях, связанных со счетом времени, например, в детекторе пропущенных импульсов. Идея использования сторожевого таймера состоит в регулярном его сбрасывании под управлением программы или внешнего воздействия до того, как закончится его выдержка времени и не произойдет сброс процессора. Если программа работает нормально, то команда сброса сторожевого таймера CLRWDT должна регулярно выполняться, предохраняя процессор от сброса. Если же микропроцессор случайно вышел за пределы программы (например, от сильной помехи по цепи питания) либо зациклился на каком-либо участке программы, команда сброса сторожевого таймера скорее всего не будет выполнена в течение достаточного времени, и произойдет полный сброс процессора, инициализирующий все регистры и приводящий систему в рабочее состояние.