Кто любит RISC в жизни, заходим, не стесняемся.
Ответить

Re: Меню в stm32 & LCD

Чт ноя 09, 2023 12:05:22

Я так понял что если у меня G 0 G1 G2 G3 вообщем параметров много которые разбросаны по меню.То мы на каждый параметр создаём функцию?

Re: Меню в stm32 & LCD

Чт ноя 09, 2023 12:11:43

Ну не прямо функцию, а один экземпляр menuitem на один параметр. А уже туда можно навешивать функции, хоть одну на всех, хоть каждому свою. В данной реализации вот так.

Re: Меню в stm32 & LCD

Чт ноя 09, 2023 12:51:25

Код:
а один экземпляр menuitem на один параметр.
Так что это функция или нет?

Re: Меню в stm32 & LCD

Чт ноя 09, 2023 12:58:29

Это структура, которая содержит строку с названием, один целевой параметр и несколько вспомогательных значений, две ссылки на другие экземпляры такой же структуры и одну ссылку на функцию.

Re: Меню в stm32 & LCD

Чт ноя 09, 2023 13:47:14

Ну хорошо menuitem sttruct.А
Код:
cortres.right=&blanktime;
в структуре menuitem есть right А cortres это тоже структура и blanktime структура.Эта строчка мною читается как элемент структуры резименовуется другой структурой.Я такое подобие проделал на Cubeide .У меня пишет ошибку.? почему?

Добавлено after 6 minutes 56 seconds:
Код:
int32_t save()
- это функция .Компилятор пишет ошибку.В какой среде писали программу.?

Re: Меню в stm32 & LCD

Чт ноя 09, 2023 13:50:08

Мой код как раз в КубИде и писался. Смотрите внимательнее за объявлениями, что и какого типа и ссылка на какой тип. Что за ошибка-то хоть?

Re: Меню в stm32 & LCD

Чт ноя 09, 2023 14:01:16

Код:
menuitem mainmenu={{0x41, 0xBC, 0xBE, 0xBB, 0xB8, 0xBF, 0x79, 0xE3, 0x61, 0x20, 0x79, 0xE3, 0x61, 0x70, 0x61, 0x3A, 0x00}, 0, 65000, 0, 0, 0, NULL, NULL, NULL, 0};
Вот поле которое характеризует 0 пункты меню.Символы кирилица а всё остальное что.И где все эти пункты меню прописываются изначально?

Re: Меню в stm32 & LCD

Чт ноя 09, 2023 14:11:01

Это объявление с инициализацией. Через запятую тупо начальные значения полей по порядку. То есть
menuitem mainmenu = {name(массив символов), min, max, value, oldvalue, step, left (ссылка на соседа слева), right (ссылка на соседа справа), action(ссылка на функцию действия), id};
Потом некоторым пунктам уже на этапе исполнения присваиваются нужные значения.

Re: Меню в stm32 & LCD

Чт ноя 09, 2023 14:12:03

И по мне то это массив только в таком варианте пишет ошибку.

Re: Меню в stm32 & LCD

Чт ноя 09, 2023 14:16:02

Да, даже жаль, что нет никакой возможности узнать что же за ошибка. Ну ничего, надо отпустить и жить дальше.

Re: Меню в stm32 & LCD

Чт ноя 09, 2023 14:20:28

Код:
Это объявление с инициализацией.
Где она одьявляется и иниацилизуется и без типа данных(int,char) пишет ошибку .И
Код:
={{}};
и при этом пишет ошибку .?
Ответить