Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Описание переменных и констант↑ ⇐ ПредыдущаяСтр 6 из 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; просмотров: 111; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 52.14.7.103 (0.007 с.) |