ዝርዝር ሁኔታ:

MAX7219 የ LED ነጥብ ማትሪክስ ስብሰባ እና ሙከራ 6 ደረጃዎች (ከስዕሎች ጋር)
MAX7219 የ LED ነጥብ ማትሪክስ ስብሰባ እና ሙከራ 6 ደረጃዎች (ከስዕሎች ጋር)

ቪዲዮ: MAX7219 የ LED ነጥብ ማትሪክስ ስብሰባ እና ሙከራ 6 ደረጃዎች (ከስዕሎች ጋር)

ቪዲዮ: MAX7219 የ LED ነጥብ ማትሪክስ ስብሰባ እና ሙከራ 6 ደረጃዎች (ከስዕሎች ጋር)
ቪዲዮ: MAX7219 LED multiplexing tutorial 2024, ሀምሌ
Anonim
Image
Image
ጥቅሉን ይፈትሹ
ጥቅሉን ይፈትሹ

ነጥብ-ማትሪክስ ማሳያ በማትሪክስ መልክ የተስተካከሉ ብርሃን አመንጪ ዳዮዶችን የያዘ የማሳያ መሣሪያ ነው። ይህ የነጥብ ማትሪክስ ማሳያዎች ምልክት ፣ ግራፊክ ፣ ቁምፊዎች ፣ ፊደላት ፣ ቁጥሮች በስታቲስቲክስ እንዲሁም በአንድ ላይ መታየት በሚያስፈልጋቸው መተግበሪያዎች ውስጥ ጥቅም ላይ ይውላሉ። የማሸብለል እንቅስቃሴ። የዶት ማትሪክስ ማሳያ እንደ 5x7 ፣ 8x8 ፣ 16x8 ፣ 128x16 ፣ 128x32 እና 128x64 ባሉ ልኬቶች የተመረተ ሲሆን ቁጥሮቹ የ LED ን በተከታታይ እና አምዶች ውስጥ ይወክላሉ ፣ እንዲሁም እነዚህ ማሳያዎች እንደ ቀይ ፣ አረንጓዴ ፣ ቢጫ ፣ ሰማያዊ ባሉ የተለያዩ ቀለሞች ይመጣሉ። ብርቱካናማ ፣ ነጭ።

በዚህ መመሪያ ውስጥ ፣ እኔ MAX7219 ነጂ ወደ አርዱዲኖ ዩኖ ያለው 8x8 ነጥብ ማትሪክስ በማገናኘት እጀምራለሁ። እንጀምር።

አቅርቦቶች

MAX7219

ደረጃ 1 ጥቅሉን ይፈትሹ

እርስዎ እንደሚመለከቱት እኔ የሾፌሩ ሰሌዳ የ smt ስሪት እንዳለኝ ፣ የ smd አካላት በጣም ትንሽ በመሆናቸው እና በቀላሉ ሊያጡዋቸው ስለሚችሉ እያንዳንዱን እና እያንዳንዱን አካላት ማረጋገጥ በጣም አስፈላጊ ነው። በመስመር ላይ የመጥለቅ ሥሪትም አለ ነገር ግን እኔ እጠቀም ነበር ለስሜቱ የ smt ስሪት።

ደረጃ 2 - ስለዚህ ልዩ ነጥብ ማትሪክስ ትንሽ

ስለዚህ ልዩ ነጥብ ማትሪክስ ትንሽ
ስለዚህ ልዩ ነጥብ ማትሪክስ ትንሽ

ነጠላ ሞጁል የ 8x8 ነጥብ ማትሪክስ የጋራ ካቶዴድን መንዳት ይችላል።

የአሠራር ቮልቴጅ: 5 v

ልኬቶች - ርዝመት 3.2 ሴ.ሜ X 3.2 ሴ.ሜ ስፋት X 1.3 ሴ.ሜ ከፍታ ፣ አራት ብሎኖች ያሉት ቀዳዳዎች ፣ የ 3 ሚሜ ዲያሜትር

የግብዓት እና የውጤት በይነገጽ ያላቸው ሞጁሎች ፣ በርካታ ሞጁሎችን ለመቁረጥ ድጋፍ።

የውሂብ IN እና OUT ተርሚናሎች በሞጁሉ ላይ ተዘርዝረዋል።

ደረጃ 3 - MAX7219 ሾፌር

MAX7219 ሾፌር
MAX7219 ሾፌር
MAX7219 ሾፌር
MAX7219 ሾፌር

MAX7219 8x8 LED MATRIX ን ለመቆጣጠር የተነደፈ አይሲ ነው። አይሲ ማይክሮ ግሮሰሰሰሰሰሰሰሰሰሰሰሰሶች (ወይም ማይክሮ መቆጣጠሪያ) እስከ 7 አሃዛዊ የቁጥር LED ማሳያዎችን እስከ 8 አሃዞች ፣ የባር-ግራፍ ማሳያዎች ወይም 64 የግለሰብ ኤልዲዎችን የሚያያይዙ ተከታታይ ግቤት የጋራ ካቶድ (የጋራ አሉታዊ) ማሳያ ነጂዎች ናቸው።

ባህሪዎች እና ዝርዝሮች

የአሠራር ቮልቴጅ ክልል ከ +4.0 እስከ +5.5 ቪ

የሚመከር የአሠራር ቮልቴጅ: +5V

ከፍተኛ የአቅርቦት ቮልቴጅ: 6V

በእያንዳንዱ ክፍል ፒን በኩል ለመሳብ የሚፈቀደው ከፍተኛው ፍሰት 100mA

በእያንዳንዱ የ DIGIT የመሬት ፒን በኩል የሚፈቀደው ከፍተኛው ፍሰት 500mA

ዝቅተኛ የኃይል ፍጆታ

ከውሂብ-ወደ-ክፍል መዘግየት ጊዜ-2.2 ሜ

የአሠራር ሙቀት - ከ 0 ° ሴ እስከ +70 ° ሴ

የማከማቻ ሙቀት: -65 ° ሴ እስከ +150 ° ሴ

ደረጃ 4 ወረዳው

ወረዳው
ወረዳው
ወረዳው
ወረዳው

ወረዳው በጣም ቀላል እና ከወንድ እስከ ሴት ዝላይ ሽቦዎችን በመጠቀም ሊገነባ ይችላል። ፒኖውን ብቻ ይከተሉ እና ወረዳውን ይገንቡ። ለማትሪክስ ቋሚ ትግበራ እያደረጉ ከሆነ በኋላ ላይ በፒሲቢ ላይ መሰብሰብ ይችላሉ።

የፒን ውቅር እንደሚከተለው ነው

  • ቪሲሲ እስከ 5 ቪ ፒን አርዱዲኖ።
  • Gnd to Gnd Pin of the Arduino.
  • የአርዲኖ ዲጂታል ወደ ዲጂታል ፒን 12።
  • የአርዲኖው ሲኤስ ወደ ዲጂታል ፒን 11
  • CLK ወደ አርዱinoኖ ወደ ዲጂታል ፒን 10።

ደረጃ 5 - ኮዱ

እዚህ በዚህ መመሪያ ውስጥ ሁለት የተለያዩ ኮዶችን እሰጥዎታለሁ። አንድ ሰው በማትሪክስ ላይ አንዳንድ የእንግሊዝኛ ፊደላትን እና ፈገግታዎችን ያመነጫል። ሌላኛው ሁሉም 64 ኤልኢዲዎች አንድ በአንድ ያበራሉ። እንዲሠራ የ lledcontrol ቤተ -መጽሐፍትን መጠቀም አለብዎት።

ይህ የእንግሊዝኛ ፊደላት እና ፈገግታዎች ኮድ ነው

#intIN ን ያካትቱ = 12; int CS = 11; int CLK = 10; ባይት ሠ [8] = {0x7C ፣ 0x7C ፣ 0x60 ፣ 0x7C ፣ 0x7C ፣ 0x60 ፣ 0x7C ፣ 0x7C}; ባይት መ [8] = {0x78 ፣ 0x7C ፣ 0x66 ፣ 0x66 ፣ 0x66 ፣ 0x66 ፣ 0x7C ፣ 0x78}; ባይት u [8] = {0x66 ፣ 0x66 ፣ 0x66 ፣ 0x66 ፣ 0x66 ፣ 0x66 ፣ 0x7E ፣ 0x7E}; ባይት ሐ [8] = {0x7E ፣ 0x7E ፣ 0x60 ፣ 0x60 ፣ 0x60 ፣ 0x60 ፣ 0x7E ፣ 0x7E}; ባይት ስምንት [8] = {0x7E ፣ 0x7E ፣ 0x66 ፣ 0x7E ፣ 0x7E ፣ 0x66 ፣ 0x7E ፣ 0x7E}; ባይት s [8] = {0x7E ፣ 0x7C ፣ 0x60 ፣ 0x7C ፣ 0x3E ፣ 0x06 ፣ 0x3E ፣ 0x7E}; ባይት ነጥብ [8] = {0x00 ፣ 0x00 ፣ 0x00 ፣ 0x00 ፣ 0x00 ፣ 0x00 ፣ 0x18 ፣ 0x18}; ባይት o [8] = {0x7E ፣ 0x7E ፣ 0x66 ፣ 0x66 ፣ 0x66 ፣ 0x66 ፣ 0x7E ፣ 0x7E}; ባይት ሜ [8] = {0xE7 ፣ 0xFF ፣ 0xFF ፣ 0xDB ፣ 0xDB ፣ 0xDB ፣ 0xC3 ፣ 0xC3}; LedControl lc = LedControl (DIN ፣ CLK ፣ CS ፣ 0); ባዶነት ማዋቀር () {lc.shutdown (0 ፣ ሐሰት); // MAX72XX በጅምር lc.setIntensity (0 ፣ 15) ላይ ኃይል ቆጣቢ ሁናቴ ላይ ነው። // ብሩህነትን ወደ ከፍተኛ እሴት lc.clear ማሳያ (0) ያዘጋጁ ፤ // እና ማሳያውን ያጥፉ} ባዶነት loop () {ባይት ፈገግታ [8] = {0x3C ፣ 0x42 ፣ 0xA5 ፣ 0x81 ፣ 0xA5 ፣ 0x99 ፣ 0x42 ፣ 0x3C}; ባይት ገለልተኛ [8] = {0x3C ፣ 0x42 ፣ 0xA5 ፣ 0x81 ፣ 0xBD ፣ 0x81 ፣ 0x42 ፣ 0x3C}; ባይት ጠማማ [8] = {0x3C ፣ 0x42 ፣ 0xA5 ፣ 0x81 ፣ 0x99 ፣ 0xA5 ፣ 0x42 ፣ 0x3C}; printByte (ፈገግታ); መዘግየት (1000); printByte (ገለልተኛ); መዘግየት (1000); printByte (የተጨናነቀ); መዘግየት (1000); printEduc8s (); lc.clearDisplay (0); መዘግየት (1000); } ባዶ ባዶEduc8s () {printByte (ሠ); መዘግየት (1000); printByte (መ); መዘግየት (1000); printByte (u); መዘግየት (1000); printByte (ሐ); መዘግየት (1000); printByte (ስምንት); መዘግየት (1000); printByte (ዎች); መዘግየት (1000); printByte (ነጥብ); መዘግየት (1000); printByte (ሐ); መዘግየት (1000); printByte (o); መዘግየት (1000); printByte (ሜ); መዘግየት (1000); } ባዶነት printByte (ባይት ቁምፊ ) {int i = 0; ለ (i = 0; i <8; i ++) {lc.setRow (0 ፣ i ፣ ቁምፊ ); }}

እና ሁሉንም 64 ኤልኢዲዎችን ለመፈተሽ ኮዱ

// እኛ ሁል ጊዜ ቤተ -መጽሐፍቱን ማካተት አለብን#LedControl.h ን ያካትታል

/*

አሁን ከእሱ ጋር ለመስራት LedControl እንፈልጋለን። ***** እነዚህ የፒን ቁጥሮች ምናልባት ከሃርድዌርዎ ጋር ላይሰሩ ይችላሉ ***** ፒን 12 ከ DataIn ፒን 10 ጋር ከ CLK ፒን 11 ጋር ተገናኝቷል ከ LOAD ጋር ተገናኝቷል እኛ አንድ MAX72XX ብቻ አለን። */ LedControl lc = LedControl (12 ፣ 11 ፣ 10 ፣ 1);

/ * በማሳያው ዝመናዎች መካከል ሁል ጊዜ ትንሽ እንጠብቃለን */

ያልተፈረመ ረጅም መዘግየት = 100;

ባዶነት ማዋቀር () {

/ * MAX72XX በሚነሳበት ጊዜ ኃይል ቆጣቢ በሆነ ሁኔታ ውስጥ ነው ፣ እኛ የማንቃት ጥሪ ማድረግ አለብን */ lc.shutdown (0 ፣ ሐሰት); / * ብሩህነትን ወደ መካከለኛ እሴቶች ያዘጋጁ */ lc.setIntensity (0, 8); / * እና ማሳያውን ያፅዱ */ lc.clearDisplay (0); }

/*

ይህ ዘዴ “አርዱinoኖ” ለሚለው ቃል ገጸ -ባህሪያቱን በማትሪክስ ላይ አንድ በአንድ ያሳያል። (መላውን chars ለማየት ቢያንስ 5x7 ሊዶች ያስፈልግዎታል) */ ባዶ ባዶArduinoOnMatrix () {/ *እዚህ የቁምፊዎች */ ባይት ውሂብ ነው [5] = {B01111110 ፣ B10001000 ፣ B10001000 ፣ B10001000 ፣ B01111110}; ባይት r [5] = {B00111110 ፣ B00010000 ፣ B00100000 ፣ B00100000 ፣ B00010000}; ባይት መ [5] = {B00011100 ፣ B00100010 ፣ B00100010 ፣ B00010010 ፣ B11111110}; ባይት u [5] = {B00111100 ፣ B00000010 ፣ B00000010 ፣ B00000100 ፣ B00111110} ፤ ባይት i [5] = {B00000000 ፣ B00100010 ፣ B10111110 ፣ B00000010 ፣ B00000000}; ባይት n [5] = {B00111110 ፣ B00010000 ፣ B00100000 ፣ B00100000 ፣ B00011110}; ባይት o [5] = {B00011100 ፣ B00100010 ፣ B00100010 ፣ B00100010 ፣ B00011100};

/ * አሁን በትንሽ መዘግየት አንድ በአንድ ያሳዩዋቸው */

lc.setRow (0 ፣ 0 ፣ ሀ [0]); lc.setRow (0 ፣ 1 ፣ ሀ [1]); lc.setRow (0 ፣ 2 ፣ ሀ [2]); lc.setRow (0 ፣ 3 ፣ ሀ [3]); lc.setRow (0 ፣ 4 ፣ ሀ [4]); መዘግየት (መዘግየት); lc.setRow (0, 0, r [0]); lc.setRow (0, 1, r [1]); lc.setRow (0, 2, r [2]); lc.setRow (0, 3, r [3]); lc.setRow (0, 4, r [4]); መዘግየት (መዘግየት); lc.setRow (0, 0, d [0]); lc.setRow (0 ፣ 1 ፣ መ [1]); lc.setRow (0, 2, d [2]); lc.setRow (0, 3, d [3]); lc.setRow (0 ፣ 4 ፣ መ [4]); መዘግየት (መዘግየት); lc.setRow (0, 0, u [0]); lc.setRow (0, 1, u [1]); lc.setRow (0, 2, u [2]); lc.setRow (0, 3, u [3]); lc.setRow (0, 4, u [4]); መዘግየት (መዘግየት); lc.setRow (0, 0, i [0]); lc.setRow (0, 1, i [1]); lc.setRow (0, 2, i [2]); lc.setRow (0, 3, i [3]); lc.setRow (0, 4, i [4]); መዘግየት (መዘግየት); lc.setRow (0, 0, n [0]); lc.setRow (0, 1, n [1]); lc.setRow (0, 2, n [2]); lc.setRow (0, 3, n [3]); lc.setRow (0, 4, n [4]); መዘግየት (መዘግየት); lc.setRow (0, 0, o [0]); lc.setRow (0, 1, o [1]); lc.setRow (0, 2, o [2]); lc.setRow (0, 3, o [3]); lc.setRow (0 ፣ 4 ፣ o [4]); መዘግየት (መዘግየት); lc.setRow (0, 0, 0); lc.setRow (0, 1, 0); lc.setRow (0, 2, 0); lc.setRow (0, 3, 0); lc.setRow (0, 4, 0); መዘግየት (መዘግየት); }

/*

ይህ ተግባር በተከታታይ የተወሰኑ ኤልዲዎችን ያበራል። ንድፉ በእያንዳንዱ ረድፍ ላይ ይደገማል። ንድፉ ከረድፍ-ቁጥር ጋር አብሮ ብልጭ ድርግም ይላል። የረድፍ ቁጥር 4 (መረጃ ጠቋሚ == 3) 4 ጊዜ ወዘተ ብልጭ ድርግም ይላል */ ባዶ ረድፎች () {ለ (int row = 0 ፤ ረድፍ <8 ፤ ረድፍ ++) {መዘግየት (መዘግየት); lc.setRow (0 ፣ ረድፍ ፣ B10100000); መዘግየት (መዘግየት); lc.setRow (0 ፣ ረድፍ ፣ (ባይት) 0); ለ (int i = 0; i

/*

ይህ ተግባር በአንድ አምድ ውስጥ የተወሰኑ ሌዲዎችን ያበራል። ንድፉ በእያንዳንዱ አምድ ላይ ይደገማል። ንድፉ ከአምድ-ቁጥር ጋር አብሮ ያብራል። የአምድ ቁጥር 4 (መረጃ ጠቋሚ == 3) 4 ጊዜ ወዘተ ብልጭ ድርግም ይላል */ ባዶ ባዶ አምዶች () {ለ (int col = 0; col <8; col ++) {መዘግየት (መዘግየት); lc.setColumn (0, col, B10100000); መዘግየት (መዘግየት); lc.setColumn (0, col, (byte) 0); ለ (int i = 0; i

/*

ይህ ተግባር በማትሪክስ ላይ እያንዳንዱን መሪ ያበራል። መሪው ከረድፍ-ቁጥር ጋር አብሮ ብልጭ ድርግም ይላል። የረድፍ ቁጥር 4 (መረጃ ጠቋሚ == 3) 4 ጊዜ ወዘተ ብልጭ ድርግም ይላል */ ባዶ ባዶ ነጠላ () {ለ (int ረድፍ = 0 ፣ ረድፍ <8; ረድፍ ++) {ለ (int col = 0; col <8; col ++) { መዘግየት (መዘግየት); lc.setLed (0 ፣ ረድፍ ፣ ኮል ፣ እውነት); መዘግየት (መዘግየት); ለ (int i = 0; i

ባዶነት loop () {

ArduinoOnMatrix (); ረድፎች (); ዓምዶች (); ነጠላ (); }

ደረጃ 6 - ውፅዓት

Image
Image
ውፅዓት
ውፅዓት
ውፅዓት
ውፅዓት
ውፅዓት
ውፅዓት

ሙሉ ቪዲዮውን እዚህ ይመልከቱ -MAX7219 8x8 LED MATRIX ASSEMBLY እና ሙከራ ARDUINO ን በመጠቀም

ደህና ፣ ይህ ሁሉ ጠንክሮ መሥራት ፣ ውጤቱን ሲያዩ በእርግጠኝነት ጥሩ ይከፍላል። ዋጋ አለው !!

ለዩቲዩብ ቻናሌ ደንበኝነት ይመዝገቡ-የፈጠራ ነገሮች

የሚመከር: