Тормозит ардуина или дисплей?

pan
Полковник
Сообщения: 2860
Зарегистрирован: 13 апр 2017, 11:57
Имя: noname

Тормозит ардуина или дисплей?

Сообщение pan »

RaiF-03 писал(а): 06 янв 2018, 12:55Во втором случает запись происходит по высокому уровню на входе EN?
да... записывает только по входу EN , но и записывает она в "себя" его же (en), грубо говоря она всегда записывает только 1.
ну да ладно. я просто обратил внимание. вам виднее
Аватара пользователя
RaiF-03
Рядовой
Сообщения: 38
Зарегистрирован: 09 авг 2016, 18:21
Откуда: Оренбург

Тормозит ардуина или дисплей?

Сообщение RaiF-03 »

[ref]pan[/ref], и все равно мне кажется что я вас не до конца понял)
pan писал(а): 06 янв 2018, 13:48грубо говоря она всегда записывает только 1.
Не всегда, если инвертировать вход, то и 0 можно записать)
По другому я не смог придумать, иначе не работает так как хотелось.
pan
Полковник
Сообщения: 2860
Зарегистрирован: 13 апр 2017, 11:57
Имя: noname

Тормозит ардуина или дисплей?

Сообщение pan »

а просто поставить нужную константу не? ))
Изображение
Аватара пользователя
RaiF-03
Рядовой
Сообщения: 38
Зарегистрирован: 09 авг 2016, 18:21
Откуда: Оренбург

Тормозит ардуина или дисплей?

Сообщение RaiF-03 »

[ref]pan[/ref], ну да) все я понял теперь что вы мне хотели объяснить)) Ну что сказать, легких путей не ищем)
ecoins
Полковник
Сообщения: 4005
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 137 раз
Поблагодарили: 152 раза

Тормозит ардуина или дисплей?

Сообщение ecoins »

Проблема в драйвере LCD.
Другого драйвера в природе пока нет - точнее не удалось обнаружить.
На выдачу одной строки уходит в 20 символов тратиться 27 ms.
Давно решаю проблему с распределением вывода на LCD используя псевдо RTOS на FLProg.
Драйвер этот давно хочется переделать, но все как-то откладывается...

Такие же проблемы были c драйверами HC-SR04 (это решил по прерыванию), c DS18B20 (это решил через упомянутую RTOS), DHT - одно измерение (например 1 раз в секунду) тормозит примерно на 5 ms (в планах переделать).

В основном проблемы возникают из-за использования в драйверах двух очень вредных команд - delay() и pulseIn(). На время выполнения этих команд контроллер "зависает" - возможно работают только прерывания, которые традиционно в Arduino используют слабо и неохотно. В частности использования прерываний от таймеров ограничивают использование некоторых пинов в режиме ШИМ.

В своих пользовательских блоках FLProg пока тоже не используя таймера, чтобы не идти поперек реализуемых авторов некоторых правил, но думаю что вопрос этот перезрел...

Полезный материал на тему таймеров и аппаратных прерываний:
http://arduino.ru/Tutorial/Arduino_Interrupts
Аватара пользователя
RaiF-03
Рядовой
Сообщения: 38
Зарегистрирован: 09 авг 2016, 18:21
Откуда: Оренбург

Тормозит ардуина или дисплей?

Сообщение RaiF-03 »

[ref]ecoins[/ref], Чем больше текста на дисплее, тем больше тормозов... Таки сделал для второго дисплея отдельную ардуино.
pan
Полковник
Сообщения: 2860
Зарегистрирован: 13 апр 2017, 11:57
Имя: noname

Тормозит ардуина или дисплей?

Сообщение pan »

а вы не пробовали отправлять данные на дисплей не постоянно, а только по надобности?
Аватара пользователя
RaiF-03
Рядовой
Сообщения: 38
Зарегистрирован: 09 авг 2016, 18:21
Откуда: Оренбург

Тормозит ардуина или дисплей?

Сообщение RaiF-03 »

[ref]pan[/ref], Не пробовал, так как не знаю как это сделать...
pan
Полковник
Сообщения: 2860
Зарегистрирован: 13 апр 2017, 11:57
Имя: noname

Тормозит ардуина или дисплей?

Сообщение pan »

много вариантов.
  1. выводить данные например раз в секунду.
  2. вынести "блоки дисплеев" на отдельную плату и выполнять всю плату по необходимости обновить данные на дисплее (или через некий промежуток времени).
  3. отправлять данные на дисплей только если они изменились.
Аватара пользователя
RaiF-03
Рядовой
Сообщения: 38
Зарегистрирован: 09 авг 2016, 18:21
Откуда: Оренбург

Тормозит ардуина или дисплей?

Сообщение RaiF-03 »

[ref]pan[/ref], таких функции в блоке дисплея нету... или я недопонял вас снова. Можете пример показать?
pan
Полковник
Сообщения: 2860
Зарегистрирован: 13 апр 2017, 11:57
Имя: noname

Тормозит ардуина или дисплей?

Сообщение pan »

[ref]RaiF-03[/ref], конечно нету. это нужно организовать в программе.
Аватара пользователя
RaiF-03
Рядовой
Сообщения: 38
Зарегистрирован: 09 авг 2016, 18:21
Откуда: Оренбург

Тормозит ардуина или дисплей?

Сообщение RaiF-03 »

[ref]pan[/ref], Вроде так должно получиться?
В первом варианте отправка данных идет если они изменились
333.jpg
Во втором варианте данные отправляются каждые 300мс
3333.png
Если оно правильно то все равно ничего не изменилось.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
pan
Полковник
Сообщения: 2860
Зарегистрирован: 13 апр 2017, 11:57
Имя: noname

Тормозит ардуина или дисплей?

Сообщение pan »

зачем вы всё запихиваете в блоки...
нет. не так всё должно получиться.
примерно вот так
Изображение
Аватара пользователя
RaiF-03
Рядовой
Сообщения: 38
Зарегистрирован: 09 авг 2016, 18:21
Откуда: Оренбург

Тормозит ардуина или дисплей?

Сообщение RaiF-03 »

[ref]pan[/ref], совсем не то что хотелось... Взять к примеру модуль часов реального времени: при изменении строки часы появляются на доли секунды и пропадают. Вообщем, спасибо за помощь.
pan
Полковник
Сообщения: 2860
Зарегистрирован: 13 апр 2017, 11:57
Имя: noname

Тормозит ардуина или дисплей?

Сообщение pan »

[ref]RaiF-03[/ref], блин, точно. я с другим блоком спутал. в штатном пропадает отображение.
значит надо не сигнал EN активировать , а плату на которой блоки дисплея.
ecoins
Полковник
Сообщения: 4005
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 137 раз
Поблагодарили: 152 раза

Тормозит ардуина или дисплей?

Сообщение ecoins »

Проблема в библиотеке для дисплея.В ней очень много вставок delay().
Уже есть другая библиотека, испытанная под FLProg но с нестандартным блоком пользователя.
Но это требует и несколько иного подхода к разработке программы - работа с реальным временем.
ecoins
Полковник
Сообщения: 4005
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 137 раз
Поблагодарили: 152 раза

Тормозит ардуина или дисплей?

Сообщение ecoins »

Проблема в стандартной библиотеке, там много раз используется delay()

Отправлено спустя 1 минуту 2 секунды:
По библиотеке - пришлите email - вышлю с примером
Ответить

Вернуться в «Помогите, а то я "нимагу"»

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

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