Пользовательский блок ( Помощь )

На этом форуме Вы можете задать вопросы знатокам программы и автору.
Аватара пользователя
Dev1
Майор
Сообщения: 1026
Зарегистрирован: 12 июл 2016, 18:04
Откуда: Гондурас

Пользовательский блок ( Помощь )

Сообщение Dev1 »

pan писал(а):явно засада с этой строчкой { Key |= 1 << Count; }
Не люблю я эти биты.... Порылся тут. Где как пишут  
По одному описанию получается: Key присваивается при операторе |= значение 1 и до нее все будет в 1 на сдвиг влево Count. Похоже на результат
pan писал(а):получаю 00000001 00000011 00000111
Вот нужно поиграть с оператором...
Win10-64 FLProg v7.5.2 Portable :fie:
pan
Полковник
Сообщения: 2860
Зарегистрирован: 13 апр 2017, 11:57
Имя: noname

Пользовательский блок ( Помощь )

Сообщение pan »

снова я. наткнулся на такую проблему с PROGMEM.
массив создается, данные из него читаются, передаются в порт, все нормально.но...
когда использую чтение в условии оператора for , то в порт ни чего не отправляется(диод не мигает), либо порт  отрубается, либо дуня зависает.
господа знатоки СИшники, объяните нубу что не так
вот пример :
for(int i=0; pgm_read_dword(&data (i)) > xxxxx; i++) { бла бла бла }
тоесть смысл в том, чтобы прошерстить массив и узнать какое число по счету меньше  хххх.

Добавлено (27.07.2017, 20:40)
---------------------------------------------
pan писал(а):data (i)
 знаю скобки должны быть квадратные но их не получается тут вставить
Последний раз редактировалось pan 27 июл 2017, 20:39, всего редактировалось 1 раз.
Аватара пользователя
Dev1
Майор
Сообщения: 1026
Зарегистрирован: 12 июл 2016, 18:04
Откуда: Гондурас

Пользовательский блок ( Помощь )

Сообщение Dev1 »

pan писал(а):знаю скобки должны быть квадратные но их не получается тут вставить


Код: Выделить всё

data [i]
Цикл можно проверить выводом в {бла, бла, бла}   Serial.println(i); (остальное действие закоментить) работает он вапще или нет. Если нет то уже искать в условии. Цикл будет работать пока pgm_read_dword(&data (i)) > xxxxx
Последний раз редактировалось Dev1 27 июл 2017, 21:35, всего редактировалось 1 раз.
Win10-64 FLProg v7.5.2 Portable :fie:
pan
Полковник
Сообщения: 2860
Зарегистрирован: 13 апр 2017, 11:57
Имя: noname

Пользовательский блок ( Помощь )

Сообщение pan »

Dev1 писал(а):Цикл можно проверить выводом в {бла, бла, бла}
pan писал(а):когда использую чтение в условии оператора for , то в порт ни чего не отправляется(диод не мигает), либо порт  отрубается, либо дуня зависает.
Аватара пользователя
Dev1
Майор
Сообщения: 1026
Зарегистрирован: 12 июл 2016, 18:04
Откуда: Гондурас

Пользовательский блок ( Помощь )

Сообщение Dev1 »

Еще кто тут говорил, что в пользовательских блоках не обьявлять в loop переменную
Кодfor(int i=0;
, а обьявить её в declare. Какие то проблемы были, вроде программа как 2 раза обьявляла.
Win10-64 FLProg v7.5.2 Portable :fie:
pan
Полковник
Сообщения: 2860
Зарегистрирован: 13 апр 2017, 11:57
Имя: noname

Пользовательский блок ( Помощь )

Сообщение pan »

Dev1 писал(а):блоках не обьявлять в loop переменную
все нормально. тем более в циклах так постоянно делают. когда убираю условие pgm_read_dword(&data (i)) > xxxxx  и ставлю что то другое, все работает. и порт работает. как только вставляю обратно, порт молчит. или сама дуня в шоке
Аватара пользователя
Dev1
Майор
Сообщения: 1026
Зарегистрирован: 12 июл 2016, 18:04
Откуда: Гондурас

Пользовательский блок ( Помощь )

Сообщение Dev1 »

Значит не получает значение pgm_read_dword(&data (i))  и встает в ступор.
Win10-64 FLProg v7.5.2 Portable :fie:
pan
Полковник
Сообщения: 2860
Зарегистрирован: 13 апр 2017, 11:57
Имя: noname

Пользовательский блок ( Помощь )

Сообщение pan »

но вне оператора for получает.  
может его там нельзя использовать? я не нашел такой инфы

Добавлено (27.07.2017, 22:05)
---------------------------------------------
а если вставить   pgm_read_dword(&data (i))   в цикл где "бла бла бла" вообще пишет ошибку
Аватара пользователя
Dev1
Майор
Сообщения: 1026
Зарегистрирован: 12 июл 2016, 18:04
Откуда: Гондурас

Пользовательский блок ( Помощь )

Сообщение Dev1 »

У вас случаем pgm_read_dword(&data (i)) не функция?
Win10-64 FLProg v7.5.2 Portable :fie:
pan
Полковник
Сообщения: 2860
Зарегистрирован: 13 апр 2017, 11:57
Имя: noname

Пользовательский блок ( Помощь )

Сообщение pan »

массив

Добавлено (27.07.2017, 22:41)
---------------------------------------------
const unsigned long data[] PROGMEM =
Аватара пользователя
Dev1
Майор
Сообщения: 1026
Зарегистрирован: 12 июл 2016, 18:04
Откуда: Гондурас

Пользовательский блок ( Помощь )

Сообщение Dev1 »

Мы гадаем на кофейной гуще, сложно сказать что у вас происходит по отрывкам...
Win10-64 FLProg v7.5.2 Portable :fie:
pan
Полковник
Сообщения: 2860
Зарегистрирован: 13 апр 2017, 11:57
Имя: noname

Пользовательский блок ( Помощь )

Сообщение pan »

дабы не плодить темы напишу сюда. может ли кто немного переделать пару библиотек. это связано с SPI. если для бесплатно это сложно и лень , в личке можно обозначить адекватную цену.

Добавлено (19.09.2017, 08:38)
---------------------------------------------
неужели ни кто не может
Последний раз редактировалось pan 19 сен 2017, 08:35, всего редактировалось 1 раз.
Аватара пользователя
Dev1
Майор
Сообщения: 1026
Зарегистрирован: 12 июл 2016, 18:04
Откуда: Гондурас

Пользовательский блок ( Помощь )

Сообщение Dev1 »

Цитата Mcsimkaтак как должно быть: myTFT.setFont ( BigFont );
В пользовательском блоке - параметры пользователя - добавляем переменную, выбираем тип sring ставим галочку "Вставлять в код без скобок(как есть)".

А так я делал разные блоки на вывод текста под свой шрифт.
Последний раз редактировалось Dev1 24 окт 2017, 15:03, всего редактировалось 1 раз.
Win10-64 FLProg v7.5.2 Portable :fie:
Ответить

Вернуться в «Спросить у знатоков»

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

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