Микроконтроллеры
СОДЕРЖАНИЕ
ВВЕДЕНИЕ
В медицине и бытовой сфере проблема эффективного использования тепловой энергии - одна из важнейших. Ее решение возможно только при комплексной автоматизации всего теплотехнического оборудования с помощью различных цифровых приборов локального учета, контроля и управления (с возможностью соединения таких приборов в локальную вычислительную сеть для создания систем глобального регулирования всего объекта).
AVR-микроконтроллеры в
Однокристальная микро-ЭВМ (микроконтроллер) представляет собой, построенную вокруг микропроцессора вычислительную систему, которая выполнена на одном кристалле вместе с микропроцессором.
В данной работе используется микроконтроллер AТmega103 фирмы Atmel. Микросхема выполнена в 40-выводном корпусе, что дает безусловный выигрыш. Таким образом, микроконтроллер имеет (4 внешних порта РА ,РВ,РС и РD). Прибор обеспечивает производительность, приближающуюся к 1 МГц. Архитектура эффективно поддерживает как языки высокого уровня, так и программы на языке ассемблер. Микроконтроллер AТmega103 [3, стр.50] содержит: 4Кбайта загружаемого ПЗУ, 256 байтов СОЗУ дает возможность наращивать память данных, программируемый последовательный UART, программируемый сторожевой таймер и многое другое.
Стандартное решение такой конструкторской задачи - построение схемы, выполняющей следующую последовательность действий:
- преобразование сопротивления в напряжение при помощи источника тока;
- преобразование напряжения в код при помощи встроенного в контроллер аналогово-цифрового преобразователя (АЦП);
- подача полученного кода в микроконтроллер (МК), где полученная информация обрабатывается и передается дальше.
Сегодня некоторые зарубежные
фирмы выпускают АЦП,
Целью моей курсовой работы является исследование принципа устройства .......... и характеристик микроконтроллера.
В работе рассмотрены следующие вопросы: описание принципиальной и функциональной схемы, характеристики микроконтроллеров.
1
Общая часть
1.1 Основные требования предъявляемые к устройству
Согласно заданию схема должна содержать следующие блоки:
- Стабилизатор напряжения (необходим для преобразования напряжения 10-30В, в 5В).
- Микроконтроллер (служит для управления всеми блоками данной схемы).
- Датчик температуры.
- Источник тока (необходим для измерения температуры, так как на термометр сопротивления необходимо подавать постоянный ток).
- Источник опорного напряжения (для создания опорного напряжения в АЦП).
- Последовательный интерфейс для связи с ПК (необходим для передачи полученных данных в персональный компьютер).
- Дисплей (предназначен для отображения измеряемых данных).
- Клавиатуру (по нажатию какой либо кнопки мы можем измерять температуру или просмотреть уже измеренную).
- Супервизор напряжения (вырабатывает общий сигнал сброса).
1.2.
Характеристики
Развитие
семейства MSP430 приведено на рисунке
1.
Рисунок 1-Развитие семейства MSP430P325
16 разрядный микроконтроллер MSP430P325IPG производства TEXAS INSTRUMENTS.
Таблица 1 - Параметры микроконтроллера MSP430P325IPG
| Наименование | характеристики |
| Разрядность | 16 |
| Масочное ПЗУ | нет |
| Flash | нет |
| EEPROM | 16k |
| RAM | 512 |
| Линий I/O | 14 |
| АЦП | 6/14 |
| Компаратор | нет |
| Встроенный генератор | есть |
| Интерфейсы | LCD 84сег |
| Рабочая частота | 8 МГц |
| Корпус | QFP64 |
Основные
параметры микроконтроллера MSP430P325IPG
представлена в таблице1
Микроконтроллер
MSP430P325IPG имеет встроенный стабилизатор
тока 0…6 мА и 12-разърядный АЦП с расширением
до 14-разрядов. Поэтому измерение температуры
с применением микроконтроллера MSP430P325IPG
не представляет особых трудностей.
2 ОСНОВНАЯ ЧАСТЬ
2.2
Разработка функциональной
схемы устройства
Функциональная схема представленная на рис. 1. состоит из следующих блоков:
1) Стабилизатор напряжения. На вход данной микросхемы подается напряжение 10-30В с выхода получаем постоянное напряжение 5В. Напряжение 5в необходимо для питания микросхем.
- Микроконтроллер. На данную микросхему также подается земля и питание. Сигнал сброса и на его входы также поступают сигналы от различных устройств таких как датчик температуры, последовательный интерфейс обмена, клавиатура, устройство отображения и др. т.е данная микросхема управляет всеми остальными.
- Датчик температуры. Представлен в виде термометра сопротивления и через должен него протекает постоянный ток, чтобы с выводов снимать изменяющееся напряжение. Напряжение будет изменяться в зависимости от температуры.
- Источник тока. С выхода данной микросхемы снимаем постоянный ток, на вход подается земля и питание.
- Источник опорного напряжения. На вход земля и питание, с выхода получаем постоянное напряжение 2,5В. Опорное напряжение для встроенного АЦП.
- Последовательный интерфейс. Он управляется от микроконтроллера, т.е. на его входы кроме питания и земли, подаются сигналы (RE,R0,DE,DO) по которым происходит считывание или запись данных в компьютер по последовательному порту.
- Клавиатура. С выхода идет код в микроконтроллер, который там обрабатывается и по нему выполняется какая либо операция, на вход подается земля.
- Дисплей. Предназначен для вывода измерений. Выводом данных на экран управляет микроконтроллер, поэтому на входы данного блока также поступают сигналы управления и сами данные с микроконтроллера. На вход также подается земля и питание.
- Супервизор напряжения. На выходе данного блока формируется общий сигнал сброса, на вход подаются земля и питание.
Рисунок
1 — Функциональная схема микроконтроллера
AVR
2.3
Описание принципиальной
электрической схемы
Согласно заданию требуется исследовать цифровой медицинский термометр на базе контролера AVR. Микроконтроллер имеет достаточное число выводов, напряжение питания от 2,7 до 6 В, есть программируемый полный дуплексный UART (так как мне необходимо организовать последовательную связь с компьютером). Еще в нем имеется сторожевой таймер, внутренняя память и в данном микроконтроллере имеется возможность применить языки высокого уровня для его программирования.
Для супервизора напряжения
- напряжение питания до 5В,
- высокий и низкий уровень сигнала Reset,
- время сигнала Reset 350 мС, потребляемый ток 45мкА,
- температурный диапазон от –40до +85 гр.С
По характеристикам эта схема подходит для данного устройства.
Для связи с компьютером
Также используется датчик
Для устройства необходим
жидко кристаллический
- напряжение питания 5В
- двух строчечный
- со встроенным контроллером, русским алфавитом и наиболее дешевый
Данными свойствами обладает модуль PG1602.
Термометр
смонтирован на двухслойной печатной
пластине. На её лицевой стороне
помещены ЖК-индикатор и кнопки. Микроконтроллер
и остальные элементы установлены на обратной
стороне. В Цифровом термометре применены
SMD-контроллеры. Печатная плата термометра
помещена в стандартный корпус, в верхней
части которого находится разъём для температурного
зонда. Расположение основных элементов
цифрового термометра в нутрии корпуса
показано на рис.3.
Рисунок 3- принципиальная электрическая схема.
Печатная
плата крепится четырьмя
Термометр обладает следующими характеристиками:
1.погрешность измерения ( аппаратная) – в диапазоне от -50 до 199,9°С;
2.погрешность измерения ( аппаратная) в диапазоне от +200°С до +450°С_±0,1°С;
3.период измерения температуры равен 1с;
4.точность внутренних часов составляет ±10 с в сутки;
5.индикация разряда батареи;
6.4½-разрядный ЖК-индикатор с высотой цифр 9мм;
7.Габариты: 65х130х25мм;
8.Вес 120г;
9.Питание от литиевой батареи 3,6в;
10. Срок службы батареи при работе 12 часов в сутки – не менее 5 лет.
Внутренне устройство цифрового термометра представлено на рис. 4.
Рисунок4 - Внешнее устройство цифрового термометра
Базовый
элемент схемы-микроконтроллер
РезисторR2 создаёт ток, протекающий через датчик PT1000. Конденсатор С1,С3 и резистор R3 представляют собой простейший фильтр. Остальные элементы необходимы для нормального функционирования прибора. Кнопки SB1-SB2,R12 и контроллер С8 используются схемой обслуживания кнопок. Резистор R7 и микросхема DA1 применяются для формирования опорного напряжения в программе контроля разряда батареи питания. Резисторы R8-R11 определяют режим работы встроенного драйвера жидкокристаллического индикатора HL1. ЖК-индикатор типа 5066 имеет три подложки и работает в мультиплексном режиме.
Литиевая батарея Bat1 обеспечивает прибор питанием. Микроконтроллер MSP430P325 (DD1) управляет всеми перечисленными элементами. Благодаря его использованию, количество элементов в схеме минимально. Основные элементы, необходимые для работы термометра АЦП, стабилизатор тока, драйвер ЖК-индикатора, аналоговый мультиплексор, таймер – в микроконтроллер.
Кнопка
SB1(ON/OFF) включает выключает термометр.
Кнопка SB2(Hold/Set) в режиме «температура»
фиксирует показания измеренной температуры
на индикаторе или включает режим непрерывного
измерения. Кнопка SB3(С/TIME) переключает
режимы работы термометра «температура/часы».
Внешнее устройство цифрового термометра
представлено на рис.5.
Рисунок5-Внешнее
устройство цифрового термометра
3Экспериментальная
часть
3.1Сравнительные
характеристики
На сравнение микроконтроллеров были взяты два микроконтроллера на базе AVR
AT90S2333 и AT90S4433 - экономичные 8-битовые КМОП микроконтроллеры, построенные с использованием расширенной RISC архитектуры AVR. Исполняя по одной команде за период тактовой частоты, AT90S2333 и AT90S4433 имеют производительность около 1MIPS на МГц, что позволяет разработчикам создавать системы оптимальные по скорости и потребляемой мощности. В основе ядра AVR лежит расширенная RISC архитектура, объединяющая развитый набор команд и 32 регистра общего назначения. Все 32 регистра непосредственно подключены к арифметико-логическому устройству (АЛУ), что дает доступ к любым двум регистрам за один машинный цикл. Подобная архитектура обеспечивает десятикратный выигрыш в эффективности кода по сравнению с традиционными CISC микроконтроллерами. AT90S2333/4433 предлагают следующие возможности: 2кБ/4кБ загружаемой флэш памяти; 128/256 байт EEPROM; 128 байт статического ОЗУ, 20 линий ввода/вывода общего назначения; 32 рабочих регистра; настраиваемые таймеры/счетчики с режимом совпадения; внешние и внутренние прерывания; программируемый универсальный последовательный порт; 6-канальный 10-разрядный АЦП; программируемый сторожевой таймер со встроенным генератором; SPI последовательный порт для загрузки программ; два выбираемых программно режима низкого энергопотребления. Холостой режим (Idle Mode) отключает ЦПУ, оставляя в рабочем состоянии регистры, таймеры/счетчики, SPI порт и систему прерываний. Экономичный режим (Power Down Mode) сохраняет содержимое регистров, но отключает генератор, запрещая функционирование всех встроенных устройств до внешнего прерывания или аппаратного сброса. Микросхемы производятся с использованием технологии энергонезависимой памяти высокой плотности фирмы Atmel. Загружаемая флэш память на кристалле может быть перепрограммирована прямо в системе через последовательный интерфейс SPI или доступным программатором энергонезависимой памяти. Объединяя на одном кристалле усовершенствованный 8-битовый RISC процессор с загружаемой флэш памятью, AT90S2333/4433 являются мощными микроконтроллерами, которые позволяют создавать достаточно гибкие и эффективные по стоимости устройства. AT90S2333/4433 поддерживаются полной системой разработки включающей в себя компиляторы Си, макроассемблеры, программные отладчики/симуляторы, внутрисхемные эмуляторы и отладочные комплекты.
Таблица2-Описание выводов
| Назначение
вывода |
Номер вывода | Номер вывода PDIP |
| RESET | 29 | 1 |
| PD0/RXD | 30 | 2 |
| PD1/TXD | 31 | 3 |
| PD2/INT0 | 32 | 4 |
| PD3/INT1 | 1 | 5 |
| PD4/T0 | 2 | 6 |
| VCC | 4 | 7 |
| GND | 5 | 8 |
| XTAL1 | 7 | 9 |
| XTAL2 | 8 | 10 |
| PD5/T1 | 9 | 11 |
| PD6/AIN0 | 10 | 12 |
| PD7/AIN1 | 11 | 13 |
| PB0/ICP | 12 | 14 |
| PB1/OC1 | 13 | 15 |
| PB2/SS | 14 | 16 |
| PB3/MOSI | 15 | 17 |
| PB4/MISO | 16 | 18 |
| PB5/SCK | 17 | 19 |
| Назначение вывода | Номер вывода | Номер вывода PDIP |
| AVCC | 18 | 20 |
| AREF | 20 | 21 |
| AGND | 21 | 22 |
| PC0/ADC0 | 23 | 23 |
| PC1/ADC1 | 24 | 24 |
| PC2/ADC2 | 25 | 25 |
| PC3/ADC3 | 26 | 26 |
| PC4/ADC4 | 27 | 27 |
| PC5/ADC5 | 28 | 28 |
Продолжение таблици2
Описание
выводов микроконтроллеров
GND -
земля
Port B (PB5..PB0) - Порт B является 6-битовым двунаправленным портом ввода/вывода с внутренними подтягивающими резисторами. Выходные буферы порта B могут поглощать ток до 20мА. Если выводы PB0..PB5 используются как входы и извне устанавливаются в низкое состояние, они являются источниками тока, если включены внутренние подтягивающие резисторы. Кроме того Порт B обслуживает некоторые специальные функции, которые будут описаны ниже.
Port С
(PС5..PС0) - Порт С является 6-битовым двунаправленным
портом ввода/вывода с внутренними подтягивающими
резисторами. Выходные буферы порта С
могут поглощать ток до 20мА. Если выводы
PС0..PС5 используются как входы и извне
устанавливаются в низкое состояние, они
являются источниками тока, если включены
внутренние подтягивающие резисторы.
Кроме того Порт С обслуживает аналоговые
входы АЦП.
Port D (PD5..PD0)
- Порт D является 8-битовым двунаправленным
портом ввода/вывода с внутренними подтягивающими
резисторами. Выходные буферы порта B могут
поглощать ток до 20мА. Если выводы PD0..PD7
используются как входы и извне устанавливаются
в низкое состояние, они являются источниками
тока, если включены внутренние подтягивающие
резисторы. Кроме того Порт D обслуживает
некоторые специальные функции, которые
будут описаны ниже.
RESET - Вход сброса. Удержание на входе низкого уровня в течение двух машинных циклов (если работает тактовый генератор), сбрасывает ус-
тройство.
XTAL1 - Вход инвертирующего усилителя генератора и вход внешнего тактового сигнала.
XTAL2 - Выход
инвертирующего усилителя генератора.
AVCC - Вывод
источника питания АЦП. Этот вывод через
фильтр низкой частоты должен быть подключен
к выводу питания процессора.
AREF - Вход
опорного напряжения АЦП. Напряжение,
подаваемое на этот вывод лежит в пределах
2.7В...AVCC.
AGND - Если плата имеет отдельный слой аналоговой земли, к нему подключается этот вывод. В противном случае этот вывод соединяется с GND.
В состав
AT90S2333/4433 входит универсальный асинхронный
приемопередатчик (UART), его основные особенности:
- генерация произвольных значений скорости
- высокая скорость при низких тактовых частотах
- 8 или 9 бит данных
- фильтрация шума
- Определение переполнения
- Детектирование ошибки кадра
- Определение неверного стартового бита
- Три раздельных прерывания - завершение передачи, очистка регистра передачи и завершение приема.
- Режим мультипроцессорного обмена.
Передача данных инициируется записью передаваемых данных в регистр ввода/вывода данных UART - UDR. Данные пересылаются из UDR в сдвиговый регистр передатчика когда:
- новый
символ записывается в UDR после
того как был выдвинут
- новый символ записывается в UDR до того как выдвинут стоповый бит для предыдущего символа. При этом сдвиговый регистр записывается сразу после того, как будет выдвинут стоповый бит предыдущего символа.
При этом в регистре состояния UART - USR устанавливается бит-признак очистки регистра данных - UDRE/ Когда этот бит установлен, UART готов к приему следующего символа. При перезаписи UDR в 10(11)- разрядный сдвиговый регистр, бит 0 сдвигового регистра обнуляется (стартовый бит), а бит 9 или 10 устанавливается (стоповый бит). Если выбрано 9-битовое слово данных (установлен бит CHR9 в регистре UCR), бит TXB8 из UCR переписывается в 9-й бит сдвигового регистра передатчика.
После тактового импульса, следующего с частотой передачи, стартовый бит выдвигается на вывод TXD. Затем выдвигаются данные, начиная с младшего бита. После того как выдвинут стоповый бит, в сдвиговый регистр загружаются новые данные, если они были записаны в UDR во время передачи. При загрузке устанавливается бит UDRE. Если до выдвижения стопового бита в регистр UDR не поступают новые данные, UDRE остается установленным до последующей записи UDR. Если новые данные не поступили и на выводе TXD появляется стоповый бит, в регистре USR устанавливается флаг окончания передачи - TXC.
Установка бита TXEN в UCR разрешает работу передатчика. При очистке бита TXEN, вывод PD1 можно использовать для ввода/вывода данных. Если бит TXEN установлен, передатчик UART подключен к выводу PD1 независимо от установки бита DDD1 в регистре DDRD.
Прием данных
Логическая схема приемника обрабатывает сигнал на выводе RXD с частотой в 16 больше скорости передачи (для обработки одного бита принимаемой последовательности, производится 16 выборок входного сигнала). В состоянии ожидания одна выборка логического нуля интерпретируется как спадающий фронт стартового бита, после чего запускается последовательность обнаружения стартового бита. Если в первой выборке сигнала обнаружен нулевой отсчет, приемник обрабатывает 8, 9 и 10 выборки сигнала на выводе RXD. Если хотя бы две из трех выборок равны логической единице, стартовый бит считается шумом и приемник ждет следующего перехода из 1 в 0. Если обнаружен стартовый бит, начинается обработка бит данных. Решение об уровне данных также производится по 8, 9 и 10 выборкам входного сигнала, уровень входного сигнала определяется по равенству двух выборок. После того как уровень данных определен, данные вдвигаются в сдвиговый регистр приемника. Для определения стопового бита хотя бы две из трех выборок входного сигнала должны быть равны 1. Если это условие не выполняется, в регистре USR устанавливается флаг ошибки кадра FE. Перед чтением данных из регистра UDR пользователь должен проверять бит FE для обнаружения ошибок кадра. Независимо от принятия правильного стопового бита по окончанию приема символа принятые данные переписываются в UDR и устанавливается флаг RXC в регистре USR. Физически регистр UDR состоит из двух отдельных регистров, один используется для передачи данных, другой - для приема. При чтении UDR происходит доступ к регистру приемника, при записи - к регистру передатчика. При обмене 9-битовыми данными 9-й бит принятых данных записывается в бит RXB8 регистра UCR. Если при приеме символа из регистра UDR не был прочитан предыдущий символ, в регистре UCR устанавливается флаг переполнения - OR. Установка этого бита означает, что последний принятый байт данных не переписывается из сдвигового регистра в регистр UDR и будет потерян. Бит OR буферирован и обновляется при чтении правильных данных из UDR. Таким образом, пользователь всегда может проверить состояние OR после чтения UDR и обнаружить происшедшее переполнение. При сбросе бита RXEN в регистре UCR прием данных запрещается. При этом вывод PD0 можно использовать для ввода/вывода общего назначения. При установке RXEN, приемник подключен к выводу PD0 независимо от состояния бита DDD0 в регистре DDRD.
Режим мультипроцессорного обмена Режим многопроцессорного обмена позволяет нескольким ведомым процессорам принимать данные от ведущего. Для этого сначала декодируется адресный байт, который определяет к какому из процессоров обращается ведущий.

- Микроконтроллеры
- Микроконтроллеры
- Микроконтроллеры
- Микроконтроллеры AТmega103 фирмы Atmel
- Микроконтроллеры: от простого к сложному
- Микрологистическая система "Канбан"
- Микрообъекты и их значение в раскрытии краж
- Микроклимат животноводческих помещений
- Микроклимат животноводческих помещений для крупного рогатого скота
- Микроклимат животноводческих помещений для крупного рогатого скота
- Микроклимат и его значение для здоровья и продуктивности животнх
- Микроклимат строящегося здания
- Микроконтролер PIC18FXX2
- Микроконтроллер ATtiny2313 фирмы Atmel