Страница 2 из 250

Re: EasyBuilder - Скорая помощь новичкам

СообщениеДобавлено: 27 сен 2011, 10:00
VanMo
Артём писал(а):Спасибо, всё получилось. Ещё один вопрос нужно чтобы при нажатии на кнопку происходил переход на другой экран и одновременно бит устанавливался в единицу. Как это реализовать?

Вариантов несколько, например:
1. Написать макрос и привязать его к функциональной кнопке.
2. Переходить на экран функциональной кнопкой и устанавливать бит при открытии экрана с помощью невидимой битовой кнопки.

Re: EasyBuilder - Скорая помощь новичкам

СообщениеДобавлено: 27 сен 2011, 17:49
Артём
Ещё не имел дело с макросами, не могли бы вы привести простейший пример, например при нажатии кнопки установка бита в единицу.

Re: EasyBuilder - Скорая помощь новичкам

СообщениеДобавлено: 28 сен 2011, 17:50
Denis
Рекомендую вам все-таки ознакомиться с руководством пользователя на EasyBuilder.
Там вы найдете ответы на этот и другие вопросы.
По макросам глава 18.

Re: EasyBuilder - Скорая помощь новичкам

СообщениеДобавлено: 20 окт 2011, 10:46
zaxar
Добрый день.

Не подскажете, как вывести русский текст в объект "Текстовый дисплей" из макроса. Пробовал разные настройки свойств объекта, но безуспешно. Строка латиницей выводится нормально. Ниже пара сток макроса:

char msg_init[12] = "Нажми кнопку"
......
StringSet(msg_init[0], "Local HMI", LW, 128, 16)
.....

Re: EasyBuilder - Скорая помощь новичкам

СообщениеДобавлено: 20 окт 2011, 10:58
Denis
Видимо, дело в том, что русские символы кодируются 2мя байтами.
Поэтому вам придется создавать таблицу в 2 раза длиннее, и буквы прописывать и числовом виде.

Re: EasyBuilder - Скорая помощь новичкам

СообщениеДобавлено: 20 окт 2011, 13:48
zaxar
Не совсем так как вы говорите, в макросе символы в строке вида char msg_init[13] = "НажмиКнопку" не кодируются двумя байтами

Re: EasyBuilder - Скорая помощь новичкам

СообщениеДобавлено: 20 окт 2011, 14:02
Denis
Но в объекте "ASCII дисплей" для того, чтобы выводились русские символы нужно поставить галочку Unicode.
И, соответственно, из макроса записывать в этот объект символы в формате Unicode, а это 2 байта на символ.

Re: EasyBuilder - Скорая помощь новичкам

СообщениеДобавлено: 08 ноя 2011, 16:36
Boolean
Здравствуйте, вот столкнулась с мало понятной ситуацией. Для проверки функции сохранения алармов в экселе, создала 3 кнопки (ToggleSwitch), в журнале событий отмечены условия оповещения когда бит установлен в 0 и 1, т.е должно зарегистрироваться нажатие и отжатие кнопки. В экселе в таблице в графе Event отображаются 0 и 2, но с совершенно неясной логикой. Подскажите, как исправить это или получить достоверную информацию о вкл/выкл кнопки. Спасибо

Re: EasyBuilder - Скорая помощь новичкам

СообщениеДобавлено: 09 ноя 2011, 21:17
PushkarevVB
Добрый день!
Начинаю осваивать EasyBuilder, возникли вопросы по адресации данных в памяти панелей Weintek.
Хотелось бы избежать ошибок при использовании ячеек памяти.
1) Ячейки памяти типа LB, LW_BIT, LW находятся в ОЗУ (информация теряется при отключении питания) ?
2) Область памяти типа LW_BIT и LW - это разные области памяти, или LW_BIT это способ адресации
к отдельным битам памяти LW ?
3) Ячейки памяти типа RBI, RW_BIT, RW_A_BIT, RW, RWI, RW_A находятся в энергонезависимой Flash-памяти
и не пересекаются с областью памяти отводимой под код программы ?
4) Область памяти типа RW_BIT и RW - это разные области памяти, или RW_BIT это способ адресации
к отдельным битам памяти RW ?
5) Чем отличаются память RW от RW-A ? Что рекомендуется размещать в RW и RW_A ?
6) RBI и RWI это два индексных регистра для доступа к ячейкам памяти RW_BIT и RW ?

Re: EasyBuilder - Скорая помощь новичкам

СообщениеДобавлено: 10 ноя 2011, 15:33
Denis
по поводу областей памяти смотрите описание главу 22.
там расписаны адреса различных областей памяти. Как правило, битовые области являются частью областей слов - то есть LW_BIT - это доступ к битам слов LW.
естественно, ячейки, расположенные во флеш памяти не пересекаются с с памятью, в которой расположен проект.