VID 20240717 151019

Описание к видео VID 20240717 151019

GPS-clock v2.0
Проект в стадии тестирования и оформления на сайте
https://mralb.ru/sections/programming...

ПОЯСНЕНИЯ:
На дисплее GMG12864 выводятся:
Время с учётом поясного времени (изменение в настройках)
Дата в международном формате: ГГГГ-ММ-ДД
Если GPS поймал нужное чило спутников, то дополнительно
выводится:
Широта/Latitude Север/Юг/N/S
Долгота/Longitude Восток/Запад/W/E

Три кнопки управления:
SET/МЕНЮ - долгое нажатие вход/выход в/из меню настройки
SET/МЕНЮ - короткое нажатие - переход к следующему параметру
PLUS /+ - Прибавить значение
MINUS/- - Убавить значение

При смене часа на выводе PIN_CORR выдаётся импульс
коррекции для любых внешних устройств (часов и т.п.).
Настройка длительности в меню настроек. Если установлена
длительность 0 мс, то импульс не выдаётся.

Для управления внешними устройствами к выводу PIN_CORR
подключен резистор 510 Ом, который соединён с выводом 1
оптрона PC817. Вывод 2 оптрона PC817 соединён с GND.
Выводы 3, 4 - выход управления на внешнее устройство.

ВКЛЮЧЕНИЕ
При вкючении устройства вначале идёт загрузка из EEPROM
параметров настройки устройства.

Далее идёт тестирование светодиодов и кнопок.
Далее идёт поиск подключенных датчиков температуры
DS18B20 (до 2 шт.). Если датчики не найдены, то идём
дальше.
Далее идёт подключение датчика BME280. Если датчик не
найден, то стоп программа и соответственное сообщение.

ЭКРАНЫ
Устройство пока имеет 4 экрана вывода информации на дисплей.
1. Экран с временем, датой, широтой, долготой
2. Экран с временем и датой (просто как часы)
3. Экран с информацией датчиков температуры (до 2 шт.)
4. Экран с временем, датой, параметрами барометра:
-температура °С
-давление ммРт/кПа
-влажность %

Если в настройках параметр mode = 0, то при работе
происходит автоматическая смена экранов по кругу,
время показа экрана устанавливается в настройках.

В левом верхнем углу выводится номер экрана и при
mode=0 через / выводится время показа экрана в секундах.
Если mode отличное от 0, то выводится соответствующий
экран и в левом верхнем углу дисплея номер экрана.
при mode != 0 возможно быстрое переключение экранов
при нажатии кнопок МИНУС и ПЛЮС.
Нажатие продолжительное. При смене экрана происходит
запись нового mode в EEPROM.

ИНДИКАЦИЯ
Синий светодиод указывает на импульс синхронизации.
Красный светодиод указывает на запись нового значения
в EEPROM.
Зелёный светодиод указывает на достаточное количество
спутников, что позволяет получать координаты местоположения.

АККУМУЛЯТОР
Устройство может работать от встроенного аккумулятора.
В этом случае на дисплее выводится пиктограмма
батарейки и под ней значение напряжения аккумулятора.
В пиктограмме внутри батарейки есть 4-е линии, которые
соответствуют по 30% заряда.
- 0% нет линий
- 30% 1-я линия
- 60% 2-я линия
- 90% 3-я линия
- 100% 4-я линия

GPS
Если спутников недостаточно, то на экране в позиции
времени выводится поясная поправка и выводится надпись
"Мало спутников".
Если некоторые спутники находятся, то выводится время
и дата.
Если найдено достаточное количество спутников, то
выводятся координаты местоположения: широта/долгота

DS18B20
Если найдены 2 датчика, то на экране №3 выводятся
у каждого датчика по кругу:
- Температура °С
- Чип
- Номер датчика 0/1
- Адрес датчика в HEX виде
- Точность измерения датчика (9...12)
- Коэффициент поправки температуры датчика

Если нарушена линия подключения датчика, то выводится
номер датчика (если их 2) и
сообщение "Ошибка данных датчика DS18B20".
При восстановлении линии подключения вывод информации
возобновляется

МЕНЮ/SET
Переход в настройки и выход из настроек по длительному
нажатию на кнопку МЕНЮ/SET
На данный момент 2024-07-17 всего 16 настроек:
1. Mode - номер экрана 1...4, при 0 - автоматическая
прокрутка экранов по кругу
2. Light - Подсветка дисплея от 0 до 250
3. Contrast - Контраст дисплея 0/100
4. PrntTmZn - Вывод поясного времени 0/1
5. TimZonH - Поясной час ±12
6. TimZonM - Поясные минуты ±59
7. TimCorr - Корректирующий импульс, мс 0/2000
8. kTerm1 - Поправка температуры DS18B20 №1
9. kTerm2 - Поправка температуры DS18B20 №2
10. TimeDS - Время индикации температуры с DS18B20
11. 0-eng/1-рус - Выбор языка надписей
12. TimeMode - Время показа экрана в секундах, при mode=0
13. kPress - Поправка давления в мм Рт для BME280 ±10 mmHg.
14. kTermB - Поправка температуры для BME280 ±10°C.
15. kHumid - Поправка влажности для BME280 ±20%.
16. 0-mmH/1-kPa - Система измерения давления ммРт/кПа

Если в настройках не делались изменения, то при выходе к
EEPROM нет обращения.
Если сделаны изменения, то данные изменения вносятся в
EEPROM и красный светодиод на каждый изменённый параметр
выдаёт один длительный импульс. После этого происходит
обновление в EEPROM и красный светодиод выдаёт серию
коротких импульсов.

Комментарии

Информация по комментариям в разработке