ዝርዝር ሁኔታ:
- አቅርቦቶች
- ደረጃ 1: Arduino IDE ን ለ Esp8266 ልማት ያዋቅሩ
- ደረጃ 2 የውጭ ቤተ -ፍርግሞችን ያውርዱ
- ደረጃ 3 አሁን አንዳንድ ኮድ ይፃፉ
- ደረጃ 4 የወረዳ ዲያግራም
- ደረጃ 5 ኮድ ወደ Esp8266 ይስቀሉ
- ደረጃ 6 - ሁሉንም ነገር ይፈትሹ
ቪዲዮ: MAX7219 LED ማትሪክስ MQTT Esp8266 ን በመጠቀም 6 ደረጃዎች
2024 ደራሲ ደራሲ: John Day | [email protected]. ለመጨረሻ ጊዜ የተሻሻለው: 2024-01-30 07:30
እኔ የ MAX7219 LED ማሳያውን ከ MQTT አገልጋይ ጋር ለማገናኘት እና ለማሳየት ከ MQTT ደንበኝነት ምዝገባ ጽሑፍ ለመቀበል እሞክር ነበር።
ግን በበይነመረቡ ላይ ምንም ተስማሚ ኮድ አላገኘሁም ፣ ስለዚህ የራሴን መገንባት ጀመርኩ…
እና ውጤቱ በጥሩ ሁኔታ ይመጣል…
- በመሪ ማሳያ ላይ ማንኛውንም ጽሑፍ ማሳየት ይችላሉ
- የማሳያውን ጥንካሬ ማስተካከል ይችላሉ
- የማሸብለል ፍጥነትን ማዘጋጀት ይችላሉ
አቅርቦቶች
- Esp8266 የልማት ቦርድ። (የእኔ ጉዳይ NODE MCU v1.0 ነው)
- MAX7219 LED ማትሪክስ ማሳያ።
የሚያስፈልግ ሶፍትዌር
- አርዱዲኖ አይዲኢ።
- የ MQTT አገልጋይ። (የእኔ ጉዳይ Mosquitto)
ቤተ -መጽሐፍት ያስፈልጋል
- ESP8266WiFi.h
- MD_MAX72xx.h
- EspMQTTClient.h
ደረጃ 1: Arduino IDE ን ለ Esp8266 ልማት ያዋቅሩ
የአርዱዲኖ ምርጫዎችን ይክፈቱ እና ከዚህ በታች ያለውን ዩአርኤል በአድማድ ቦርዶች አቀናባሪ ዩአርኤሎች ውስጥ ይለጥፉ
arduino.esp8266.com/stable/package_esp8266com_index.json
ከዚያ መሳሪያዎች> ቦርዶች> የቦርዶች ሥራ አስኪያጅ እና esp8266 ን ይፈልጉ እና ይጫኑት።
አሁን የእርስዎ የአርዱዲኖ ሀሳብ ለ esp8266 ልማት ዝግጁ ነው።
ደረጃ 2 የውጭ ቤተ -ፍርግሞችን ያውርዱ
አሁን ለ MAX7219 እና ለ MQTT ደንበኛ አንዳንድ ቤተ -መጻሕፍት ያስፈልጉናል።
ቤተ መጻሕፍቱን አውርደን እናዋቀር
በ Arduino IDE ላይ ወደ ረቂቅ> ቤተ -መጽሐፍትን ያካትቱ> ቤተ -መጽሐፍቶችን ያቀናብሩ
እና የ EspMQTTC ደንበኛን ይፈልጉ እና ጫን ጠቅ ያድርጉ
ማሳሰቢያ - ሁሉንም ጥገኛ ቤተ -መጻሕፍት ይጫኑ ፣ አስፈላጊ ነው
እንደገና MD_MAX72xx ን ይፈልጉ እና ጫን ጠቅ ያድርጉ
ደረጃ 3 አሁን አንዳንድ ኮድ ይፃፉ
አሁን ከዚህ በታች ያለውን ኮድ ይለጥፉ
#ያካትቱ
#ያካትቱ #ያካትቱ #ያካትቱ "EspMQTTClient.h" #መግለፅ MAX_DEVICES 4 // የመሣሪያዎ ብዛት #ጥራት CLK_PIN D5 // ወይም SCK #ዲፋይ_ፒን D7 // ወይም MOSI #መግለፅ CS_PIN D4 // ወይም SS // ሊያዋቅሩት ይችላሉ። ለማንኛውም ሚስማር #መግለፅ HARDWARE_TYPE MD_MAX72XX:: PAROLA_HW // እንደ የማሳያ ዓይነትዎ MD_MAX72XX mx = MD_MAX72XX (HARDWARE_TYPE ፣ CS_PIN ፣ MAX_DEVICES) መሠረት ይቀይሩ ፤ const uint8_t MESG_SIZE = 255; const uint8_t CHAR_SPACING = 1; uint8_t SCROLL_DELAY = 75; // ነባሪ የማሸብለል መዘግየት uint8_t INTENSITY = 5; // ነባሪ ጥንካሬ ቻር መልእክት (MESG_SIZE]; char newMessage [MESG_SIZE]; bool newMessageAvailable = ሐሰት; ባዶ ማሸብለል ዳታሲንክ (uint8_t dev, MD_MAX72XX:: transformType_t t, uint8_t col) {} uint8_t scrollDataSource (uint8_t dev, MD_MAX72XX:: transformType_t t) {static enum {S_IDLE ፣ S_NEXT_CHAR ፣ S_NEXT_CHAR ፣ S_NEXT_CHAR ፣ S_NEXT_CHAR ፣ S_NEXT_CHAR ፣ S_NEXT_CHAR ፣ S_NEXT_CHAR ፣ S_NEXT_CHAR ፣ S_NEXT_CHAR ፣ S_NEXT_CHAR ፣ S_NEXT_CHAR የማይንቀሳቀስ ቻር *ገጽ; የማይንቀሳቀስ uint16_t curLen ፣ showLen; የማይንቀሳቀስ uint8_t cBuf [8]; uint8_t colData = 0; መቀየሪያ (ሁኔታ) {ጉዳይ S_IDLE: p = curMessage; ከሆነ (newMessageAvailable) {strcpy (curMessage, newMessage); newMessageAvailable = ሐሰት; } ግዛት = S_NEXT_CHAR; ሰበር; መያዣ S_NEXT_CHAR: ከሆነ (*p == '\ 0') state = S_IDLE; ሌላ {showLen = mx.getChar (*p ++ ፣ sizeof (cBuf) / sizeof (cBuf [0]) ፣ cBuf); curLen = 0; ግዛት = S_SHOW_CHAR; } መሰበር; መያዣ S_SHOW_CHAR: colData = cBuf [curLen ++]; ከሆነ (curLen = SCROLL_DELAY) {mx.transform (MD_MAX72XX:: TSL); // ሸብልል - የመልሶ መደወያው ሁሉንም ውሂብ prevTime = millis () ይጫናል። // መነሻ ነጥብ ለቀጣዩ ጊዜ}} ባዶነት ማዋቀር () {Serial.begin (115200); mx.begin (); mx.control (MD_MAX72XX:: INTENSITY ፣ INTENSITY); mx.setShiftDataInCallback (ጥቅልል ዳታ ምንጭ); mx.setShiftDataOutCallback (ጥቅልል ዳታሲንክ); curMessage [0] = newMessage [0] = '\ 0'; sprintf (curMessage ፣ “ስማርት ማሳያ”); } ባዶነት onConnectionEstablished () {// MQTT የደንበኝነት ምዝገባ ርዕስ ለደንበኛ ጽሑፍ ደንበኛ። ደንበኝነት ይመዝገቡ ("leddisplay/text" ፣ (const String & payload) {sprintf (curMessage, payload.c_str ());});
// MQTT የደንበኝነት ምዝገባ ርዕስ ለዕይታ ጥንካሬ ቁጥጥር
client.subscribe ("leddisplay/intensity", (const String & payload) {mx.control (MD_MAX72XX:: INTENSITY, payload.toInt ());}); // የ MQTT የደንበኝነት ምዝገባ ርዕስ ለዕይታ ማሸብለል ፍጥነት መቆጣጠሪያ ደንበኛ። የደንበኝነት ምዝገባ (“leddisplay/scroll” ፣ (const String & payload) {SCROLL_DELAY = payload.toInt ();})); } ባዶነት loop () {client.loop (); ጥቅልል ጽሑፍ (); }
ለዝርዝር መረጃ ፣ ይህንን ማከማቻ ይመልከቱ
github.com/souravj96/max7219-mqtt-esp8266
ደረጃ 4 የወረዳ ዲያግራም
MAX7219 ማሳያውን ከ NODE MCU ጋር ያገናኙ
ደረጃ 5 ኮድ ወደ Esp8266 ይስቀሉ
አሁን ትክክለኛውን የቦርድ አይነትዎን እና ተከታታይ ወደብዎን ይምረጡ እና ሰቀላን ይምቱ።
ደረጃ 6 - ሁሉንም ነገር ይፈትሹ
ሁሉም ነገር ትክክል ከሆነ የእርስዎ esp8266 ከእርስዎ MQTT አገልጋይ ጋር ይገናኛል።
አሁን ፣ በሚታየው የመገለጫ/የጽሑፍ ርዕስ ላይ የሆነ ነገር ከታተመ።
{
ርዕሰ ጉዳይ: "leddisplay/text", የክፍያ ጭነት: "የእርስዎ መልዕክት እዚህ"}
የማሳያውን ጥንካሬ ማዘጋጀት ከፈለጉ
{
ርዕሰ ጉዳይ “leddisplay/intensity” ፣ የክፍያ ጭነት “2” // max is 15 እና min 0}
የማሳያውን የማሸብለል ፍጥነት ማዘጋጀት ከፈለጉ
{
ርዕስ: "leddisplay/roll", የክፍያ ጭነት: "100" // ከፍተኛው 255 እና ደቂቃ 0}
ደስተኛ ኮድ ማድረጊያ
የሚመከር:
ዲጂታል ሰዓት የ LED ነጥብ ማትሪክስ - ESP ማትሪክስ የ Android መተግበሪያ 14 ደረጃዎች
ዲጂታል ሰዓት የ LED ነጥብ ማትሪክስ - የ ESP ማትሪክስ የ Android መተግበሪያ - ይህ ጽሑፍ በ PCBWAY በኩራት ስፖንሰር የተደረገ ነው። ለራስዎ ይሞክሩት እና በ PCBWAY ላይ በ 5 ዶላር ብቻ 10 PCBs ን ያግኙ በጣም ጥሩ ጥራት ባለው PCBWAY። እኔ የምዘረጋው የኢኤስፒ ማትሪክስ ቦርድ
አርዱዲኖ ፈገግታ MAX7219 ማትሪክስ LED አጋዥ: 4 ደረጃዎች
አርዱዲኖ ፈገግታ MAX7219 ማትሪክስ LED አጋዥ - በዚህ መማሪያ ውስጥ አርዱinoኖን በመጠቀም መሪ መሪን መቆጣጠር። አርዱዲኖን በመጠቀም የሊድ ማትሪክስ ማሳያዎችን እንዴት እንደሚጠቀሙ አሳያችኋለሁ። እናም በዚህ ጽሑፍ ውስጥ አርዱዲኖን በመጠቀም ይህንን የማትሪክስ ማሳያ በመጠቀም ፈገግታ ስሜት ገላጭ አዶዎችን ማድረግን እንማራለን።
4 በ 1 MAX7219 ነጥብ ማትሪክስ የማሳያ ሞዱል አጋዥ ስልጠና አርዱዲኖ UNO ን በመጠቀም - 5 ደረጃዎች
4 በ 1 MAX7219 የነጥብ ማትሪክስ የማሳያ ሞዱል አጋዥ ስልጠና አርዱዲኖ UNO ን በመጠቀም - መግለጫ -የ LED ማትሪክስን ለመቆጣጠር ቀላል ይፈልጋሉ? ይህ 4 በ 1 ነጥብ ማትሪክስ ማሳያ ሞዱል ለእርስዎ ተስማሚ መሆን አለበት። መላው ሞጁል እያንዳንዳቸው ከ MAX7219 IC ጋር ባስቀመጡት በአራት 8x8 RED የጋራ ካቶድ ነጥብ ማትሪክስ ውስጥ ይመጣል። አሂድ ጽሑፍን ለማሳየት በጣም ጥሩ
አንድ MAX7219 የሚነዳ LED ማትሪክስ 8x8 ን ከ ATtiny85 ማይክሮ መቆጣጠሪያ ጋር እንዴት ማገናኘት እንደሚቻል -7 ደረጃዎች
MAX7219 የሚነዳ LED ማትሪክስ 8x8 ን ከ ATtiny85 ማይክሮ መቆጣጠሪያ ጋር እንዴት ማገናኘት እንደሚቻል-የ MAX7219 ተቆጣጣሪው በማክሲም የተቀናጀ የታመቀ ነው ፣ ማይክሮ ግፊቶችን ወደ 64 ግለሰብ ኤልኢዲዎች ፣ 7-ክፍል ቁጥራዊ የ LED ማሳያዎችን ወደ በይነገጽ ሊያስተናግድ የሚችል። እስከ 8 አኃዞች ፣ የባር-ግራፍ ማሳያ
ማትሪክስ መሪ X4 MAX7219 + ESP8266 12E + ዳሳሽ DS18b20 (የሙቀት መጠን) 6 ደረጃዎች
ማትሪክስ ሊድ X4 MAX7219 + ESP8266 12E + ዳሳሽ DS18b20 (የሙቀት መጠን) በዚህ አጋጣሚ በተዋሃደ MAX7219 ወደ ሞጁል ESP8266 በሞጁል ESP8266 ወደተመራው ማትሪክስ ፈጣን ሙከራ እናደርጋለን እናም በጣም ቀላል እንዳይሆን የአንድን አነፍናፊ የሙቀት መጠን እናነባለን DS18B20. በመጪዎቹ ትምህርቶች ውስጥ ከሌሎች ፕላቶች ጋር እናዋሃዳለን