Adruino + Led Driver MBI5026

akrush
Offline
Зарегистрирован: 02.02.2013

 

Добрый вечер, сразу скажу я новичек по части Ардуино и вообще электротехники.
 
Преобрел сегодня лед матрицу 8x8 и драйвер светодиодов MBI5026 , пины OUT0-OUT18 с драйвера подключил ко всем выходам LED матрица, GDN к минусу VSS соотвественно к + на плате Arduino (http://www.cnledw.com/upload/2011/05/14/2011051417585782904.jpg), а вот какие выходы подключать дальше, чтобы подружить драйвер с платой Arduino не могу найти.
 
Eсли кто сталкивался помогите пожалуйста.
 
Заранее стаписо!
maksim
Offline
Зарегистрирован: 12.02.2012

Пример кода вывода 16 бит в MBI5026

#define SDI 10
#define CLK 9
#define LE 8

void setup() 
{
  pinMode(SDI, OUTPUT);
  pinMode(CLK, OUTPUT);
  pinMode(LE, OUTPUT);
}

void loop() 
{   
 Out(B11111111, B11111111);
 delay(1000);
 Out(B00000000, B00000000);
 delay(1000);
}

void Out(byte data1, byte data2) 
{   
  shiftOut(SDI, CLK, MSBFIRST, data2);  
  shiftOut(SDI, CLK, MSBFIRST, data1);  
  digitalWrite(LE, HIGH);
  delayMicroseconds(1);
  digitalWrite(LE, LOW);
}

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

akrush
Offline
Зарегистрирован: 02.02.2013

Спасибо Большое! Подключил все как на на схеме и прошил програмку, вроде все верно но эффекта нуль.

Буду проверять, может где, что, напутал.

maksim
Offline
Зарегистрирован: 12.02.2012

Ни один светодиод не загорелся? Резистор на 1кОм стоит?

akrush
Offline
Зарегистрирован: 02.02.2013

Да, ничего не загорелось, резистор на 1КОм как по схеме.

Единственное номера выводов у меня немного другие (pwm сохранил), т.к. отстальные пока заняты под другой проект.

 

SDI -> ~10 
CLK -> ~11
LE -> 13
 
maksim
Offline
Зарегистрирован: 12.02.2012

То есть в скейтче тоже соответственно так?

#define SDI 10
#define CLK 11
#define LE 13

 

akrush
Offline
Зарегистрирован: 02.02.2013

Да, конечно. :)

 

Но уже, только что, переткнул на бредборде на эталонную, теперь все как у вас по схеме.

Соответственно в коде 

#define SDI 10
#define CLK 9
#define LE 8

Все равно не работает.

maksim
Offline
Зарегистрирован: 12.02.2012

Тогда остается последнее... в даташите, почему-то не описано как постоен выходной канал, предполагаю что он может коммутировать нагрузку только к одному полюсу - к земле. А значит этим драйвером не получится организовать управление матрицей. Проверить это просто, подключите все или хотябы один анод  (выводы 13, 3, 4, 10, 6, 11, 15, 16) матрицы к +5V, и если светодиоды начнут загораться значит так оно и есть.

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

akrush
Offline
Зарегистрирован: 02.02.2013

Жаль, почем зря приобрел 3 штуки MBI5026. Очистил сейчас все выходы с Ардуино и сделал по, все работает отлично.

Может посоветуете какой-нибудь рабочий/проверенный драйвер для экономии пинов ардуино, задумка у меня сделать часы из 3х экранов 8x8. 

maksim
Offline
Зарегистрирован: 12.02.2012

Тут посмотрите http://arduino.ru/forum/programmirovanie/podkinte-ideyu-po-realizatsii-displeya-iz-9-svetodiodnykh-matrits , в вашем случее можно использовать 74HC595 - 4 шт. и ULN2803 - 1шт.

AlexFisher
AlexFisher аватар
Offline
Зарегистрирован: 20.12.2011

Да, эта микросхемка работает только "к земле". Можно попробовать подтянуть аноды матрицы к плюсу (по 470 Ом). Тогда микросхема будет как-бы шунтировать аноды, когда будет включаться.

Тарас Петрович
Offline
Зарегистрирован: 21.11.2015

Подниму тему. В коде из второго сообщения есть  shiftOut(SDI, CLK, MSBFIRST, data2); Что за функция, где определена? Пробую с этой микросхемой подружиться, взял бы 7219, да индикаторы с общим анодом у меня.


 

maksim
Offline
Зарегистрирован: 12.02.2012

Тарас Петрович пишет:

В коде из второго сообщения есть shiftOut(SDI, CLK, MSBFIRST, data2); Что за функция, где определена?

Программирование -> shiftOut()

 

Тарас Петрович
Offline
Зарегистрирован: 21.11.2015

Благодарю и удивлён своей невнимательности, ведь раздел программирование чуть ни каждый день смотрю)))

Гриша
Offline
Зарегистрирован: 27.04.2014

а я немного по-другому решал вопрос, вот пост