Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Описание переменных и константСодержание книги Поиск на нашем сайте
Переменная - это именованная область памяти для хранения данных, которые могу изменятся в процессе исполнения программы. Константа - это величина, которая не изменяет своего значения в процессе выполнения программы. Переменные и константы бывают локальные и глобальные. Глобальные - они доступны из всего кода программы. Локальные - они доступны только из функции, где были объявлены. Программный код для разрабатываемого устройства будет иметь следующие переменные:
- Time t - общая переменная для времени реального времени; - byte Hor; - переменная часов реального времени; - byte Min; - переменная минут реального времени; - byte Sec; - переменная секунд реального времени; - byte h; - переменная часов времени срабатывания; - byte m; - переменная минут времени срабатывания; - byte s; - переменная секунд времени срабатывания; - byte flag1; - переменная флага 1; - byte flag2; - переменная флага 2; - byte flag3; - переменная флага 2. Локальные: - byte menu_butt_state; - переменная функции menu() для определения на какой строке находится курсор; - byte x; - переменная функций настройки, часов, минут и секунд, необходима бля предотвращения ложных срабатывания устройства при вводе значения времени. А также следующие константы: Глобальные: - #define SERVO_PIN 2 - определение к какому контакту подключен сервопривод; - GButton up_butt(7, HIGH_PULL, NORM_OPEN); - определение режима работы кнопки «вверх» - GButton set_butt(5, HIGH_PULL, NORM_OPEN); - определение режима работы кнопки «ввод» - GButton feed_butt(8, HIGH_PULL, NORM_OPEN); - определение режима работы кнопки «кормежка» - GButton down_butt(6, HIGH_PULL, NORM_OPEN); - определение режима работы кнопки «вниз» -
- byte clock_icon[8]={ - задания символа часов B00000, B01110, B10101, B10111, B10001, B01110, B00000, B00000, }; - byte alarm_icon[8]={ - задания символа колокола B00000, B00100, B01110, B01110, B01110, B11111, B00100, B00000, Описание модулей программы Функция (модуль) – часть программы, имеющая своё название и выполняющая заданную задачу. Большая программа может строиться из нескольких функций, каждая из которых выполняет свою задачу. Использование функций очень сильно упрощает написание и чтение кода, и в большинстве случаев делает его оптимальным по объёму занимаемой памяти. Функция должна быть описана, и после этого может вызываться. Функция должна быть описана вне других функций.
Функция setup() (рисунок 14) выполняется один раз при загрузке микроконтроллера. В этой функции описывается режимы работы контактов, а также инициализация подключенный дополнительных модулей.
Рис.14 Функция setup() Функция loop() (рисунок 15) выполняется непрерывно, в ней выполняется вывод времени на LCD дисплей, а также выполняются функции проверка совпадения времен и отображения времени.
Рис.15 Функция loop()
Рис.16 Функция time_date() Функция set_time() (рисунок 17) отображает меню настройки меняю для модуля реального времени, из этой функции вызывается функции настройки часов, минут и секунд.
Рис.17 Функция set_time() Функция hours()(рисунок 18) вызывается из функции set_time(), в ней настраивается значение часов для модуля реального времени.
Рис.18 Функция hours()
Функция настройки времени срабатывания обозначения как set_alarm() она работает схожим образом с set_time(), но из нее вызываются функции hours_a(), minuts_a() и seconds_a(), в этих функциях выполняется настройка значений для часов, минут и секунд времени срабатывания соответственно, но введенные значения записываются в память устройства, а не в модуль реального времени. Функция feed_time() (рисунок 19) выполнят отображение надписи на LCD дисплее, сообщающая пользователю, что производится выдача корма, а также поворот сервопривода и возврат его на исходное положение.
Рис.19 Функция feed_time() Функция check_alarm() (рисунок 20) выполняет проверку совпадения реального времени и времени, заданного вручную.
Рис.20 Функция hours()
В курсовом проекте было разработано программное обеспечение для спроектированной модели устройства под названием «Диспенсер корма для домашних животных с модулем реального времени на основе микроконтроллерного модуля Arduino» Было про проанализировано техническое задание, в соответствии с которым было выполнена работа. Принцип работы устройства основан на сравнение времени полученного от модуля реального времени, а также времени выдачи, которые введен вручную с помощью элементов управления. В курсовом проекте были разработаны структурная и функциональная схемы, подобрана элементная база устройства, рассмотрены языки и среды программирования, разработана блок-схема алгоритма работы устройства, написан программный код, а также были описаны константы и переменные, используемые в программном коде, и описана работа функций программного кода.
1. Баранов В.Н. Применение микроконтроллеров: схемы, алгоритмы, программы. – М.: Додэка-XXI, 2014. – 288 с 2. Бродин В.Б. Микроконтроллеры. Архитектура, программирование, интерфейс. - М.: ЭКОМ, 2015. – 400 с. 3. Магда Ю.С. Современные микроконтроллеры. Архитектура, программирование, разработка устройств / Ю.С. Магда. – М.: ДМК, 2014. – 228 с. 4. Мержи И.В. Практическое руководство по логическим микросхемам и цифровой схемотехнике – М.: НТ Пресс 2017. – 256 с. 5. Монк С. Программируем Arduino: Основы работы со скетчами. – СПб.: Питер, 2016. – 176 с. 6. Петин В.А. Проекты с использованием контроллера Arduino. – СПб.: БХВ-Петербург, 2014. – 400 с. 7. Черничкин М.Ю. Большая энциклопедия электрика. – М.: Эксмо, 2014. – 272 с. 8. www.arduino.cc - официальный сайт разработчика микроконтроллерного модуля. 9. www.arduino.ru – русскоязычный сайт по разработке на микроконтроллерном модуля Arduino 10. www.wiki.amperka.ru/продукты:text-lcd-16x2 – описание работы с LCD 1602 11. www.arduinoplus.ru/arduino-servoprivod/ - описание работы с сервоприводом
II Графическая часть
Приложения
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Последнее изменение этой страницы: 2021-05-12; просмотров: 180; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.20 (0.01 с.) |