- •Аннотация
- •Аңдатпа
- •Введение
- •Нормативные ссылки
- •Определения
- •1 Выбор и обоснование основных технических решений
- •1.1 Техническое задание
- •1.2.2 Выбор устройства отображения информации
- •1.2.3 Выбор микроконтроллера
- •1.2.4 Выбор программного обеспечения
- •2 Структурная схема
- •2.1 Описание принципа действия и общий алгоритм работы
- •2.2 Блок-схема работы микроконтроллера
- •3. Разработка функциональной и принципиальной схем устройства
- •3.1 Принципиальная схема устройства
- •3.2 Функциональная схема устройства
- •4. Разработка алгоритмов
- •5 Технология отладки программы
- •6. Моделирование
- •7 Сборка устройства и программирование устройства
- •7.1 Сборка устройства
- •7.2 Программирование устройства
- •8 Экономическая часть
- •8.1 Экономическая эффективность
- •8.2 Расчет затрат на материальное обеспечение
- •8.3 Расчет затрат времени на разработку программы
- •9 Охрана труда и техника безопасности
- •9.1 Состояние обучения и инструктаж по охране труда
- •9.2 Уровень санитарно-гигиенических условий труда на объекте дипломного проектирования
- •9.3 Состояние технической безопасности на объекте
- •9.4 Характеристика состояния противопожарной безопасности на объекте проектирования
- •9.4.1 Общие требования безопасности перед началом работы
- •9.4.2 Общие требования к безопасности во время работы
- •9.4.3 Требования к безопасности по окончанию работы
- •9.4.4 Требования к организации труда и отдыха
- •9.4.5 Соблюдение безопасности при работе с электрическим током
- •9.5 Характеристика противопожарной безопасности на объекте проектирования
- •10 Охрана окружающей среды
- •10.1 Определения экологи и ее целей
- •10.2 Защита окружающей среды от излучений
- •Заключение
- •Список использованной литературы
- •Приложение а
7 Сборка устройства и программирование устройства
7.1 Сборка устройства
Приступим к сборке нашего термометра. Для начала распакуем детали которые мы заказали на ebay (рисунок 24).
Рисунок 24 - Распакованные детали
Длинный черный провод с цветным проводками и металлической трубкой на конце это термодатчик. Внутри металлической трубки находиться сам датчик, а также преобразователь и оперативная память датчика.
Микроконтроллер лежит на боку, небольшой чип выше индикатора. Он управляет работой устройства и его мы программируем в MPLAB IDE.
Большой коричневый прямоугольник по центру — это печатная плата, на которой мы будем паять устройство.
Справа от платы находиться семи-сегментный индикатор, на который мы будем выводить информацию.
Маленькая гантель — это резистор на 20кОМ.
Правее от него находиться кварцевый резонатор.
Для начала узнаем на на какой ноге индикатора, какие сегменты находятся. С помощью мультимера и схемы индикатора мы сможем узнать где и что находиться.
Рисунок 25 - Мультимер и схма сегмента.
С помощью рисунка 26 «Схема ног» мы определяли где какой сегмент. Т.е. подносили мультимер к двум ногам одной сверху и синзу чтобы найти что для чего.
Рисунок 26 - Схема ног
Под первой, третей, пятой и седьмой ногой находятся цифры на индикаторе под девятой ногой находится двоеточие по середине экрана, вторая, четвертая, шестая, восьмая, десятая, одиннадцатой и двенадцатой ногой находятся сегменты, указанные на рисунке 26.
Для того чтобы лучше понять устройство микроконтроллера рассмотрим его схему (рисунок 27).
Рисунок 27 - Схема микроконтроллера
Нам нужны 1,2,15 которые будут отвечать за цифры на индикаторе. С 6-13 будут отвечать за сегменты цифр на индикаторе. Нога 18 будет отвечать за подключение к датчику и 16 нога будет отвечать за подключение к сети.
Вот так будет выглядеть наш конечный вариант термометра (рисунок 28).
Рисунок 28 - Собранный термометр
7.2 Программирование устройства
Для начала откроем MPLAB IDE. В этом окне нам предстоит теперь работать (рисунок 29). Здесь показаны 3 основных окна которыми мы будем использовать в нашем программе. Маленькое окошко слева это окно проекта. Будет содержать файлы и дополнительные библиотеки для проекта. Среднее окно по середине используется для написания кода. Последнее окно Output используется для вывода информации об успешности компиляции программы или указывает, а ошибки если произошел сбой.
Рисунок 29 - MPLAB IDE
Теперь создадим проект. С указанием нашего PIC16f628A контроллера как устройства, которое мы будем программировать и выберем HI-TECH C Compiler как устройство компиляции проекта. В окошке дерева появились папки, в которые мы будем добавлять файлы для нашего проекта. Окно output теперь показывает директорию хранения проекта (рисунок 30).
Рисунок 30 - Создание проекта
Теперь добавим файл с рарещением .с в папку source files и начнем писать код. Сначала иницилизруем регистры с которыми наша программа будет работать. После чего выделим 3 порта на вывод информации (рисунок 31).
Рисунок 31 - Инициализацияя регситров
После чего напишем функции с которыми будет работаь микрокотроллер (рисунок 32). Также мы отключим компаратор так как он может стать источником погрешнойстей нашего терммометра.
Это будут функции:
простой задержки;
задержка на 10 микросекунд;
задержка на милисеккунду;
иницализация датчика;
чтения байта;
записи байта;
дисплея.
Рисунок 32 - Функции
Теперь проведем компиляцию нашего кода чтобы проверить его на ошибки и работоспособность. Зайдем в меню проэкта и запустим компилятор после чего он выведет информацию о проекте, а также результат компиляции в онко output (рисунок 33). После компиляции можно приступить к записи на программы с помощью программатора на микроконтролллер.
Рисунок 33 - Успешная компиляция
Для записи программы на микроконтроллер нам понадобиться программатор (рисунок 34). Как видно на программаторе уже находиться наш микроконтроллер и он готов к записи. Когда программатор будет подключен к компьютеру в нижнем правом углу загориться индикатор зеленого цвета, который сообщит о том что есть подключение к компьютеру и мы можем приступать к записи программы на микроконтроллер. Компилированый файл из расширения .c переходит в расширение .hex, что соотвествует файлам с машиным кодом и делает их возможным для чтения микроконтроллера.
Рисунок 34 - Программатор
Теперь в MPLAB IDE зайдем в меню programmer и выберем наш программатор то есть PICkit2 который мы используем для записи на микроконтроллер (Рисинук 35). В окне программатора указан наш микроконтроллер на который мы хотим записать программу. Так же там указана информация что программатор подключен и готов к использыванию. В окне программатора видно несколько кнопок Read, Write, Verify, Erase. Кнопка Read позволяет считывать информацию с микроконтроллера. В данный момент наш микроконтролел пуст это можно узнать по второму окшку внизу в котором отображаеться состояние памяти микроконтроллера. Кнопка write позволяет записать программу на микроконтроллер и после чего окошко внизу изменит свое содержание. Кнопка Verify позволяет проверить содержимое записанной рпограммы в микроконтролер с содержимым программы записаной на компьютере. И последняя кнопка Erase позволяет стереть все данные с микроконтроллера.
Рисунок 35 - Интерфейс программатора
Теперь испортируем наш .hex файл в программатор и запишем его наконец на кикроконтроллер. Как видно (рисунок 36) все прошло успешно наша программа успешно записалась на микроконтроллер и теперь мы можем собрать их вместе.
Рисунок 36 - Загрузка программы
