48764 (Реализация цифрового термометра на основе микроконтроллера ATmega 128 (с использовнием термодатчика DS18B20))

2016-07-30СтудИзба

Описание файла

Документ из архива "Реализация цифрового термометра на основе микроконтроллера ATmega 128 (с использовнием термодатчика DS18B20)", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "информатика, программирование" в общих файлах.

Онлайн просмотр документа "48764"

Текст из документа "48764"

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

Государственное образовательное учреждение

Высшего профессионального образования

"Московский государственный технический университет им. Н.Э. Баумана"

Калужский филиал

Факультет электроники, информатики и управления

Кафедра "Системы автоматического управления и электротехника"

(ЭИУ3-КФ)

Расчетно-пояснительная записка к курсовой работе

на тему:

"Реализация цифрового термометра на основе микроконтроллера ATmega 128 (с использовнием термодатчика DS18B20)"

по дисциплине:

Проектирование алгоритмов и программного обеспечения

Калуга, 2009

Содержание

1. Теоретическая часть

1.1 Аннотация

1.2 Постановка задачи

1.3 Общие сведения о микроконтроллерах AVR

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

1.5 Программирование микроконтроллера с использованием программы на языке С

1.6 Передача данных на Com-порт

1.7 Вывод значений на ЖКИ

1.8 Описание температурного датчика DS18B20

1.9 Подключение датчика DS18B20 с использованием порта 1-Wire

2. Конструкторская часть

2.1 Общие сведения. Функциональное назначение используемых программ

2.2 Реализация

2.3 Запуск и выполнение

3. Список используемой литературы

Приложение


1. Теоретическая часть

1.1 Аннотация

Данный курсовой проект представляет собой термометр, реализованный на микроконтроллере AVR. Устройство может выполнять следующие действия:

определение температуры окружающей среды;

отображение температуры окружающей среды на ЖК дисплее;

отображение температуры окружающей среды в com-порт;

своевременное реагирование на изменение температуры, реализованное с помощью устанавливаемой по желанию задержки опроса;

1.2 Постановка задачи

Используя средства языка программирования необходимо создать цифровой термометр на основе микроконтроллера ATmega 128 семейства AVR. Должны выполняться действия: измерение температуры окружающей среды, вывод значений температуры на ЖК дисплей и в com-порт.

1.3 Общие сведения о микроконтроллерах AVR

Микроконтроллер - компьютер на одной микросхеме. Предназначен для управления различными электронными устройствами и осуществления взаимодействия между ними в соответствии с заложенной в микроконтроллер программой. В отличие от микропроцессоров, используемых в персональных компьютерах, микроконтроллеры содержат встроенные дополнительные устройства. Эти устройства выполняют свои задачи под управлением микропроцессорного ядра микроконтроллера.

С развитием микроэлектроники микроконтроллеры AVR получили широкое распространение в нашей жизни. Это устройства, в которых объединены процессор и периферийное оборудование. Такое объединение позволяет уменьшить массу стоимость и энергопотребление проектируемого устройства.

Типичный современный микроконтроллер имеет следующие встроенные схемы: центральное процессорное устройство (ЦПУ), память программ, оперативная память данных, тактовый генератор, цепь сброса, последовательный порт, таймер, таймер, аналого-цифровой преобразователь (АЦП). Устройства памяти включают оперативную память (RAM), постоянные запоминающие устройства (ROM), перепрограммируемую ROM (EPROM), электрически перепрограммируемую ROM (EEPROM). Таймеры включают, и часы реального времени, и таймеры прерываний. Средства I/O включают последовательные порты связи, параллельные порты (I/O линии), аналого-цифровые преобразователи (A/D), цифроаналоговые преобразователи (D/A), драйверы жидкокристаллического дисплея (LCD) или драйверы вакуумного флуоресцентного дисплея (VFD). Встроенные устройства обладают повышенной надежностью, поскольку они не требуют никаких внешних электрических цепей.

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

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

тактовая частота до 20 МГц;

встроенный программируемый RC-генератор, частота 1, 2, 4, 8 МГц;

Flash-ПЗУ программ, программируемое в системе, 10 000 циклов перезаписи;

Энергонезависимая память данных EEPROM (100 000 циклов перезаписи);

внутреннее ОЗУ со временем доступа 1 такт;

6 аппаратных команд умножения (для семейства mega);

развитая система адресации, оптимизированная для работы с С-компиляторами;

32 регистра общего назначения (аккумулятора);

синхронный (USART) или асинхронный (UART) (в mega64 и mega128 их по 2);

синхронный последовательный порт (SPI);

двухпроводный интерфейс TWI, совместимый с интерфейсом I2C;

многоканальный PWM 8-, 9-, 10-, 16-битный ШИМ-модулятор;

10-битный АЦП с дифференциальными входами;

программируемый коэффициент усиления перед АЦП 1, 10 и 200;

встроенный источник опорного напряжения 2,56 В;

аналоговый компаратор;

сторожевой таймер - перезагружает МК при "зависании";

настраиваемая схема задержки запуска после подачи питания;

схема слежения за уровнем напряжения питания;

JTAG-интерфейс для подключения эмулятора (в МК с объемом ПЗУ от 16кбайт);

Малое энергопотребление (менее 100мкА в активном режиме на частоте 32кГц);

датчик температуры (в ATtiny25 ATtiny45 ATtiny85).

1.5 Программирование микроконтроллера с использованием программы на языке С

Таблица 1. Типы данных языка С для AVR

Тип

Размер (бит)

Диапазон значений

bit

1

0, 1

char

8

-128…127

unsigned char

8

0…255

signed char

8

-128…127

int

16

-32768…32767

short int

16

-32768…32767

unsigned int

16

0…65535

signed int

16

-32768…32767

long int

32

-2147483648…2147483647

unsigned long int

32

0…4294967295

signed long int

32

-2147483648…2147483647

float

32

±1.175e-38…±3.402e38

double

32

±1.175e-38…±3.402e38

Таблица 2. Зарезервированные слова

break

else

int

struct

bit

enum

interrupt

switch

case

extern

long

typedef

char

flash

register

union

const

float

return

unsigned

continue

for

short

void

default

funcused

signed

volatile

do

goto

sizeof

while

double

if

sfrw

eeprom

inline

static

Для вывода данных в порт используется регистр PORTx, а для ввода - PINx. Для настройки порта на выход в регистр управления необходимо записать единицу, и наоборот, для настройки на вход-ноль.

1.6 Передача данных на Com-порт

Для связи ПК и вашего устройства необходим какой-либо физический интерфейс. Очень удобен и прост интерфейс RS232 - в ПК он реализован в виде COM-портов.

Универсальный внешний последовательный интерфейс - CОМ-порт (Communications Port - коммуникационный порт) присутствует в PC начиная с первых моделей. Этот порт обеспечивает асинхронный обмен по стандарту RS-232C. СОМ-порты реализуются на микросхемах универсальных асинхронных приемопередатчиков (UART), совместимых с семейством i8250/16450/16550. Они занимают в пространстве ввода-вывода по 8 смежных 8-битных регистров и могут располагаться по стандартным базовым адресам 3F8h (СОМ1), 2F8h (COM2), 3E8h (COM3), 2E8h (COM4). Порты могут вырабатывать аппаратные прерывания IRQ4 (обычно используются для СОМ1 и COM3) и IRQ3 (для COM2 и COM4). С внешней стороны порты имеют линии последовательных данных передачи и приема, а также набор сигналов управления и состояния, соответствующий стандарту RS-232C. СОМ-порты имеют внешние разъемы-вилки (male - "папа") DB25P или DB9P, выведенные на заднюю панель компьютера. Характерной особенностью интерфейса является применение "не ТТЛ" сигналов - все внешние сигналы порта двуполярные.

Гальваническая развязка отсутствует - схемная земля подключаемого устройства соединяется со схемной землей компьютера. Скорость передачи данных может достигать 115 200 бит/с.

Название порта указывает на его основное назначение - подключение коммуникационного оборудования (например, модема) для связи с другими компьютерами, сетями и периферийными устройствами. К порту могут непосредственно подключаться и периферийные устройств с последовательным интерфейсом: принтеры, плоттеры, терминалы и другие. СОМ-порт широко используется для подключения мыши, а также организации непосредственной связи двух компьютеров. К СОМ-порту подключают и электронные ключи.

Напряжение на выходе данных из COM-порта ПК (это ножка 3 в 9-ти штырьковом разъеме) по стандарту RS232 таково:

логическая "1" от - 5 до - 15 вольт

логический "0" от +5 до +15 вольт

На самом деле сигналы в COM называются по-другому! Здесь называется "логический" по аналогии названия в МК. Для согласования напряжений и логических уровней COM-порта и USART МК используют микросхемы типа MAX232.

По линии TxD данные передаются от МК в ПК (через MAX232).

По линии RxD МК принимает данные от ПК.

Для отправки и приема данных можно использовать гипертерминал Windows или более удобные программы (мы будем использовать Терминал из состава компилятора CodeVisionAVR).

Формат представления данных в лабораторной работы мы оставим по умолчанию: 8 Data, 1 Stop, No Parity (8-битовые данные, без проверки четности, 1 стоповый бит), а скорость выберем произвольно. В этом случае на передачу одного символа (в формате 8N1 - установленном нами выше при настройке UART) тратится время в Сек:

10 разделить на скорость USART в бод/сек.

1.7 Вывод значений на ЖКИ

Алфавитно-цифровые ЖКИ-модули представляют собой недорогое и удобное решение, позволяющее сэкономить время и ресурсы при разработке новых изделий, при этом обеспечивают отображение большого объема информации при хорошей различимости и низком энергопотреблении. Возможность оснащения ЖКИ-модулей задней подсветкой позволяет эксплуатировать их в условиях с пониженной или нулевой освещенностью, а исполнение с расширенным диапазоном температур (-20°С... +70°С) в сложных эксплуатационных условиях, в том числе в переносной, полевой и даже, иногда, в бортовой аппаратуре.

Контроллер HD44780 потенциально может управлять 2-мя строками по 40 символов в каждой (для модулей с 4-мя строками по 40 символов используются два однотипных контроллера), при матрице символа 5 х 7 точек. Контроллера также поддерживает символы с матрицей 5 х 10 точек, но в последние годы ЖКИ-модули с такой матрицей практически не встречаются, поэтому можно считать, что фактически бывают только символы 5х7 точек.

Существует несколько различных более-менее стандартных форматов ЖКИ-модулей (символов х строк): 8х2, 16х1, 16х2, 16х4, 20х1, 20х2, 20х4, 24х2, 40х2, 40х4. Встречаются и менее распространенные форматы: 8х1, 12х2, 32х2 и др., - принципиальных ограничений на комбинации и количество отображаемых символов контроллер не накладывает - модуль может иметь любое количество символов от 1 до 80, хотя в некоторых комбинациях программная адресация символов может оказаться не очень удобной.

Жидкокристаллический модуль MT-16S2H состоит из БИС контроллера управления и ЖК панели. Контроллер управления КБ1013ВГ6, производства ОАО "АНГСТРЕМ" (www.angstrem.ru), аналогичен HD44780 фирмы HITACHI и KS0066 фирмы SAMSUNG.

Модуль выпускается со светодиодной подсветкой. Внешний вид приведен на рисунке 1. Модуль позволяет отображать 1 строку из 16 символов. Символы отображаются в матрице 5х8 точек. Между символами имеются интервалы шириной в одну отображаемую точку.

Каждому отображаемому на ЖКИ символу соответствует его код в ячейке ОЗУ модуля.

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Нет! Мы не выполняем работы на заказ, однако Вы можете попросить что-то выложить в наших социальных сетях.
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
4144
Авторов
на СтудИзбе
666
Средний доход
с одного платного файла
Обучение Подробнее