А скетч у вас нормально собирается?
Если да то попробуйте следующее:
В файле max7219.h есть функция такого рода
Код:
shiftOut(DIN_PIN, CLK_PIN, MSBFIRST, i == addr ? cmd : 0);
Таких функций shiftOut(..........) в этом файле max7219.h 10 штук.
Там сгруппировано, к примеру
Код:
void sendCmdAll(byte cmd, byte data) {
digitalWrite(CS_PIN, LOW);
for(int i = NUM_MAX - 1; i >= 0; i--){
shiftOut(DIN_PIN, CLK_PIN, MSBFIRST, cmd);
shiftOut(DIN_PIN, CLK_PIN, MSBFIRST, data);
}
digitalWrite(CS_PIN, HIGH);
}
смотрите внимательно, сначала передается адрес shiftOut(DIN_PIN, CLK_PIN, MSBFIRST, cmd); потом дата(информация) shiftOut(DIN_PIN, CLK_PIN, MSBFIRST, data);.
Последовательность вывода бит MSBFIRST — слева или LSBFIRST — справа.
Поиграйтесь с комбинацией.
К примеру:
Спойлер
Код:
void sendCmdAll(byte cmd, byte data) {
digitalWrite(CS_PIN, LOW);
for(int i = NUM_MAX - 1; i >= 0; i--){
shiftOut(DIN_PIN, CLK_PIN, MSBFIRST, cmd);
shiftOut(DIN_PIN, CLK_PIN, MSBFIRST, data);
}
digitalWrite(CS_PIN, HIGH);
}
void sendCmdAll(byte cmd, byte data) {
digitalWrite(CS_PIN, LOW);
for(int i = NUM_MAX - 1; i >= 0; i--){
shiftOut(DIN_PIN, CLK_PIN, MSBFIRST, cmd);
shiftOut(DIN_PIN, CLK_PIN, LSBFIRST, data);
}
digitalWrite(CS_PIN, HIGH);
}
void sendCmdAll(byte cmd, byte data) {
digitalWrite(CS_PIN, LOW);
for(int i = NUM_MAX - 1; i >= 0; i--){
shiftOut(DIN_PIN, CLK_PIN, LSBFIRST, cmd);
shiftOut(DIN_PIN, CLK_PIN, MSBFIRST, data);
}
digitalWrite(CS_PIN, HIGH);
}
void sendCmdAll(byte cmd, byte data) {
digitalWrite(CS_PIN, LOW);
for(int i = NUM_MAX - 1; i >= 0; i--){
shiftOut(DIN_PIN, CLK_PIN, LSBFIRST, cmd);
shiftOut(DIN_PIN, CLK_PIN, LSBFIRST, data);
}
digitalWrite(CS_PIN, HIGH);
}
В файле max7219.h таких групп всего 5 штук, менять надо сразу во всех группах.