Удержанием кнопки 2 вызываем диалог редактирования.
В это диалоге:
- кнопка 2 (BACK) - закрыть диалог без изменений;
- удержание кнопки 2 (BACK) - удаляет текущую станцию;
- кнопка 3 (PREV/LEFT) - стираем правый символ имени станции;
- кнопка 4 (NEXT/RIGHT) - добавляет текущий символ к имени;
- энкодером выбираем текущий символ;
- удержание кнопки 5 (OK) - сохраняет текущую станцию;
- простое нажатие кнопки 5 (OK) дублирует 4, добавляя текущий символ к имени.
Как по мне, получилось достаточно удобно. И общий смысл кнопок, в целом, сохранён (подобная логика и в управлении меню).
Можно было открытие диалога вешать не на 2 кнопку, а на 5 - это имело бы больше смысла. Но я в будущем на неё хочу именно контекстное меню повесить. То есть, если мы на экране тюнера - появится меню с параметрами тюнера, на других экранах - что-то, соответственно, своё.
После плодотворных обсуждений с mixa232323 пришли к небольшому и непринципиальному изменению схемы (слева - до, справа - после):
То есть, немножко иначе реализуется выбор режима загрузки BOOT0 и BOOT1. Вместо 2x3 гребёнки ставится просто транзистор. Поскольку BOOT1 по сути подключен к кнопке BTN2, то всё становится проще:
- если ничего не нажимать, система работает как обычно, прошивать можно через SWD интерфейс.
- если нажать BTN2 и подать питание, загрузится bootloader и прошивать можно через UART1.
Удобство по сравнению с предыдущим вариантом - не надо никуда перебрасывать джамперы на разъёме 2x3, как это сделано на той же Bluepill. Вместо этого полевик просто обеспечит либо 0-1, либо 1-0 конфигурацию, в зависимости от уже выведенной на корпус устройства кнопки.
Если транзистора нет (что вообще-то странно - очень популярная модель, да и любым подобным заменить можно), можно впаять "упрощённый" разъём 2x1 и ставить джампер уже на нём.
P.S. Собрал обновлённый эмулятор проекта под windows, можно поиграться:
[uquote="WiseLord",url="/forum/viewtopic.php?p=3565106#p3565106"]После плодотворных обсуждений с mixa232323 пришли к небольшому и непринципиальному изменению схемы (слева - до, справа - после):
То есть, немножко иначе реализуется выбор режима загрузки BOOT0 и BOOT1.[/uquote]
т.е. если есть программатор ST-Link, то можно не париться и не разводить?
загрузчик по USB в планах есть(если он поместится в конце на первых 64 кб флеш памяти)? Virtual-COM не помешал бы с самого начала, диагностику получать о состоянии шин, опросах периферии и пр.
Загрузчика по USB в планах нет. Во-первых, из-за его принципиальной ненужности. Во-вторых, на конкретно этом МК он реализуется достаточно сложно, а ресурсов потребует относительно много.
[uquote="Stinger",url="/forum/viewtopic.php?p=3565827#p3565827"]Поддержка экранов вот такого типа ARDUINO 2.4 inch TFT with 0x4532 controller (LGDP4532) будет?[/uquote]
Есть мнение, что, возможно, было бы интереснее сделать проект в виде универсальной платы. То есть, МК, ОУ, кварцы и прочая мелочь собираются на плате минимального размера (по типу как те же arduino). Все нужные выводы просто вывести на гребёнку. А уже при разводке платы на конкретный дисплей делать вторую плату под гребёнку этой основной.
[uquote="WiseLord",url="/forum/viewtopic.php?p=3569094#p3569094"]По поводу платы...
Есть мнение, что, возможно, было бы интереснее сделать проект в виде универсальной платы. То есть, МК, ОУ, кварцы и прочая мелочь собираются на плате минимального размера (по типу как те же arduino). Все нужные выводы просто вывести на гребёнку. А уже при разводке платы на конкретный дисплей делать вторую плату под гребёнку этой основной.[/uquote]
идея хорошая, но вместо 2х плат получится 3, основной контроллер, плата переходник под дисплей и сам дисплей. 3 этажа. тогда дисплейную гребенку с боковыми Г-образными пинами на краю платы закладывайте, можно будет шлейффами соединить без переходной платы- адаптора. или на дисплейную плату тогда и кнопки с энкодером компоновать, монтаж в корпус упростится.
второй момент по диплею, в схеме упустили ключ управления ШИМ LED подсветки. ну и питание ключа на общую шину контроллера надо как-то отфильтровать через LC.
всё на гребенку, это BluePill на макетке, с одной стороны макетки BluePill на 2х PBS20 и PLS гребенки Mute , I2C, с другой дисплей и кнопки.
Зато, заказав десяток основных плат в Китае, можно легко будет подключить их к любому дисплею.
Возможно, на гребёнку (вниз) нужно выводить только дисплейные ножки. А все остальные ножки выводить в другую сторону (наверх) для подключения шлейфов IR, UART и прочих.
kloker писал(а):в схеме упустили ключ управления ШИМ LED подсветки
DISP_BCKL оно и есть. Подключается в выводу дисплея, обычно обозначаемому LED (полное заполнение лог. 1 - максимум подсветки)