Вопросы и замечания по статьям и схемам, представленным на нашем сайте

При поддержке РадиоКОТструктор.ру


Ответить

Простой велокомпьютер с цветным графическим LCD

Вс июл 16, 2017 10:18:19

Предлагаю вашему вниманию простой велокомпьютер для велосипеда.

Статья на radiokot http://radiokot.ru/circuit/digital/measure/153

Схема и исходники доступны на GitHub.

Велокомпьютер построен на базе ATmega328p и цветного графического дисплея разрешением 320x240 на базе контроллера ILI9341, подключенного по SPI. Код написан под avr-gcc.

Также можно взять не сам МК, а готовую плату с ним, например, Arduino Pro Mini и использовать её просто как обычный МК с уже удобно разведёнными ножками и готовым кварцем на 16МГц. Всё зависит от того, насколько компактным велокомпьютер хочется видеть.

Немного технических деталей.

При работе на 16МГц максимальную частоту по SPI можно получить 8МГц. Для обновления (например, очистки) всего экрана нужно отправить по шине SPI 320 * 240 * 16 (бит на точку) = 1228800 бит (плюс немного за счёт команд, не только данных). Поэтому экран обновлять чаще 6Гц не получится в принципе.

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

Как всё это работает, можно глянуть на видеоролике.

Re: Простой велокомпьютер с цветным графическим LCD

Вс июл 16, 2017 11:33:49

На ярком солнце цветной экран велокомпа небось бликует?

Re: Простой велокомпьютер с цветным графическим LCD

Вс июл 16, 2017 11:53:59

Не без этого. Для того, собственно, режимы "чёрным по белому" и "белым по чёрному" и сделаны, чтобы максимальную контрастность получить. Но вообще нормально читается.

Re: Простой велокомпьютер с цветным графическим LCD

Ср июл 19, 2017 15:36:28

WiseLord, шикарный проект!
Скажите, что за корпус использован? Если самопечатный нельзя ли выложить на гитхаб и модель для печати?

Re: Простой велокомпьютер с цветным графическим LCD

Ср июл 19, 2017 17:10:07

Нет, купил на радиорынке, примериваясь к экранчику.

Толкатели для кнопок вырезаны (все три одним куском) из резинки какого-то мёртвого пульта ДУ.

Re: Простой велокомпьютер с цветным графическим LCD

Чт июл 20, 2017 05:59:26

Говорите, у АтМеги 70% памяти свободно? А если подвязать к ВК еще и FM радио на м/с ну, типа, RDA5807P, TEA5761UK или подобных? С синим зубом в придачу, чтобы не тащить к голове провода!?

Re: Простой велокомпьютер с цветным графическим LCD

Чт июл 20, 2017 08:49:15

Мне показалось, что алгоритм работы с экраном не оптимальный. Вроде как сначала идет очистка заливкой, а затем вывод нового содержимого в достаточно большую область - так? Если так, что достаточно изменить алгоритм, и мерцание станет полностью незаметным: выводить новое сразу так, чтобы затирать старое, и только в тех областях, где это затирание на самом деле необходимо. Например, для семисегментной цифры только затирать погасающие сегменты и отрисовывать зажигаемые, не меняя те, что сохраняют свое состояние. Например, при замене 7 на 0 только дорисовать 3 сегмента, и при замене 8 на 9 - только стереть один.

Re: Простой велокомпьютер с цветным графическим LCD

Чт июл 20, 2017 09:03:12

Нет, так происходит только при смене экранов (главный - настройки). На них разные размеры шрифта и областей заливки, поэтому проще было именно так сделать.

А при обычной работе перерисовываются только те цифры (не числа, а именно отдельные цифры!), которые меняются.

Можно было бы вообще перерисовывать только изменившиеся сегменты, но и без того получается очень быстро. Посегментная прорисовка уже требовала бы в 7 раз больше памяти для хранения предыдущего состояния. Хотя и памяти свободной прилично.

P.S. Хотя, если передавать в функцию glcdWriteLcdChar() не только текущую цифру, а ещё и предыдущую, то уже в самой ней можно разобраться, как перерисовать символ быстрее.
Последний раз редактировалось WiseLord Чт июл 20, 2017 09:29:09, всего редактировалось 1 раз.

Re: Простой велокомпьютер с цветным графическим LCD

Чт июл 20, 2017 09:25:26

интересный проект!
а другие не пробовали?сименс 65/75...

Re: Простой велокомпьютер с цветным графическим LCD

Чт июл 20, 2017 09:30:35

Эти дисплеи от телефонов нельзя купить, как на ILI9341, можно только достать. Поэтому особого смысла не вижу.

Да и был этот дисплей у меня уже давно, всё никак не мог его пристроить.

Re: Простой велокомпьютер с цветным графическим LCD

Чт июл 20, 2017 21:54:34

WiseLord, Если будет желание, попробуйте сделать велокомпьютер на таком индикаторе 3,5".
Это "монохром с оттенками серого", у него ток потребления около 1mA и высокая контрастность при ярком внешнем освещении.

Re: Простой велокомпьютер с цветным графическим LCD

Чт июл 20, 2017 22:44:48

Хороший проект, я думаю народ заценит для повторения.
Но я бы не стал отпиливать полплаты - тогда можно было бы сделать даталоггер с записью на SD, а там уж заодно и подцепить DS3231 для привязки логов, ну и может быть датчик пульса, хотя бы проводной, для "спортивного" интереса... ИМХО конечно (это типа идей для расширения). Ведь и толщина прибора не критична, как мне кажется.

Re: Простой велокомпьютер с цветным графическим LCD

Пт июл 21, 2017 05:39:18

Если цеплять часы и sd-карту, то лучше было бы убрать оригинальную плату дисплея вообще, сделав свою под шлейф дисплея, где и разместить вообще всё. Может быть, когда-нибудь так всё и будет.

Re: Простой велокомпьютер с цветным графическим LCD

Пт июл 21, 2017 10:55:31

Имея в виду Вашу фразу "Да и лежали у меня в закромах когда-то давно купленные на Aliexpress разные платки, которые и решено было пустить в дело." я подумал, что для логгера достаточно просто подцепить еще одну дешевую платочку с часами и батарейкой, всего несколько проводов.
Хотя, конечно, хорошо бы сделать новый проект с моноплатой. Будем ждать ))

Re: Простой велокомпьютер с цветным графическим LCD

Вс июл 23, 2017 16:55:16

Предлагаю вашему вниманию простой велокомпьютер для велосипеда...

Как для радиолюбительской конструкции - круто!...
И всё же. Практика использования заводского-покупного велокомпьютера показала явные излишества, забитые в прошивку (ки)тайской "офисной детворой". Каденс, килокаллории, частота вращения колеса и прочая лобуда, для "простого" велотуриста-хозяйственника... вызывают больше мороки (пустое ожидание в режиме SCAN), чем пользы. Вопрос то о наличии датчика частоты вращения ведущей звёздочки (каденса) касательно большинства велоНЕгонщиков - однозначно риторический... Неудобно, (если не сказать - небезопасно!) отображать на экране одновременно несколько параметров, ещё и разного размера. Во первых - мелкие знаки хуже видно. Во-вторых - прибор больше отвлекает от контроля за дорожной ситуацией.
Неплохо было бы иметь возможность отображения напряжения аккумулятора в случае "электрификации"/моторизации двухколёсного коня. Без особого опыта в области МК, первое, что придумалось - соорудить преобразователь напряжение-частота, и при помощи удобного переключателя соединять по мере надобности велокомпьютер либо с герконовым датчиком, либо с преобразователем, понимая при этом, например 24,5 км/h как 24,5 В. Это, так сказать - в примитиве. Варианты, варианты...
Лет пять промучился с прибором AS 401. Часы уходили вперёд на десяток минут в месяц. Узнать общий пробег за сезон не позволял постоянный "авто" сброс. Когда надоело припаивать батарейку, чистить и т.п., взял весьма недорогой ASSIZE AS 820, которым вот уж пол-сезона вполне доволен. Окромя - в начале сказанного.
Сэнкс фор эттэншн.

Re: Простой велокомпьютер с цветным графическим LCD

Пт авг 04, 2017 05:54:28

У китайцев появились относительно не дорогие E-lnk https://ru.aliexpress.com/store/product ... 5c0cmKt2jN. Вроде и энергопотребление низкое, и читаемость на солнце, интерфейс SPI. Можно было бы на пробу заказать, усли ув. автор подправит прошивку под любой из трёх типоразмеров.

Re: Простой велокомпьютер с цветным графическим LCD

Пт авг 04, 2017 11:27:48

Такой индикатор подойдёт к девайсу - http://imrad.com.ua/ru/tft-lcd-shield-2-4-touch?

Можно ли ставить М168 вместо М328 или нужно перекомпилировать код?

Re: Простой велокомпьютер с цветным графическим LCD

Пт авг 04, 2017 12:01:08

Размер прошивки около 11кБ, так что в ATmega168 влезть должно. Но, наверное, пересобрать из исходников придётся.
По поводу дисплея не знаю, если он на контроллере ILI9341, должен подойти.

Re: Простой велокомпьютер с цветным графическим LCD

Пт авг 04, 2017 13:54:28

rav133 писал(а):У китайцев появились относительно не дорогие E-lnk
Здесь vanyap1 говорил про E-Ink что:
...Если обновлять дисплей каждую минуту то он проживет не более 3 месяцев.

Re: Простой велокомпьютер с цветным графическим LCD

Пт авг 04, 2017 14:21:47

Размер прошивки около 11кБ, так что в ATmega168 влезть должно. Но, наверное, пересобрать из исходников придётся.

Вроде архитектура М168 и М328 1:1, только у М324 2К ОЗУ, сколько ОЗУ требует прога?

По поводу дисплея не знаю, если он на контроллере ILI9341, должен подойти.

Не, тот дисплей прямо не пойдёт - он кажись параллельный 8-бит, у вас в схеме SPI.
Ответить