Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсач Кириенко(Серому) / zapiska_MPSDorabotannay.doc
Скачиваний:
10
Добавлен:
29.02.2016
Размер:
1.45 Mб
Скачать

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

1.1Описание принципа работы объекта

В данном курсовом проекте источник импульсов нам не важен. Импульсы будут приходить на вход счетчика таймера Т0. То есть нужно настроить С/Т0 в режим счетчика. В результате число импульсов будет храниться в регистрах TH0 иTL0. Максимальное число импульсов 65025. По заданию необходимо чтобы программа могла рассчитать количество приходящих импульсов в минуту. Для этого необходимо задействовать второй таймерT1, который будет производить непосредственно отсчет времени(минуты). Так же нам необходимо выводить значения на МЖКИ, для этого к контроллеру подключим МЖКИ. Для того чтобы выбрать нужный режим отображения на МЖКИ: количество импульсов или число импульсов в минуту, - введем кнопки, при нажатии которых будет задаваться тот или иной режим.

1.2 Функциональная схема микропроцессорной системы

Функциональная схема системы приведена на рисунке 2 и в графической части проекта.

В данной схеме можно выделить следующие блоки:

  • блок обработки индикации (БОИ) – служит для подготовки вывода информации на индикатор;

  • индикатор (ИНД) - служит для визуализации информации ;

  • таймер (Т) - служит для отсчетов промежутков времени;

  • блок обработки клавиатуры (БОК) - служит для подготовки ввода информации с клавиатуры;

  • клавиатура (К) - служит для ввода информации в микропроцессорную систему.

  • блок счета импульсов (БСИ) - служит для подсчета импульсов

  • блок счета импульсов в минуту (БСИМ)

  • импульс (И)

Рисунок 2 – функциональная схема микропроцессорной системы

2 Разработка аппаратной части системы

2.1 Краткое описание микропроцессорного комплекта

Микроконтроллер AT89C51 фирмыATMELпредставляет высокопроизводительный 8-разрядный КМОП микрокомпьютер с Flash ПЗУ.

Основные параметры:

  • Совместимость с приборами семейства MCS-51TM

  • Емкость перепрограммируемой Flash памяти: 4 Кбайт, 1000 циклов стирание/запись.

  • Напряжение питания 5±20% B

  • Полностью статический прибор - диапазон рабочих частот от 0 Гц до 24 МГц.

  • Группы по частотам: 12 МГц, 16 МГц, 20 Мгц и 24 Мгц

  • Трехуровневая блокировка памяти программ

  • СОЗУ емкостью 128 байтов

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

  • Два 16-разрядных таймера/счетчика событий

  • Шесть источников сигналов прерывания

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

  • Пассивний (idle) и стоповый (power down) режимы

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

  • режимы пониженного потребления питания

Условное обозначение приведено на рисунке 3.

Рисунок 3 – Условное обозначение микросхемы AT89C51

Микросхема конструктивно оформлена в 40-контактном пластиковом корпусе типа DIP.

КМОП микроконтроллер АТ89С51, оснащенный Flash программируемым и стираемым ПЗУ , совместим по системе команд и по выводам со стандартными приборами семейства MCS-51TM. Микроконтроллер содержит 4 Кбайта Flash ПЗУ, 128 байтов ОЗУ, 32 программируемых линий ввода/вывода, два 16-разрядных таймера/счетчика событий, полнодуплексный последовательный порт (UART), пять векторных двухуровневых прерывания, встроенный генератор и схему формирования тактовой последовательности.

Существуют два варианта микроконтроллеров АТ89С51: с возможностью внутрисистемного программирования с использованием при программировании напряжения 5 В, и программирование с использованием напряжения 12 В, применяемого в большинстве программаторов. Содержимое Flash памяти программ может быть защищено от несанкционированной записи/считывания. Имеется возможность очистки Flash памяти за одну операцию, возможность считывания встроенного кода индентификации.

Потребление в активном режиме на частоте 12 Мгц не превышает 20 мА и в пассивном режиме, при котором остановлено ЦПУ, но система прерываний, ОЗУ, таймеры/счетчики событий и последовательный порт остаются активными, потребление не превышает 5 мА. В стоповом режиме потребление не превышает 100 мкА и 20 мкА при напряжении питания 6 В и 3 В, соответственно.

Микроконтроллер АТ89С51 ориентирован на использование в качестве встроенного управляющего контроллера.

Назначение выводов приведено в таблице 1.

Таблица 1 – Назначение выводов микросхемы AT89C51

Структурная схема контроллера приведена на рисунке 4.

Рисунок 4 - структурная схема контроллера AT89C51

Рассмотрим таймеры контроллера.

Два программируемых 16-битных таймера/счетчика (T/C0 и T/C1) могут быть использованы в качестве таймеров или счетчиков внешних событий. При работе в качестве таймера содержимое T/C инкрементируется в каждом машинном цикле, т.е. через каждые 12 периодов резонатора. При работе в качестве счетчика содержимое Т/С инкрементируется под воздействием перехода из 1 в 0 внешнего входного сигнал; подаваемого на соответствующий (T0, T1) вывод МК51. Опрос значения внешнего входного сигнала выполняется в момент времени S5P2 каждого машинного цикла. Содержимое счетчика будет увеличено на 1 в том случае, если в предыдущем цикле был считан входной сигнал высокого уровня (1), а в следующем – сигнал низкого уровня (0). Новое (инкрементированное) значение счетчика будет сформировано в момент S3P1 в цикле, следующем за тем, в котором был обнаружен переход сигнала из 1 в 0. Так как на распознавание перехода требуется два машинных цикла, то максимальная частота подсчета входных сигналов равна 1/24 частоты резонатора. На длительность периода входных сигналов ограничений сверху нет. Для гарантированного прочтения входного считаемого сигнала он должен удерживать значение 1 как минимум течение одного машинного цикла МК51.

Для управления режимами работы T/C и для организации взаимодействия таймеров с системой прерывания используются два регистра специальных функций (TCON и TMOD), описание которых приводится в таблице 2 и таблице 3 соответственно. Как следует из описания управляющих бит TCON, для обоих T/C режимы работы 0, 1 и 2 одинаковы. Режимы для T/C0 и T/C1 различны. Рассмотрим кратко работу T/C во всех четырех режимах.

Таблица 2 - Регистр режима работы таймера / счетчика

Таблица 3 - Регистр управления / статуса таймера

Режим 0. Перевод любого Т/С в режим 0 делает его похожим на таймер МК48 (8-битный счетчик), на вход которого подключен 5-битный предделитель частоты на 32. Работу Т/Cв режиме 0 на примере Т/C1 иллюстрирует. В этом режиме таймерный регистр имеет разрядность 13 бит. При переходе из состояния "все единицы" в состояние "все нули" устанавливается флаг прерывания от таймераTF1. Входной синхросигнал таймера 1 разрешен (поступает на входT/C), когда управляющий битTR1 установлен в 1 и либо управляющий битGATE(блокировка) равен 0, либо на внешний вывод запроса прерывания ¬INT1 поступает уровень 1.

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

Режим 1. Работа любого Т/С в режиме 1 такая же, как и в режиме 0, за исключением того, что таймерный регистр имеет разрядность 16 бит.

Режим 2. В режиме 2 работа организована таким образом, что переполнение (переход из состояния "все единицы" в состояние "все нули") 8-битного счетчика TL1 приводит не только к установке флагаTF1,но и автоматически перезагружает вTL1 содержимое старшего байта (TH1) таймерного регистра, которое предварительно было задано программным путем. Перезагрузка оставляет содержимое ТН1 неизменным. В режиме 2 Т/С0 и Т/С1 работают совершенно одинаково.

Режим 3. В режиме 3 Т/C0 и Т/C1 работают по- разному. Т/C1 сохраняет неизменным свое текущее содержимое. Иными словами, эффект такой же, как и при сбросе управляющего битаTRIв нуль.

Работу T/C0 в режиме 3 иллюстрирует. В режиме 3TL0 и ТН0 функционируют как два независимых 8-битных счетчика. РаботуTL0 определяют управляющие битыT/C0 (C/ ¬T,GATE,TR0), входной сигнал ¬INT0 и флаг переполненияTF0, РаботуTH0, который может выполнять только функции таймера (подсчет машинных циклов МК), определяет управляющий битTR1. При этом ТН0 использует флаг переполненияTF1.

Режим 3 используется в тех случаях применения МК51, когда требуется наличие дополнительного 8-битного таймера или счетчика событий. Можно считать, что в режиме 3 МК51 имеет в своем составе три таймера/счетчика. В том случае, если Т/С0 используется в режиме 3, Т/С1 может быть или включен, или выключен, или переведен в свой собственный режим 3, или может быть использован последовательным портом в качестве генератора частоты передачи, или, наконец, может быть использован в любом применении, не требующем прерывания.

Соседние файлы в папке Курсач Кириенко(Серому)