- •1. Функциональная схема
- •2. Описание принципиальной схемы
- •2.1. Микроконтроллер Microchip pic16f747
- •2.1.1. Карта памяти
- •2.1.2. Реализация интерфейса i2c Концепция шины i2c
- •2.2. Блок ацп
- •2.3. Блок цап
- •2.4. Клавиатура и дисплей
- •3. Разработка блока питания
- •4. Программная часть. Программа опроса клавиатуры
- •Список использованных источников
Федеральное агентство по образованию | ||||
ГОУ ВПО | ||||
Ивановский государственный энергетический университет имени В.И. Ленина | ||||
Кафедра Электроники и Микропроцессорных Систем | ||||
Курсовой проект Микропроцессорная система управления | ||||
| ||||
Выполнил |
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еймановской. Гарвардская архитектура основывается на наборе регистров с разделенными шинами и адресным пространством для команд и для данных. Набор регистров означает, что все программные объекты, такие как порты ввода/вывода, ячейки памяти и таймер, представляют собой физически реализованные аппаратные регистры.
Основные особенности микроконтроллера:
8-разрядная RISC архитектура: 35 команд (большинство выполняется за 1 такт), производительность до 16 миллионов операций в секунду при тактовой частоте 20 МГц;
4 кБайт FLASH-памяти программ, программируемой внутрисхемно;
4 кБайт энергонезависимой памяти данных;
368 Байт встроенной статической оперативной памяти;
1 16-разрядный и 2 8-разрядных таймера-счетчика, таймер реального времени с отдельным асинхронным тактовым генератором;
контроллеры интерфейсов AUSART и I2C;
14-канальный 10-разрядный АЦП;
программируемый сторожевой таймер;
встроенный генератор сигнала сброса при включении питания и по снижению уровня напряжения питания;
Набор команд микроконтроллера 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 14 1,2 14 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, через стандартизованный разъем.