Часы на TFT

Что бы еще такого сделать?... Предлагайте! Обсудим все!!!
Аватара пользователя
GoldenAndy
Поставщик валерьянки для Кота
Сообщения: 1925
Зарегистрирован: Чт июл 28, 2016 07:58:37
Откуда: Kyiv, UA
Контактная информация:

Re: Часы на TFT

Сообщение GoldenAndy »

fetus писал(а):Как насчет такой плюшки CCS811.
Это вопрос или предложение ?
Если вопрос - то не знаю.
Если предложение - то можно подумать. Внешний датчик должен уметь отдавать данные по uart на скорости 9600 в текстовом виде. Формат можем оговорить.
fetus писал(а):Есть ли еще свободные платы?
Пока вообще никаких плат нету. Якобы вылетели из Сингапура. Как приедут - кину клич.
pin1000 писал(а):нужно еще покруче и подороже, что уже купленное оборудование
Ну правильно. Какой откат с суммы менее сотки зелени?
Вот если бы олимпиард баксов - то там и попилить можно. И поделиться с кем надо, что бы не посадили...
ИзображениеИзображение
Изображение
 
Telegram               Лучшая благодарность ->
[+]
Реклама
Аватара пользователя
fetus
Открыл глаза
Сообщения: 47
Зарегистрирован: Вс окт 19, 2008 19:49:41
Откуда: Киев

Re: Часы на TFT

Сообщение fetus »

Это предложение. Датчик внутренний работает по i2c. Мониторит уровень СО2 и органических соединений.
«Хорошо обладать пушками и штыками, но гораздо важнее обладать сердцами нации».
Реклама
Аватара пользователя
pin1000
Сверлит текстолит когтями
Сообщения: 1290
Зарегистрирован: Чт май 24, 2018 12:07:05
Откуда: Челябинск-"Метеоритный"

Re: Часы на TFT

Сообщение pin1000 »

Я и об этом и о том, что температуру, влажность и атмосферное давление можно измерить несложными датчиками, с достаточной, для личного пользования, точностью. Прогнозировать погоду не могут точно, даже синоптики, с их баснословно дорогим оборудованием и количеством исходной информации. Качество воздуха, в том смысле, как его оценивают, по многочисленным параметрам, требует серьезного, дорогостоящего оборудования. Если нужно отследить утечки природного, углекислого и им подобным газам, сдесь проще и вполне хватает датчика MQ4. У меня сделано устройство в зоне газовой плиты и прекрасно справляется со своими функциями, дополнительно реагирует на пары спирта, когда, при приготовлении мяса добавляем в него сухое вино, на открытие духовки, повышение углекислого газа.
Аватара пользователя
fetus
Открыл глаза
Сообщения: 47
Зарегистрирован: Вс окт 19, 2008 19:49:41
Откуда: Киев

Re: Часы на TFT

Сообщение fetus »

MQ4 громоздкий,почти ватт потребление , городить схему для него надо, а 811 подкинуть к бме280 , подключить либу и выделить место на дисплее....все)))
«Хорошо обладать пушками и штыками, но гораздо важнее обладать сердцами нации».
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
GoldenAndy
Поставщик валерьянки для Кота
Сообщения: 1925
Зарегистрирован: Чт июл 28, 2016 07:58:37
Откуда: Kyiv, UA
Контактная информация:

Re: Часы на TFT

Сообщение GoldenAndy »

Вопрос к "выделить место на дисплее" - это сложно. Ведь изначально это часы с календарем.
В нижней части экрана будет полоса пикселей в 16, ширина 240 пикселей, в нее нужно уложить вывод одной или двух температур, давления и влажности...
Еще туда добавлять ppm ?

И по огороду датчиков.... Внутри изделия изначально планировались только ВМЕ280 и/или DS18B20.

"добавить либу" - на нее нужно смотреть, как там реализована работа с i2c. Скорее всего, придется выпиливать оттуда математику и оборачивать по своему.
Ибо у меня будет свой диспетчер очереди обмена по i2c.

А вот если вы сделаете какой то внешний блок с этим датчиком - можно обговорить по его прикручиванию через uart.
Нужно только будет оговорить формат передачи инфы.
И решить, вместо чего на дисплее показывать уровень ppm. Ибо дисплей маленький. там в 1 мм порядка 5 пикселей выходит. Т. е. шрифт высотой 16 пикселей - это визуально 3 мм высоты. И тулить в пространство 48*3 мм кучу текстовой инфы - не хочется.
И календарь тоже сжимать сильно не хочется.

Добавлено after 4 minutes:
Возможно, менять метеопоказания внизу дисплея циклически. Сначала температуры. Потом давление/влажность.
потом строку с ppm от внешнего датчика...
Но это то, от чего хотелось уйти. Ибо в нужный момент по закону подлости будет отображаться ненужная инфа.

П.С. Приедет 3.2" дисплей - надо будет поиграться с компоновкой и размерами шрифтов и графики. Может и больше получится выделить под доп. инфу места.
ИзображениеИзображение
Изображение
 
Telegram               Лучшая благодарность ->
[+]
Реклама
Аватара пользователя
fetus
Открыл глаза
Сообщения: 47
Зарегистрирован: Вс окт 19, 2008 19:49:41
Откуда: Киев

Re: Часы на TFT

Сообщение fetus »

Если бегущую строку запилить?
«Хорошо обладать пушками и штыками, но гораздо важнее обладать сердцами нации».
Реклама
Аватара пользователя
GoldenAndy
Поставщик валерьянки для Кота
Сообщения: 1925
Зарегистрирован: Чт июл 28, 2016 07:58:37
Откуда: Kyiv, UA
Контактная информация:

Re: Часы на TFT

Сообщение GoldenAndy »

Возвращаемся к "в нужный момент по закону подлости будет отображаться ненужная инфа"...

Смотрите. У меня пока нет плат, нет дисплея. Первая версия на 2.4" дисплее живет на работе. Разбирать те часы ради экспериментов постоянно не хочется. Тем более, проект вписался в мегу 32 тютелька в тютельку, там свободных в районе 10 байт осталось во флеше:)

Будет дисплей и остальной обвес - соберу версию 2.
После этого будет:
1. Портирование прошивки первой версии.
2. Обвешивание первой версии плюшками для второй - ФМ, расширенные будильники.
3. Поддержка ВМЕ280.
4.1. Поддержка внешнего датчика.
4.2. Разработка внешнего датчика под BME280/DS18B20, с возможными плюшками

После этого можно будет говорить о доп. функционале.

И да, что бы увидеть желаемый функционал - нужно собрать себе часы :)
Поскольку у меня такого датчика нет - тестировать придется удаленно. (Это приблизительно как лечить одну интересную болячку по фотографии)

Пока прогресс доолзет до пункта 4 - месяца два точно пройдет. Так что смотрите на ВОМ, делайте китайцев богаче и расчехляйте паяльник :)
Когда у вас будут в руках рабочие часы и подключенный датчик - можно будет о чем то говорить
ИзображениеИзображение
Изображение
 
Telegram               Лучшая благодарность ->
[+]
Аватара пользователя
fetus
Открыл глаза
Сообщения: 47
Зарегистрирован: Вс окт 19, 2008 19:49:41
Откуда: Киев

Re: Часы на TFT

Сообщение fetus »

811 у меня есть. Могу дать для отладки) Вы с какого района?
Дисплей конечно лучше бы oled, но дорогущие.
у меня вот такой есть.Разрешение маловато.
«Хорошо обладать пушками и штыками, но гораздо важнее обладать сердцами нации».
Аватара пользователя
GoldenAndy
Поставщик валерьянки для Кота
Сообщения: 1925
Зарегистрирован: Чт июл 28, 2016 07:58:37
Откуда: Kyiv, UA
Контактная информация:

Re: Часы на TFT

Сообщение GoldenAndy »

fetus писал(а):Вы с какого района?
Альфа Центавра знаешь? Тамошние мы... (ц) Любимый фильм детства (А кто вспомнит, что за фильм ?)
В центре обитаю, район парка Шевченка.

За предложение спасибо, но .... Давайте последовательно.

Хотелки в очередь. Первая хотелка - BME280, вторая - вынести наружу.
Ваша - третья :)
Буду делать - отпишусь. Может там математика простая будет - и вылечим по фотографии.

Добавлено after 2 hours 28 minutes 40 seconds:
Посмотрел на дисплей ваш. Он 64 * 128, да еще и i2c-шный. И нет тача.
Мне кажется, что на таком разрешении хорошо разложить время и календарь будет сложно.
Я же тоже хотел первую версию часов делать на ЖКИ 64*128. Но когда прикинул расположение инфы на нем в пейнте - понял, не оно..
Тогда и решил освоить ТФТ+тач.

Можно сделать и на вашем дисплее + кнопки. Однако это будет совсем другой проект. (И да, вроде как ОЛЕДы не любят одну и ту же картинку на одном месте.... Выгорают....)
ИзображениеИзображение
Изображение
 
Telegram               Лучшая благодарность ->
[+]
MOHCTEP
Опытный кот
Сообщения: 768
Зарегистрирован: Вс янв 19, 2014 00:55:09

Re: Часы на TFT

Сообщение MOHCTEP »

fetus Да, в этом плане, он получше ВМЕ680 будет. Тот, судя по даташиту, только на органику реагирует. :(
Запустил я ВМР280, даже чего-то показывает. Потестировал 3 разнотипичных арифметики с даташита.

Код: Выделить всё

//64 bits formula:: Flash - 4900 bytes, RAM - 444 Bytes
	_bmp280_temp = compensate_T_int32(temp_raw);
	_bmp280_pres = compensate_P_int64(pres_raw);
	
	//floating point formula:: Flash - 4700 bytes, RAM - 438 Bytes
	_bmp280_temp = compensate_T_double(temp_raw);
	_bmp280_pres = compensate_P_double(pres_raw);
	
	//32 bits formula:: Flash - 3768 bytes, RAM - 438 Bytes
	_bmp280_temp = compensate_T_int32(temp_raw);
	_bmp280_pres = compensate_P_int32(pres_raw);
Самой голодной, при прочих равных, оказалась 64-битная математика, 32-битная с фиксированной точкой, ожидаемо самая тощая, ну и плавающая точка посерединке и плавает...
Даташит предупредил, что 32-битная математика менее точна с давлением. Ее дискретность = 1 Паскаль, тогда как у двух остальных = 0.1 Паскаль.
Аватара пользователя
GoldenAndy
Поставщик валерьянки для Кота
Сообщения: 1925
Зарегистрирован: Чт июл 28, 2016 07:58:37
Откуда: Kyiv, UA
Контактная информация:

Re: Часы на TFT

Сообщение GoldenAndy »

А настолько критичен 0,1 паскаль ?
Один фиг переводить в привычные мм рт.ст.... 1 мм рт.ст. - это 133,3 Па
ИзображениеИзображение
Изображение
 
Telegram               Лучшая благодарность ->
[+]
MOHCTEP
Опытный кот
Сообщения: 768
Зарегистрирован: Вс янв 19, 2014 00:55:09

Re: Часы на TFT

Сообщение MOHCTEP »

goldenandy, Вот и думаю, что абсолютно не критичен. Ну и терять больше кило флеша и х.з. сколько времени на бесполезную точность, смысла не вижу. Ну и математики у ВМР280 и ВМЕ280, хоть и похожи, но у второго все же чуть посложней + добавится обработка влажности еще. Значит разбег в потреблении памяти, времени и ресурсов будет даже побольше, чем в моих опытах.
Аватара пользователя
GoldenAndy
Поставщик валерьянки для Кота
Сообщения: 1925
Зарегистрирован: Чт июл 28, 2016 07:58:37
Откуда: Kyiv, UA
Контактная информация:

Re: Часы на TFT

Сообщение GoldenAndy »

Западло подкралось незаметно.
У восьмой меги WDT простой, не продвинутый. И у него нет своего прерывания....
Соответственно, реализовать спящий режим глубокого сна на заданное время будет сложно....
ИзображениеИзображение
Изображение
 
Telegram               Лучшая благодарность ->
[+]
MOHCTEP
Опытный кот
Сообщения: 768
Зарегистрирован: Вс янв 19, 2014 00:55:09

Re: Часы на TFT

Сообщение MOHCTEP »

10.4 Power-down Mode
...
Only an External Reset, a Watchdog Reset, a Brown-out Reset, a Two-wire Serial Interface address match interrupt, or an external level interrupt on INT0 or INT1, can wake up the MCU.
Не?
Аватара пользователя
GoldenAndy
Поставщик валерьянки для Кота
Сообщения: 1925
Зарегистрирован: Чт июл 28, 2016 07:58:37
Откуда: Kyiv, UA
Контактная информация:

Re: Часы на TFT

Сообщение GoldenAndy »

Именно, что Watchdog Reset, а не Watchdog Interrupt, как в продвинутых Мегах и тупых Тиньках.

Просто выдержка сна в минуту в продвинутом варианте решается через прерывание от WDT, а тут WDT перегружает контроллер.
Поэтому приходится идти по пути переменных, которые не инициализируются при загрузке. Потом отслеживать причину перезагрузки и делать глобальный конечный автомат. Нет ничего нерешаемого, но .... Как бы это выразиться, не так красиво.
ИзображениеИзображение
Изображение
 
Telegram               Лучшая благодарность ->
[+]
MOHCTEP
Опытный кот
Сообщения: 768
Зарегистрирован: Вс янв 19, 2014 00:55:09

Re: Часы на TFT

Сообщение MOHCTEP »

goldenandy писал(а):а тут WDT перегружает контроллер.
Тут WDT контроллер, кажись, пробуждает, если я правильно басурманский понял... Ну, а если прерывание таки сильно надо, то опять упираемся в 48/88/168 :)
Аватара пользователя
dadigor
Вымогатель припоя
Сообщения: 593
Зарегистрирован: Пт дек 26, 2014 20:33:38
Откуда: Самая большая деревня. (По мнению Габриэля Гарсиа Маркеса)

Re: Часы на TFT

Сообщение dadigor »

[uquote="goldenandy",url="/forum/viewtopic.php?p=3583443#p3583443"]Западло подкралось незаметно.
У восьмой меги WDT простой, не продвинутый. И у него нет своего прерывания....
Соответственно, реализовать спящий режим глубокого сна на заданное время будет сложно....[/uquote]
Еще одна причина, по которой пора бы переходить на STM. В STM, в том числе в малопотребляющих STM32L и даже в STM8L из standby можно выходить несколькими способами, включая по будильнику встроенных RTC, что наверное полностью снимает проблему.
О технике чего спорить-то, давайте попробуем.
Аватара пользователя
GoldenAndy
Поставщик валерьянки для Кота
Сообщения: 1925
Зарегистрирован: Чт июл 28, 2016 07:58:37
Откуда: Kyiv, UA
Контактная информация:

Re: Часы на TFT

Сообщение GoldenAndy »

Пробуждение происходит через сброс от собаки.
Причину сброса можно посмотреть в MCUCSR.

А текущее состояние приходится хранить в переменной, у которой проставлен признак .noinit
Такие переменные при включении/сбросе контроллера не инициализируются.
Соответственно, можно накрутить машину состояний, позиция которой живет в такой переменной.
И после перезагрузки анализировать, где мы и что мы.

Вот у меня на макетке сейчас крутится "секундомер" на дисплейчике, котороый реализован на вочдоге.
Дисплей+Мега во сне отребляют порядка 0,2мА (дофига на самом деле), в режиме пробуждения - порядка 11 мА на время порядка 75 мс.

Итого средний ток 0.44ма. :(

Добавлено after 5 minutes 25 seconds:
dadigor писал(а):Еще одна причина, по которой пора бы переходить на STM
Если вы тему прочитаете, то увидите, что в планах по часам есть переход на СТМ.
Хотя на данный момент основной платформой является АВР.

Сейчас, пока китайцы везут детали, идет вялотекущее обсуждение платформы для внешнего датчика.

По СТМкам есть один минус - шаг выводов 0.5 мм (вывод 0.24, зазор 0.26 мм). Это уже почти предел для большинства технологий.
Вон у pin1000 хоть и фоторезист (китайский), но меньше 0.3/0.3 результат бывает рандомный.

В этом плане меги на порядок демократичней.
ИзображениеИзображение
Изображение
 
Telegram               Лучшая благодарность ->
[+]
Аватара пользователя
dadigor
Вымогатель припоя
Сообщения: 593
Зарегистрирован: Пт дек 26, 2014 20:33:38
Откуда: Самая большая деревня. (По мнению Габриэля Гарсиа Маркеса)

Re: Часы на TFT

Сообщение dadigor »

За темой слежу, поэтому и встрял )) По поводу выводов согласен, это непросто, тем не менее ЛУТ меня вполне спасает. Хотя конечно бывают и неудачи. Для внешнего датчика хорошо подходят стмки в soic 20, тут даже не обязательно stm32, достаточно stm8lf3. Зато потребление в спячке у них совсем мизерное.
О технике чего спорить-то, давайте попробуем.
Аватара пользователя
GoldenAndy
Поставщик валерьянки для Кота
Сообщения: 1925
Зарегистрирован: Чт июл 28, 2016 07:58:37
Откуда: Kyiv, UA
Контактная информация:

Re: Часы на TFT

Сообщение GoldenAndy »

dadigor писал(а):достаточно stm8lf3. Зато потребление в спячке у них совсем мизерное.
У Атмег потребление в спячке живет на уровне единиц микроампер.
Но если в меге (так же как и в СТМ, наверное) завести какой то источник тактирования - тот же watchdog или RTC на 32768гц - то потребление уже вырастет до 10-15 мкА.

Но основное потребление у меня - это дисплей. от +5 вольт он жрет как не в себя. 0.2-0.3 мА.

Это пока тестовая площадка
СпойлерИзображение
Потребление в режиме пробуждения (падение на 30 Ом резисторе)
СпойлерИзображение
Я еще поиграюсь с режимами. Ибо из 75 мс пробуждения - основное время занимает StartUp time 64ms, определенное во фьюзах.
ИзображениеИзображение
Изображение
 
Telegram               Лучшая благодарность ->
[+]
Ответить

Вернуться в «Умные мысли»