Midi-контроллеры клавиатурного типа

курсовая работа

1. Выбор микроконтроллера

Для использования в данном устройстве мной был выбран микропроцессор Aduc 812. Так как Он обладает высокими техническими характеристиками, имеет встроенный АЦП и ЦАП, что позволяет существенно упростить схему. Другой весьма важный довод, что данный контроллер мне наиболее хорошо знаком по курсу лабораторных работ и допускает написание программ на языке высокого уровня PLM. Вкратце приведу его технические характеристики:

АНАЛОГОВЫЙ ВВОД/ВЫВОД

8-канальный прецизионный 12-разрядный АЦП

Встроенный 20ppm/°C ИОН

Высокая скорость выборок 200 кSPS

Контроллер канала ПДП к внешней памяти данных

Два 12-разрядных ЦАП с вольтовым выходом

Внутренний температурный сенсор

ПАМЯТЬ

8 Кбайт FLASH памяти программ

640 байт FLASH памяти данных

Внутренний генератор подкачки заряда

256 байт внутренней памяти данных

16 Мбайт пространства внешней памяти данных

64 Кбайт пространства внешней памяти программ

8051 - СОВМЕСТИМОЕ ЯДРО

12МГц номинальная частота [16МГц - макс.]

Три 16-разрядных счетчика/таймера

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

Порт с высоким током - Порт3

9 источников прерываний, 2 уровня приоритета

ПИТАНИЕ

Специфицирован для работы от 3В до 5В

Режимы: нормальный, холостой и дежурный

Последовательный порт UART

2-Проводной (I°C) и/или SPI порт

Сторожевой таймер (WDT)

Монитор источника питания

Описание имеющихся портов.

Цоколевка отдельных выводов имеет вид:

DVDD Положительное номинальное цифровое питание +3В или +5В.

XTAL2 Инвертирующий выход генераторного усилителя.

XTAL1 Вход усилителя и вход доступа к внутренним цепям генератора.

DGND Цифровая земля. Общая точка цифровых цепей.

Р0 двунаправленный Порт 0 с открытым истоком. Контакты порта с записанными в них "1" являются плавающими и могут быть высокоимпедансными входами. При обращении к внешней памяти программ или данных порт 0 мультиплексирован магистралями младшего байта адреса и данных. При такой операции порт подтянут внутренним образом при наличии в нем "1".

Р1 по умолчанию настраивается на ввод аналоговых сигналов, для конфигурирования контактов на цифровой ввод следует записать 0 соответствующий бит порта. Порт1 - многофункционален.

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

Р3 Двунаправленный Порт 3 с внутренними, подтягивающими к питанию резисторами.

Контакты Порта 3, с записанными в них "1" подтянуты вверх и могут использоваться как входы. При таком использовании, следует иметь в виду, что они дают ток во внешнюю цепь. Контакты Порта 3 - мультиплексны.

DAC0 Выходное напряжение с ЦАП 0.

Цифро-аналоговый преобразователь.

ADuC812 на кристалле содержит два 12-разрядных Ц/А преобразователя. Один SFR управления и четыре SFR данных осуществляют управление работой ЦАП:

DAC0L/DAC1L - содержат 8 младших разрядов данных ЦАП

DAC0H/DAC1H - содержат 4 старших разрядов данных ЦАП

DACCON - содержат биты управления ЦАП общего назначения

При нормальной работе каждый ЦАП модифицируется только тогда, когда записывается младшая часть разряда SFR (DACxL). Можно модифицировать оба ЦАП одновременно, используя бит SYNC в регистре SFR DACCON. При 8-разрядной работе байт, записанный в регистры DACxL, автоматически направляется в верхнюю часть 12-разрядного регистра данных ЦАП.

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

Блок АЦП включает в себя восьмиканальный пяти микросекундный А/Ц преобразователь с однополярным питанием. Пользователю предоставлены многоканальный мультиплексор, устройство выборки - хранения, встроенный ИОН, система калибровок и собственно АЦП. Все компоненты блока легко управляется через три интерфейсных регистра специального назначения. А/Ц преобразователь состоит из стандартного конвертера последовательного приближения и емкостного ЦАП. Конвертер получает аналоговые входные сигналы в диапазоне 0 - Vref. На кристалле расположен ИОН - прецизионный блок с низким дрейфом, откалиброванный изготовителем до 2.5В.

На контакте Vref внутренний ИОН может быть подавлен внешним. Внешний ИОН может быть в диапазоне от 2.3В до Vref .

Однократный или повторяющийся режимы преобразования могут выполняться программно или подачей внешнего сигнала запуска преобразования на контакт 25 (CONVST/). Также для инициирования повторяющегося процесса преобразования можно использовать сигналы Таймера2. АЦП можно установить в режим передачи данных по каналу прямого доступа к памяти - ПДП (DMA),когда блок повторяет циклы преобразования и посылает выборки во внешнюю память данных (RAM),минуя процессор. Этот процесс может охватывать весь объем внешней памяти 16МБ. ADuC812 поставляется с заводскими калибровочными коэффициентами, которые загружаются автоматически по включению питания, обеспечивая тем самым оптимальную работу устройства. Ядро АЦП содержит внутренние регистры калибровок Смещения и Усиления, причем, обеспечено, чтобы программная процедура калибровки пользователя подавляла заводские установки, давая тем самым минимум ошибок в конечной системе. Если необходимо, то через АЦП можно так же преобразовать сигнал внутреннего температурного сенсора.

Делись добром ;)