Не работает блок меню

Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06.09.2015{, 16:56}
Репутация: 25
Откуда: Новосибирск

Не работает блок меню

#1

Сообщение Слимпер » 15.10.2016{, 18:56}

Просто беру вставлю в пустой проект один блок "Основной блок меню", вообще его не настраиваю, и при компиляции в IDE получаю такое:
СпойлерПоказать
pr40.ino: In function 'void _valueUpEvents(byte)':
pr40.ino:103:20: error: '_menuValueArray_bool' was not declared in this scope
pr40.ino: In function 'void _valueDownEvents(byte)':
pr40.ino:113:20: error: '_menuValueArray_bool' was not declared in this scope
pr40.ino: In function 'String _menuOutputValueString(byte)':
pr40.ino:120:74: error: '_menuValueStringArray' was not declared in this scope
pr40.ino: In function 'void EEPROMWriteInt(int, int)':
pr40.ino:140:9: error: 'EEPROM' was not declared in this scope
Ошибка компиляции.
Добавлено (15.10.2016, 18:24)
---------------------------------------------
Если снять галочку  Входы 'Значение +' / 'Значение
то две ошибки пропадаю
СпойлерПоказать
pr40.ino: In function 'void _valueUpEvents(byte)':
pr40.ino:103:20: error: '_menuValueArray_bool' was not declared in this scope
pr40.ino: In function 'void _valueDownEvents(byte)':
pr40.ino:113:20: error: '_menuValueArray_bool' was not declared in this scope
Добавлено (15.10.2016, 18:28)
---------------------------------------------
Если в единственном пункте меню (который создается по умолчанию при добавлении  блока ) поставить галочку Сохранить в EEPROM
То пропадает еще одна ошибка
СпойлерПоказать
pr40.ino: In function 'void EEPROMWriteInt(int, int)':
pr40.ino:140:9: error: 'EEPROM' was not declared in this scope
Добавлено (15.10.2016, 18:56)
---------------------------------------------
Если создать хотя бы один Группа параметров 
То пропадает еще одна ошибка:
СпойлерПоказать
pr40.ino: In function 'String _menuOutputValueString(byte)':
pr40.ino:120:74: error: '_menuValueStringArray' was not declared in this scope
Последний раз редактировалось Слимпер 15.10.2016{, 18:58}, всего редактировалось 1 раз.

Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06.09.2015{, 16:56}
Репутация: 25
Откуда: Новосибирск

Не работает блок меню

#2

Сообщение Слимпер » 15.10.2016{, 19:33}

Слимпер писал(а):Если снять галочку  Входы 'Значение +' / 'Значението две ошибки пропадаю
Если вернуть эту галочку,  она нужна для нормального редактирования параметров, если всего 3-4 кнопки использовать, то ошибки возвращаются, но если одноврименно с этим добавить один пункт меню  типа Bool со следующими настройками
 

то ошибки пропадают, но если выбрать другие варианты настроек, то появляются другая ошибка 
СпойлерПоказать
pr61.ino: In function 'String _convertBoolean(byte, byte, byte)':
pr61.ino:222:49: error: '_menuItemsBooleanCustomTextsArray' was not declared in this scope
pr61.ino:222:118: error: '_menuItemsBooleanCustomTextsArray' was not declared in this scope
Ошибка компиляции.
Вложения
9972078.png

Аватара пользователя
support
Супермодератор
Сообщения: 1712
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 580
Откуда: Астрахань
Имя: Сергей
Контактная информация:

Не работает блок меню

#3

Сообщение support » 16.10.2016{, 07:16}

Пока сижу на вокзале Тюмени, исправил эти баги. Как приеду домой, выложу патчь. Извините за ошибки, торопился до отъезда выложить версию. Дома все сложнее. Жена рычит "вместо того что бы заниматься ребёнком занимается всякой фигнёй" )))). Но выложить патчик я время найду.
Автор программы FLProg.

Аватара пользователя
Max
Лейтенант
Сообщения: 691
Зарегистрирован: 06.09.2015{, 13:12}
Репутация: 5
Откуда: Тюмень-Баку
Имя: Максим

Не работает блок меню

#4

Сообщение Max » 16.10.2016{, 19:27}

support писал(а):Пока сижу на вокзале Тюмени
Не знал, что Вы в Тюмени и проезжали через наши края!

WZV
Сержант
Сообщения: 208
Зарегистрирован: 06.09.2015{, 14:31}
Репутация: 23

Не работает блок меню

#5

Сообщение WZV » 16.10.2016{, 19:54}

В Тюмени фирма Reavisor, на основе Arduino  сделала самый бюджетный умный дом. Может кому эта информация пригодится.

Аватара пользователя
Dev1
Майор
Сообщения: 1015
Зарегистрирован: 12.07.2016{, 18:04}
Репутация: 58
Откуда: Гондурас

Не работает блок меню

#6

Сообщение Dev1 » 19.10.2016{, 14:09}

Сегодня обновился. Чистый проект. При выставлении boolean во время компиляции ошибки:

C:\Users\Dev1\AppData\Local\Temp\flprog\pr34\pr34.ino: In function 'String _convertBoolean(byte, byte, byte)':

pr34:129: error: '_menuItemsBooleanCustomTextsArray' was not declared in this scope

if(_menuValueArray_bool[valueIndex -1]) {return _menuItemsBooleanCustomTextsArray[convertFormat - 11];} else{ return _menuItemsBooleanCustomTextsArray[convertFormat - 10 ];}

^

pr34:129: error: '_menuItemsBooleanCustomTextsArray' was not declared in this scope

if(_menuValueArray_bool[valueIndex -1]) {return _menuItemsBooleanCustomTextsArray[convertFormat - 11];} else{ return _menuItemsBooleanCustomTextsArray[convertFormat - 10 ];}

^

exit status 1
'_menuItemsBooleanCustomTextsArray' was not declared in this scope
Вложения
3397024.jpg
Win7-64 FLProg v7.2.2 Portable :fie:

Аватара пользователя
support
Супермодератор
Сообщения: 1712
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 580
Откуда: Астрахань
Имя: Сергей
Контактная информация:

Не работает блок меню

#7

Сообщение support » 19.10.2016{, 14:23}

Понял. Исправлю. Пока могу посоветовать выставить в боллеановском пункте меню формат конвертации -собственный текст и в соответствующих полях ввести тексты которые нужны для отображения труе и фалсе
Автор программы FLProg.

Аватара пользователя
support
Супермодератор
Сообщения: 1712
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 580
Откуда: Астрахань
Имя: Сергей
Контактная информация:

Не работает блок меню

#8

Сообщение support » 19.10.2016{, 14:25}

Не доглядел эту ошибку
Автор программы FLProg.

Аватара пользователя
Dev1
Майор
Сообщения: 1015
Зарегистрирован: 12.07.2016{, 18:04}
Репутация: 58
Откуда: Гондурас

Не работает блок меню

#9

Сообщение Dev1 » 19.10.2016{, 14:30}

И вот еще. Большинство дисплеев не поддерживают кириллицу(я так вообще не пользуюсь кириллицей), в формате конвертации присутствуют Да/Нет. Не могли бы вы поменять их на On/Off.
Win7-64 FLProg v7.2.2 Portable :fie:

Аватара пользователя
support
Супермодератор
Сообщения: 1712
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 580
Откуда: Астрахань
Имя: Сергей
Контактная информация:

Не работает блок меню

#10

Сообщение support » 19.10.2016{, 14:34}

Как раз для этого и существует формат конвертации - собственный текст. Если его выбрать, появятся два поля. Текст для true и текст для false. Туда и вводиде off и on соответственно
Автор программы FLProg.

Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06.09.2015{, 16:56}
Репутация: 25
Откуда: Новосибирск

Не работает блок меню

#11

Сообщение Слимпер » 19.10.2016{, 14:49}

support, Что я не понял по какому критерию происходит запись в EEPROM?
При каждом изменении числа?

Добавлено (19.10.2016, 14:49)
---------------------------------------------
И еще хотел спросить почему используете функцию  write(), а не update().
Еще с EEPROM можно работать функциями put и get, которые читаю данные любых типов, даже массивы одной командой.

Аватара пользователя
support
Супермодератор
Сообщения: 1712
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 580
Откуда: Астрахань
Имя: Сергей
Контактная информация:

Не работает блок меню

#12

Сообщение support » 19.10.2016{, 14:53}

Да запись происходит при изменении числа. Насчёт put, get и update - посмотрю., не знал.
Автор программы FLProg.

Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06.09.2015{, 16:56}
Репутация: 25
Откуда: Новосибирск

Не работает блок меню

#13

Сообщение Слимпер » 19.10.2016{, 15:04}

support писал(а):Да запись происходит при изменении числа.
Уточню, команда генерируется, только при окончании вода или при каждом увеличении на единицу шага?
Или я неправильно понимаю, например:
Есть уставка =10 при помощи кнопок + - (шаг 1 ) надо изменить число на 25. Вопрос сколько команд запись будет сделано 1 или 15?

Добавлено (19.10.2016, 15:04)
---------------------------------------------
support писал(а):Насчёт put, get и update - посмотрю., не знал.
Вот тут Описание а тут  Обсуждение, может пригодится.

Sergik
Рядовой
Сообщения: 5
Зарегистрирован: 15.06.2016{, 15:59}
Репутация: 0

Не работает блок меню

#14

Сообщение Sergik » 19.10.2016{, 22:56}

Обнаружил проблему компиляции при выборе в основном блоке меню переменной типа float

pr11.ino: In function 'void _menuSaveToEEPROMItem(byte)':

pr11.ino:643:80: error: 'EEPROMWriteFloat' was not declared in this scope

Если поставить галочку в пункте сохранить в EEPROM ошибка пропадает!
С переменной типа integer все работает без проблем.

Аватара пользователя
Dev1
Майор
Сообщения: 1015
Зарегистрирован: 12.07.2016{, 18:04}
Репутация: 58
Откуда: Гондурас

Не работает блок меню

#15

Сообщение Dev1 » 20.10.2016{, 12:30}

Sergik писал(а):Обнаружил проблему компиляции при выборе в основном блоке меню переменной типа float

pr11.ino: In function 'void _menuSaveToEEPROMItem(byte)':

pr11.ino:643:80: error: 'EEPROMWriteFloat' was not declared in this scope

Если поставить галочку в пункте сохранить в EEPROM ошибка пропадает!
С переменной типа integer все работает без проблем.
На последнем апдейте программы не заметил проблемы с Float
Вложения
4357483.jpg
0996830.jpg
Win7-64 FLProg v7.2.2 Portable :fie:

Аватара пользователя
slavas
Лейтенант
Сообщения: 562
Зарегистрирован: 14.09.2015{, 22:29}
Репутация: 0
Откуда: Санкт-Петербург

Не работает блок меню

#16

Сообщение slavas » 20.10.2016{, 14:54}

Спасибо автору за блок.
В блоке есть галка сохранить в eeprom, как эту переменную использовать потом в проекте, откуда её выдёргивать?

Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06.09.2015{, 16:56}
Репутация: 25
Откуда: Новосибирск

Не работает блок меню

#17

Сообщение Слимпер » 20.10.2016{, 14:59}

slavas писал(а):В блоке есть галка сохранить в eeprom, как эту переменную использовать потом в проекте, откуда её выдёргивать?
Я как понял, вторым блоком  "Значение пункта меню"
Последний раз редактировалось Слимпер 20.10.2016{, 14:59}, всего редактировалось 1 раз.

Аватара пользователя
nalnik
Майор
Сообщения: 1171
Зарегистрирован: 14.05.2016{, 17:12}
Репутация: 80
Откуда: Кисловодск
Имя: Александр

Не работает блок меню

#18

Сообщение nalnik » 20.10.2016{, 15:07}

Огромное спасибо за блок,
вот мой кусок с двумя пунктами - может кому поможет --- ЭТО просто пример, прошу не матюкать,
дисплей четыре стоки
на второй меню

Хорошо если бы в епром при первом пуске и выборе Мин/Макс в МЕНЮ записывалось значение в этом "диапазоне", бывает что записывается 168888 подобное значение - отматывая в ручную шагом 1 - увалим ЕПРОМ
- Для этого -- "кнопка S" уставка по умолчанию .

Порадовал вход в любое меню и ввод цыфорок с кнопок (клавиатуры).
Большое спасибо!

----Бардак ----
Изображение
Вложения
0X-00.flp
(651.75 КБ) 49 скачиваний
Последний раз редактировалось nalnik 20.10.2016{, 16:03}, всего редактировалось 1 раз.
Я хочу быть добрее, но люди сами нарываются.

Аватара пользователя
slavas
Лейтенант
Сообщения: 562
Зарегистрирован: 14.09.2015{, 22:29}
Репутация: 0
Откуда: Санкт-Петербург

Не работает блок меню

#19

Сообщение slavas » 20.10.2016{, 16:17}

Слимпер, спасибо.

Аватара пользователя
Evgesha
Лейтенант
Сообщения: 511
Зарегистрирован: 29.10.2015{, 09:57}
Репутация: 16
Откуда: Kazakhstan
Имя: Evgesha

Не работает блок меню

#20

Сообщение Evgesha » 20.10.2016{, 16:48}

nalnik, ну нифига ты там схемы собираешь и мутишь,судя по фоткам, красавчик так то, давай делись опытом и схемами ..... если не секретно канеш))))(ч)но.....
ПОМОЩЬ ПРОЕКТУ FLPROG:
http://flprog.ru/pomoshh-proektu/

Ответить

Вернуться в «Архив (Версия 2.1)»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей