Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовой проект микропроцессоры .doc
Скачиваний:
40
Добавлен:
16.03.2016
Размер:
2.26 Mб
Скачать

28

Федеральное агентство по образованию

ГОУ ВПО

Ивановский государственный энергетический университет имени В.И. Ленина

Кафедра Электроники и Микропроцессорных Систем

Курсовой проект

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

Выполнил

22.12.08

студент гр. 4-35 Лезнов В.С.

Проверили

к.т.н. доц. Софронов С.В., Копылова Л.Г.,

к.т.н. доц. Волков А.В., Краснушкин А.И.

Иваново 2008

Задание

3

Введение

4

1.

Функциональная схема

5

2.

Описание принципиальной схемы

6

2.1. Микроконтроллер Microchip PIC16F747

6

2.1.1. Карта памяти

10

2.1.2. Реализация интерфейса I2C

12

2.2. Блок АЦП

14

2.3. Блок ЦАП

15

2.4. Клавиатура и дисплей

17

3.

Разработка блока питания

21

4.

Программная часть

22

Список использованных источников

24

Введение

Одной из характерных особенностей нынешнего этапа научно-технического прогресса является все более широкое применение микроэлектроники в различных отраслях промышленности и народного хозяйства.

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

В микропроцессорной технике выделился самостоятельный класс больших интегральных схем (БИС) – микроконтроллеров, которые предназначены для «интеллектуализации» оборудования различного назначения. Архитектура однокристальных микроЭВМ - результат эволюции архитектуры микропроцессоров и микропроцессорных систем, обусловленной стремлением существенно снизить их аппаратные затраты и стоимость.

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

1. Функциональная схема

Рис. 1. Функциональная схема устройства

Микропроцессорная система включает в себя:

а) микроконтроллер PIC16F747 со встроенным модулем интерфейса I2C;

б) 8-канальный 12-разрядный АЦП с параллельным интерфейсом;

в) 2-канальный 10-разрядный умножающий ЦАП с интерфейсом I2C;

г) клавиатуру 28 клавиш (матрица 7*4);

д) LCD индикаторы (ЖК дисплей на 10 знакомест).

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

аналоговые сигналы (7 каналов) – через АЦП;

числовые данные и управление функциями – через клавиатуру;

цифровая информация с внешних цифровых источников, в том числе потоки цифровых данных, – через интерфейс I2C.

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

аналоговый сигнал управления (напряжение, 2 канала) – через ЦАП;

цифровая и буквенная информация – через дисплей;

данные о текущем состоянии устройства, а также потоки цифровых данных для внешних цифровых устройств – через интерфейс I2C.

2. Описание принципиальной схемы

Ниже приводится описание основных блоков устройства, основные соображения по выбору элементной базы и общее описание функционирования.

2.1. Микроконтроллер Microchip pic16f747

Основой системы служит микроконтроллер PIC16F747 фирмы Microchip. Наличие в задании требования реализации интерфейса I2C привело к решению применить микроконтроллер со встроенным модулем этого интерфейса. Выбор архитектуры PIC вызван предыдущим опытом работы с процессорами данного типа, богатым функциональным оснащением и высоким быстродействием кристалла при умеренной цене. На рисунке 2 приведена структурная схема, а на рисунке 3 – расположение выводов данного микроконтроллера.

Рис. 2. Структурная схема Microchip PIC16F747

Рис. 3. Расположение выводов Microchip PIC16F747 в корпусе PDIP40

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

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

Основные особенности микроконтроллера:

  1. 8-разрядная RISC архитектура: 35 команд (большинство выполняется за 1 такт), производительность до 16 миллионов операций в секунду при тактовой частоте 20 МГц;

  2. 4 кБайт FLASH-памяти программ, программируемой внутрисхемно;

  3. 4 кБайт энергонезависимой памяти данных;

  4. 368 Байт встроенной статической оперативной памяти;

  5. 1 16-разрядный и 2 8-разрядных таймера-счетчика, таймер реального времени с отдельным асинхронным тактовым генератором;

  6. контроллеры интерфейсов AUSART и I2C;

  7. 14-канальный 10-разрядный АЦП;

  8. программируемый сторожевой таймер;

  9. встроенный генератор сигнала сброса при включении питания и по снижению уровня напряжения питания;

Набор команд микроконтроллера PIC16F84

Таблица 1

Мнемоника, операнды

Описание

Число циклов

14битный код

Ст. бит Мл.бит

Влияние на флаги

Прим

Байториентированные команды

ADDWF

ANDWF

CLRF

CLRW

COMF

DECF

DECFSZ

INCF

INCFSZ

IORWF

MOVF

MOVWF

NOP

RLF

RRF

SUBWF

SWAPF

XORWF

f, d

f, d

f

-

f, d

f, d

f, d

f, d

f, d

f, d

f, d

f

-

f,d

f, d

f, d

f, d

f, d

Прибавить рабочий регистр к f

Побитное “И” рабочего регистра и f

Очистить f

Очистить рабочий регистр

Инвертировать f

Вычесть 1 из f

Вычесть 1 из f, пропустить, если 0

Прибавить 1 к f

Прибавить 1 к f, пропустить, если 0

Побитное “ИЛИ” рабочего регистра и f

Переслать f

Переслать рабочий регистр в f

Нет операции

Циклический сдвиг f влево через перенос

Циклический сдвиг f вправо через перенос

Вычесть рабочий регистр из f

Поменять местами полубайты в f

Исключающее “ИЛИ” рабочего регистра и f

1

1

1

1

1

1

1(2)

1

1(2)

1

1

1

1

1

1

1

1

1

00 0111 dfff ffff

00 0101 dfff ffff

00 0001 1fff ffff

00 0001 0000 0011

00 1001 dfff ffff

00 0011 dfff ffff

00 1011 dfff ffff

00 1010 dfff ffff

00 1111 dfff ffff

00 0100 dfff ffff

00 1000 dfff ffff

00 0000 1fff ffff

00 0000 0xx0 0000

00 1101 dfff ffff

00 1100 dfff ffff

00 0010 dfff ffff

00 1110 dfff ffff

00 0110 dfff ffff

C, DC, Z

Z

Z

Z

Z

Z

Z

Z

Z

C

C

C, DC, Z

Z

1,2

1,2

2

1,2

1,2

14

1,2

14

1,2

1,2

1,2

1,2

1,2,5

1,2

1,2

Биториентированные команды

BCF

BSF

BTFSC

BTFSS

f, b

f, b

f, b

f, b

Очистить бит b в f

Установить бит b в f

Проверить бит b в f, пропустить, если 0

Проверить бит b в f, пропустить, если 1

1

1

1(2)

1(2)

01 00bb bfff ffff

01 01bb bfff ffff

01 10bb bfff ffff

01 11bb bfff ffff

1,2

1,2

3,4

3,4

Команды с операндамиконстантами и команды управления

ADDLW

ANDLW

CALL

CLRWDT

GOTO

IORLW

MOVLW

RETFIE

RETLW

RETURN

SLEEP

SUBLW

XORLW

k

k

k

-

k

k

k

-

k

-

-

k

k

Прибавить константу к рабочему регистру

Побитное “И” рабочего регистра и константы

Вызов подпрограммы

Очистить WDT

Безусловный переход

Побитное “ИЛИ” раб. регистра и константы

Переслать константу в рабочий регистр

Возврат с разрешением прерываний

Возврат с константой в рабочем регистре

Возврат из подпрограммы

Войти в режим SLEEP

Вычесть рабочий регистр из константы

Исключающее “ИЛИ” раб. рег. и константы

1

1

2

1

2

1

1

2

2

2

1

1

1

11 111x kkkk kkkk

11 1001 kkkk kkkk

10 0kkk kkkk kkkk

00 0000 0110 0100

10 1kkk kkkk kkkk

11 1000 kkkk kkkk

11 00xx kkkk kkkk

00 0000 0000 1001

11 01xx kkkk kkkk

00 0000 0000 1000

00 0000 0110 0011

11 110x kkkk kkkk

11 1010 kkkk kkkk

C, DC, Z

Z

и

Z

и

C, DC, Z

Z

Программирование контроллера осуществляется любым программатором, совместимым с процессорами PIC, через стандартизованный разъем.