Зависание max7219

Использование дисплеев и обсуждение пользовательских блоков к ним
Ответить
OlegAn1962
Лейтенант
Сообщения: 361
Зарегистрирован: 07.09.2015{, 23:53}
Репутация: 0

Зависание max7219

#1

Сообщение OlegAn1962 » 05.03.2017{, 18:16}

Приветствую всех, столкнулся с проблемой зависания max 7219 при включении мощной нагрузки. При этом либо все восемь сегментов показывают восьмерки, либо отдельные сегменты не светятся. Сама ардуинка не зависает, конденсаторы на силовых реле стоят. Проблема точно такая, как описано в этой теме. В качестве решения там предложено следующее: " Решилось прописыванием инициализации всех-всех регистров max7219 не только на стартапе МК, но и на каждом цикле основной программы.
Сегменты перекашивает, но они тут же исправляются, что меня вполне устраивает."  
   Так вот вопрос, никто не может написать такой блок инициализации для флпрог, а то я с кодами не очень?

OlegAn1962
Лейтенант
Сообщения: 361
Зарегистрирован: 07.09.2015{, 23:53}
Репутация: 0

Зависание max7219

#2

Сообщение OlegAn1962 » 09.03.2017{, 21:52}

Методом тыка выяснил следующее:
если скопировать строчки : 
_max7219BusP12P23P34.shutdown(0, false);
_max7219BusP12P23P34.setIntensity(0, 8);
_max7219BusP12P23P34.clearDisplay(0);

из секции void setup() в секцию void loop() в место расположения блока max7219 , то все работает отлично, зависания прекратились. Попробовал сделать блок, скопировав в секцию loop указанные выше строки. С данным конкретным проектом скомпилировалось как надо, но при попытке вставить этот блок в другой проект компилятор ругается, т. к. в другом проекте переменная _max7219Bus имеет другое обозначение. Как сделать такой блок универсальным ?
Вложения
init7219-CODE-.ubi
(2.87 КБ) 60 скачиваний

Аватара пользователя
Boroda
Капитан
Сообщения: 836
Зарегистрирован: 01.05.2016{, 01:04}
Репутация: 38
Откуда: Коломна
Имя: Станислав
Контактная информация:

Зависание max7219

#3

Сообщение Boroda » 09.03.2017{, 22:09}

OlegAn1962, я уже думал об этом, для каждого проекта нужен свой блок. Тут только Сергей (Автор) поможет. Попросить его, чтоб сделал у блока ногу инициализации.

OlegAn1962
Лейтенант
Сообщения: 361
Зарегистрирован: 07.09.2015{, 23:53}
Репутация: 0

Зависание max7219

#4

Сообщение OlegAn1962 » 09.03.2017{, 23:41}

Boroda, ясно, прийдется пока ручками.

Ответить

Вернуться в «Дисплеи и индикаторы»