SPI እና Arduino በይነገጽ

ዝርዝር ሁኔታ:

SPI እና Arduino በይነገጽ
SPI እና Arduino በይነገጽ

ቪዲዮ: SPI እና Arduino በይነገጽ

ቪዲዮ: SPI እና Arduino በይነገጽ
ቪዲዮ: Видеоуроки по Arduino. Интерфейсы SPI (8-я серия, ч1) 2024, ግንቦት
Anonim

የ “SPI” በይነገጽን እናጠናለን እና የ “LEDs” ን ለመቆጣጠር ይህንን ፕሮቶኮል በመጠቀም ከምንደርስበት አርዱinoኖ ጋር የዝውውር ምዝገባን እናገናኛለን ፡፡

የ SPI በይነገጽ
የ SPI በይነገጽ

አስፈላጊ

  • - አርዱዲኖ;
  • - የሽግግር ምዝገባ 74HC595;
  • - 8 ኤልኢዲዎች;
  • - የ 220 Ohm 8 ተቃዋሚዎች።

መመሪያዎች

ደረጃ 1

ስፒአይ - ሲሪያል-ጎን-በይነገጽ ወይም “ሲሪያል-ኢንተርራል በይነገጽ” ዋና መሣሪያን ከጎንዮሽ መሳሪያዎች (ባሪያ) ጋር ለማገናኘት ተመሳሳይ የመረጃ ማስተላለፍ ፕሮቶኮል ነው ጌታው ብዙውን ጊዜ ማይክሮ መቆጣጠሪያ ነው ፡፡ በመሳሪያዎች መካከል መግባባት የሚከናወነው ከአራት ሽቦዎች በላይ ነው ፣ ለዚህም ነው SPI አንዳንድ ጊዜ እንደ “ባለ አራት ሽቦ በይነገጽ” የሚባለው። እነዚህ ጎማዎች

MOSI (Master Out Slave In) - ከጌታው ወደ ባሪያ መሳሪያዎች የመረጃ ማስተላለፊያ መስመር;

MISO (Master in Slave Out) - ከባሪያው ወደ ጌታው ማስተላለፊያ መስመር;

SCLK (ተከታታይ ሰዓት) - በጌታው የተፈጠሩ የማመሳሰል የሰዓት ምቶች;

ኤስ.ኤስ (የባሪያ ምርጫ) - የባሪያ መሳሪያ ምርጫ መስመር; በመስመር ላይ "0" ላይ ፣ ባሪያው እየተደረሰበት መሆኑን "ይረዳል"።

በሰዓት የልብ ምት polarity ጥምረት (እኛ በ HIGH ወይም LOW ደረጃ ላይ እንሰራለን) ፣ በሰዓት ፖላሪቲ ፣ ሲፒኦል እና የሰዓት ድፍረቶች ደረጃ (ማመሳሰል) አራት የመረጃ ማስተላለፍ ሁነቶች (SPI_MODE0 ፣ SPI_MODE1 ፣ SPI_MODE2 ፣ SPI_MODE3) አሉ ፡፡ በሰዓቱ ምት መነሳት ወይም መውደቅ ጠርዝ ላይ) ፣ የሰዓት ደረጃ ፣ ሲፒኤኤ።

ስእሉ የ SPI ፕሮቶኮልን በመጠቀም መሣሪያዎችን ለማገናኘት ሁለት አማራጮችን ያሳያል-ገለልተኛ እና ካስኬድንግ ፡፡ ከ SPI አውቶቡስ ጋር በተናጥል ሲገናኝ ጌታው ከእያንዳንዱ ባሪያ ጋር በተናጠል ይገናኛል። በ casድጓድ - የባሪያ መሳሪያዎች በተለዋጭነት ፣ በካስኬድ ውስጥ ይነሳሉ ፡፡

የ SPI ግንኙነቶች ዓይነቶች
የ SPI ግንኙነቶች ዓይነቶች

ደረጃ 2

በአርዱዲኖ ውስጥ የ SPI አውቶቡሶች በተወሰኑ ወደቦች ላይ ናቸው ፡፡ እያንዳንዱ ቦርድ የራሱ የሆነ የፒን ምደባ አለው ፡፡ ለመመቻቸት ፒኖቹ ተባዙ እና በተለየ የ ICSP (በወረዳ ተከታታይ መርሃግብር) አገናኝ ላይ ይቀመጣሉ። እባክዎን በ ICSP አገናኝ ላይ ኤስ.ኤስ.ኤ ላይ ምንም የባሪያ መርጫ ፒን እንደሌለ ልብ ይበሉ አርዱዲኖን በአውታረ መረቡ ላይ እንደ ዋና ስራ ላይ ይውላል ተብሎ ይታሰባል ፡፡ ግን አስፈላጊ ከሆነ ማንኛውንም የአርዱዲኖ ዲጂታል ፒን እንደ ኤስኤስ መመደብ ይችላሉ ፡፡

ስዕሉ ለአርዱይኖ UNO እና ለናኖ ለ SPI አውቶቡሶች የፒንቹን መደበኛ ምደባ ያሳያል ፡፡

በአርዱዲኖ ውስጥ የ SPI ትግበራ
በአርዱዲኖ ውስጥ የ SPI ትግበራ

ደረጃ 3

የ SPI ፕሮቶኮልን ተግባራዊ የሚያደርግ ልዩ ቤተ-መጽሐፍት ለአርዱይኖ ተጻፈ ፡፡ እሱ ከዚህ ጋር ተያይ connectedል-በፕሮግራሙ መጀመሪያ ላይ # ጨምሮ SPI.h ን ያክሉ

ከ SPI ፕሮቶኮል ጋር መሥራት ለመጀመር ቅንብሮቹን ማዘጋጀት እና ከዚያ የ SPI.beginTransaction () አሰራርን በመጠቀም ፕሮቶኮሉን ማስጀመር ያስፈልግዎታል። ይህንን በአንድ መመሪያ ማድረግ ይችላሉ-SPI.beginTransaction (SPISettings (14000000 ፣ MSBFIRST ፣ SPI_MODE0))።

ይህ ማለት በ 14 ሜኸር ድግግሞሽ የ SPI ፕሮቶኮልን እንጀምራለን ማለት ነው ፣ የውሂብ ማስተላለፍ ይጀምራል ፣ ከ ‹MSB› (በጣም ወሳኝ ቢት) ጀምሮ በ ‹0› ሞድ ፡፡

ከመጀመሪያው በኋላ ተጓዳኝ የኤስኤስ ፒን በ LOW ሁኔታ ውስጥ በማስቀመጥ የባሪያ መሣሪያውን እንመርጣለን ፡፡

ከዚያ በ SPI.transfer () ትዕዛዝ መረጃውን ወደ ባሪያው መሣሪያ እናስተላልፋለን።

ከተላለፈ በኋላ ኤስኤስኤስን ወደ ከፍተኛ ሁኔታ እንመልሳለን ፡፡

ከፕሮቶኮሉ ጋር በ SPI.endTransaction () ትዕዛዝ ያበቃል ፡፡ ሌላ መሳሪያ የተለያዩ ቅንብሮችን በመጠቀም የውሂብ ማስተላለፍን ለመጀመር ቢሞክር መደራረብ እንዳይኖር በ SPI.beginTransaction () እና በ SPI.endTransaction () መመሪያዎች መካከል የተላለፈበትን ጊዜ ማሳለፉ ተመራጭ ነው ፡፡

የ SPI ስርጭት
የ SPI ስርጭት

ደረጃ 4

እስቲ የ “SPI” በይነገጽ ተግባራዊ አተገባበርን እንመልከት ፡፡ በ SPI አውቶቡስ በኩል ባለ 8-ቢት የሽግግር ምዝገባን በመቆጣጠር ኤል.ዲ.ኤኖችን እናበራለን ፡፡ የ 74HC595 የሽግግር ምዝገባን ከአርዱይኖ ጋር እናገናኝ ፡፡ ከእያንዳንዱ የ 8 ውፅዓት በ LED በኩል (በመገደብ ተከላካይ በኩል) እንገናኛለን ፡፡ ስዕላዊ መግለጫው በስዕሉ ላይ ይታያል ፡፡

74HC595 ን ወደ አርዱinoኖ የማዛወር ምዝገባን በማገናኘት ላይ
74HC595 ን ወደ አርዱinoኖ የማዛወር ምዝገባን በማገናኘት ላይ

ደረጃ 5

እንዲህ ዓይነቱን ንድፍ እንጻፍ ፡፡

በመጀመሪያ ፣ የ “SPI” ቤተ-መጽሐፍትን እናገናኝ እና የ “SPI” በይነገጽን እንጀምር። እስቲ 8 ን እንደ ባሪያ ምርጫ ፒን እንለየው ፡፡ እሴቱን «0» ን በመላክ የሽግግር ምዝገባውን እናፅዳ ፡፡ ተከታታይ ወደቡን እንጀምራለን ፡፡

የሽግግር ምዝገባን በመጠቀም አንድ የተወሰነ ኤሌዲ ለማብራት የ 8 ቢት ቁጥርን ወደ ግብዓቱ ማመልከት ያስፈልግዎታል ፡፡ ለምሳሌ የመጀመሪያው ኤልኢዲ እንዲበራ የሁለትዮሽ ቁጥሩን 00000001 ፣ ለሁለተኛው - 00000010 ፣ ለሦስተኛው - - 00000100 ወዘተ እንመገባለን ፡፡ እነዚህ በአስርዮሽ ማስታወሻ ውስጥ የሚከተሉት ቅደም ተከተሎች ናቸው-1 ፣ 2 ፣ 4 ፣ 8 ፣ 16 ፣ 32 ፣ 64 ፣ 128 እና ከ 0 እስከ 7 ያሉት የሁለት ኃይል ናቸው ፡፡

በዚህ መሠረት በሉፕ () በኤ.ዲ.ዎች ብዛት ከ 0 እስከ 7 ድረስ እንደገና እናሰላለን ፡፡የፓውንድ (ቤዝ ፣ ዲግሪ) ተግባር ወደ ዑደት ቆጣሪ ኃይል 2 ከፍ ያደርገዋል ፡፡ ማይክሮ መቆጣጠሪያዎች ከ ‹ድርብ› ዓይነት ቁጥሮች ጋር በትክክል በትክክል አይሰሩም ፣ ስለሆነም ውጤቱን ወደ ኢንቲጀር ለመቀየር ክብ () ተግባሩን እንጠቀማለን ፡፡ እና የተገኘውን ቁጥር ወደ ሽግግር መመዝገቢያው እናስተላልፋለን። ለግልጽነት ፣ ተከታታይ የወደብ መቆጣጠሪያ በዚህ ክዋኔ ወቅት የተገኙትን እሴቶች ያሳያል-አንድ በዲጂቶች ውስጥ ይሮጣል - ኤልኢዲዎች በማዕበል ውስጥ መብራት ፡፡

በ SPI አውቶቡስ በኩል የሽግግር ምዝገባውን ለመቆጣጠር ንድፍ
በ SPI አውቶቡስ በኩል የሽግግር ምዝገባውን ለመቆጣጠር ንድፍ

ደረጃ 6

ኤልኢዲዎች በተራ ያበራሉ ፣ እና እኛ ተጓዥ “ሞገድ” መብራቶችን እናስተውላለን። ኤ.ዲ.ኤስዎች በ SPI በይነገጽ በኩል የተገናኘንበትን የመቀየሪያ መዝገብ በመጠቀም ቁጥጥር ይደረግባቸዋል ፡፡ በዚህ ምክንያት 8 ኤልኢዲዎችን ለመንዳት ጥቅም ላይ የሚውሉት 3 የአርዲኖን ፒንዎች ብቻ ናቸው ፡፡

አርዱduኖ ከ SPI አውቶቡስ ጋር እንዴት እንደሚሠራ በጣም ቀላሉን ምሳሌ አጥንተናል ፡፡ በተለየ ጽሑፍ ውስጥ የሽግግር ምዝገባዎችን ግንኙነት በበለጠ ዝርዝር እንመለከታለን ፡፡

የሚመከር: