max7219 связанный дисплей, показывающий зеркальный текст
Я использую max7219, такой как max7219. Когда я впервые тестировал свою схему, я использовал дисплей 8x8, и код работал нормально. Теперь, после того как я изменил код на тот, который можно найти в Интернете по адресу код Arduino, и изменил отображение на связанный, текст отображается зеркально на матричном дисплее.
.
Ниже я прикреплю часть кода. Пожалуйста, помогите мне найти проблему.
#include <MD_Parola.h>
#include <MD_MAX72xx.h>
#include <SPI.h>
// Определяем количество устройств в цепочке и аппаратный интерфейс
#define MAX_DEVICES 4
#define CLK_PIN 13
#define DATA_PIN 11
#define CS_PIN 10
// Аппаратное SPI-соединение
MD_Parola P = MD_Parola(CS_PIN, MAX_DEVICES);
// Произвольные выходные контакты
// MD_Parola P = MD_Parola(DATA_PIN, CLK_PIN, CS_PIN, MAX_DEVICES);
void setup(void)
{
P.begin();
P.displayText("Hello", PA_CENTER, 0, 0, PA_PRINT, PA_NO_EFFECT);
}
void loop(void)
{
P.displayAnimate();
}
@patri, 👍1
Обсуждение4 ответа
Проверьте конфигурацию в файле MD_MAX72xx.h и убедитесь, что выбран правильный модуль.
Например, есть определение
#define USE_PAROLA_HW 0
если ваше оборудование имеет этот элемент, отключите другие настройки оборудования и включите этот, чтобы он выглядел следующим образом:
#define USE_PAROLA_HW 1
есть много других настроек, если их нет, то придется экспериментировать, пока не найдете правильную.
В библиотеке измените #define USE_GENERIC_HW 0
на #define USE_GENERIC_HW 1
. Это решение.
Начиная с версии 3.0 MD_MAX72xx.h
больше не поддерживает это определение. Теперь тип оборудования определяется как параметр при создании (в используемом вами файле «Пример», а не в MD_MAX72xx.h
)
#define HARDWARE_TYPE MD_MAX72XX::FC16_HW
...
MD_Parola P = MD_Parola(HARDWARE_TYPE, CS_PIN, MAX_DEVICES);
Обратите внимание, что я изменил тип оборудования с PAROLA_HW
на FC_16
.
В последней версии #include <MD_Parola.h>
, #include <MD_MAX72xx.h>
вам необходимо определить следующее, и символы будут отображаться правильно.
#define HARDWARE_TYPE MD_MAX72XX::FC16_HW
Разве не это сказал @Den1al в своем ответе?, @sempaiscuba
- Как вызвать функции C из скетча ардуино?
- Пиринговая коммуникация
- Запуск С для ардуино
- Как связаться с ESP8266 ESP01, отправив данные через программный сериал на Arduino Uno?
- Прерывание ардуино при смене контакта
- GSM-модуль IOT-GA6 Arduino + ошибка CME 58
- Разница между массивом char и массивом unsigned char
- Arduino синтаксический анализ строки с использованием sscanf
Изменение неправильной строки на **#define HARDWARE_TYPE MD_MAX72XX::FC16_HW** сделал свое дело. Поиск занял время, но спасибо миллион!!!, @mark Hussey
В моем случае мне пришлось перейти на **#define HARDWARE_TYPE MD_MAX72XX::ICSTATION_HW**, @gramgram