ዝርዝር ሁኔታ:

የ $ 1 የ LED ሙድ አምፖል ከ ATtiny13 እና WS2812: 7 ደረጃዎች ጋር
የ $ 1 የ LED ሙድ አምፖል ከ ATtiny13 እና WS2812: 7 ደረጃዎች ጋር

ቪዲዮ: የ $ 1 የ LED ሙድ አምፖል ከ ATtiny13 እና WS2812: 7 ደረጃዎች ጋር

ቪዲዮ: የ $ 1 የ LED ሙድ አምፖል ከ ATtiny13 እና WS2812: 7 ደረጃዎች ጋር
ቪዲዮ: Smart Tv/LED Tv Repair Course Part 1 ፍላት ቴሌቪዥን ጥገና ክፍል 1 2024, ህዳር
Anonim
የ $ 1 የ LED ሙድ አምፖል ከ ATtiny13 እና WS2812 ጋር
የ $ 1 የ LED ሙድ አምፖል ከ ATtiny13 እና WS2812 ጋር

በደራሲው ተጨማሪ ይከተሉ

በነጠላ ቦርድ ኮምፒተር ላይ የግል የ CalDAV አገልጋይ
በነጠላ ቦርድ ኮምፒተር ላይ የግል የ CalDAV አገልጋይ
በነጠላ ቦርድ ኮምፒተር ላይ የግል የ CalDAV አገልጋይ
በነጠላ ቦርድ ኮምፒተር ላይ የግል የ CalDAV አገልጋይ
ኤልሲዲ ወራሪዎች - በ 16x2 LCD ቁምፊ ማሳያ ላይ እንደ የጠፈር ወራሪዎች እንደ ጨዋታ
ኤልሲዲ ወራሪዎች - በ 16x2 LCD ቁምፊ ማሳያ ላይ እንደ የጠፈር ወራሪዎች እንደ ጨዋታ
ኤልሲዲ ወራሪዎች - በ 16x2 LCD ቁምፊ ማሳያ ላይ እንደ የጠፈር ወራሪዎች እንደ ጨዋታ
ኤልሲዲ ወራሪዎች - በ 16x2 LCD ቁምፊ ማሳያ ላይ እንደ የጠፈር ወራሪዎች እንደ ጨዋታ
ኦክታሪን - ከ WS2812 RGB LEDs ጋር የቀለም ተዛማጅ ጨዋታ
ኦክታሪን - ከ WS2812 RGB LEDs ጋር የቀለም ተዛማጅ ጨዋታ
ኦክታሪን - ከ WS2812 RGB LEDs ጋር የቀለም ተዛማጅ ጨዋታ
ኦክታሪን - ከ WS2812 RGB LEDs ጋር የቀለም ተዛማጅ ጨዋታ

ይህ በአራት ሁነታዎች ዝቅተኛ ዋጋ ያለው የስሜት መብራት ነው።

1. ቀስተ ደመና ብልጭታ። የብርሃን ብልጭታ ከጊዜ ወደ ጊዜ ወደ ላይ ይንቀሳቀሳል እና ቀስ በቀስ ቀለሙን ይለውጣል።

2. ቀስተ ደመና ፍካት። ቀስ በቀስ ቀለሙን የሚቀይር የተረጋጋ ፍካት።

3. የሻማ እሳት ማስመሰል.

4. ጠፍቷል።

ከላይ ያለውን የንክኪ አዝራርን መታ በማድረግ ሁነታን መቀየር ይችላሉ። የአሁኑ ሁነታ ከጠፋ በኋላ በ EEPROM ማህደረ ትውስታ ውስጥ ይቀመጣል።

ATtiny13 ምን ያህል ትንሽ ነው?

ሀሳቡ ከዝቅተኛ ሃርድዌር ከፍተኛውን ባህሪያትን ለማግኘት ፣ ከዚህ ትንሽ ማይክሮ መቆጣጠሪያ ጠርዝ አጠገብ ካለው ፕሮጀክት ከአውቶማቲክ ማብሪያ ወይም ቴርሞሜትር የበለጠ የተወሳሰበ ነገር ነው። ከሁሉም በላይ ገደቦች ፈጠራን እንዲያስቡ ያደርጉዎታል ፣ አይደል? ደህና ፣ መጀመሪያ ላይ ይመስል ነበር።

በዚህ ፕሮጀክት ውስጥ በጣም ፈታኝ የሆነው ሁሉንም ኮድ ወደ ATtiny13 ማስገባት ነበር። የማይክሮ መቆጣጠሪያው 1 ኬ ባይት ብልጭታ እና 64 ባይት ራም ብቻ አለው። አዎ ፣ “ባይቶች” ስናገር ስምንት ቢት ያካተቱ ማለቴ ነው። ለሁሉም አካባቢያዊ ተለዋዋጮች እና የጥሪ ቁልል 64 ባይት። ግልፅ ለማድረግ ፣ 8 RGB LED ን መቆጣጠር እንዳለብን ያስቡ። እያንዳንዳቸው በ 3 ባይት (አንድ ለቀይ ፣ አረንጓዴ እና ሰማያዊ ሰርጥ በቅደም ተከተል) ይገለፃሉ። ስለዚህ ፣ የ 8 ኤልኢዲዎችን ሁኔታ ለማከማቸት ፣ እያንዳንዳቸው የ 8 መዋቅሮችን 3 ባይት ድርድር መተግበር አለብን እና ለዚህ ድርድር መጀመሪያ ጠቋሚ አንድ ተጨማሪ ባይት ይወስዳል። ስለዚህ ፣ ከ 64 ባይት ውስጥ 25 ቱ ወጥተዋል። እኛ አሁን 39% ራም ተጠቅመናል እና ገና አልጀመርንም። በተጨማሪም ፣ ሰባት መሠረታዊ ቀስተ ደመና ቀለሞችን ለማከማቸት 7 × 3 = 21 ባይት ያስፈልግዎታል ፣ ስለዚህ 72% ራም ወጥቷል። ደህና ፣ ለመሠረታዊ ቀለሞች ፣ እኔ አጋነንኩ -በራም ውስጥ ሁሉንም በአንድ ጊዜ አንፈልግም እና በጭራሽ አይለወጡም ፣ ስለሆነም ከራም ይልቅ በፍላሽ ውስጥ እንዲከማቹ እንደ ቋሚ ድርድር ሊተገበሩ ይችላሉ። ለማንኛውም ፣ ስለተጠቀመው ሃርድዌር አጠቃላይ ግንዛቤ ይሰጣል።

ስለ ያለጊዜው ማመቻቸት የ Knuth መግለጫን በማስታወስ ፣ ምን እንደ ሆነ ለማየት ሦስት የመብራት ሁነቶችን ለየብቻ ከመቅረጽ ጀመርኩ። እነሱ በትክክል መሥራታቸውን ለማረጋገጥ እያንዳንዱ ተለይቼ ሞክሬአቸዋለሁ እና እያንዳንዱ የእኔ ማይክሮ መቆጣጠሪያን ይገጣጠማል። እሱን ለማሳካት ሁለት ምሽቶች ወስዶ ሁሉም ነገር በጥሩ ሁኔታ ተከናወነ።… የ avr- መጠን መገልገያ የ 1.5 ኪባ የጽሑፍ ክፍል መጠን (ከኤኤር-ጂሲ ባንዲራ ጋር) ሪፖርት አድርጓል። በዚያ ቅጽበት የእኔ የመጀመሪያ ሀሳብ አንዳንድ ATtiny25 ን በ 2 ኪባ ፍላሽ ለመያዝ ነበር እና ያ የዚህ ታሪክ አስደሳች መጨረሻ ሊሆን ይችላል።

ግን በሆነ መንገድ ከተሻሻለ በኋላ ያንን የተበላሸ ኮድ ወደ 1 ኪ.ቢ መቀነስ እንደቻልኩ ተሰማኝ። ሆኖም ፣ የማይቻል መሆኑን ለመገንዘብ እና ለማንኛውም ለማከናወን አንድ ተጨማሪ ሳምንት ወስዷል። ቀስተ ደመናን ወደ አምስት መሠረታዊ ቀለሞች (ያለ ጉልህ የእይታ ልዩነት) መቁረጥ ነበረብኝ። የጉዳይ መግለጫዎችን አስወግጄ የሁለትዮሽ ኮድ መጠንን ለመቀነስ ከሆነ if-then- ከሆነ ሰንሰለት ተጠቀምኩ። የእሳት አኒሜሽን እጅግ በጣም ግዙፍ የሆነ የውሸት ቁጥር ጄኔሬተር ይፈልጋል ፣ ስለሆነም ቀለል ባለ የ LFSR ስሪት በቋሚ የመጀመሪያ እሴት ተግባራዊ አደረግሁ። ስለ PRNG ሙሉ ዑደት ርዝመት ግድ የለኝም እና በኮድ መጠን እና “በተጨባጭ የእሳት አኒሜሽን” መካከል የቁልቁለት ሚዛን መፈለግ ብቻ አይደለም። እኔ አሁን የማላስታውሳቸው ብዙ አነስተኛ ማመቻቻዎችን ተግባራዊ አድርጌያለሁ እና ከእሳት ወደ ቺፕ ውስጥ ሁሉንም ሁነታዎች እንኳን ማብራት ችዬ ነበር። ሀሳቤን ስጨርስ ፣ አጠቃላይ ኮዴ 1200 ባይት ገደማ ነበር።

የእረፍት ጊዜ ወስጄ ስለ AVR ኮድ ማመቻቸት ብዙ አንብቤ ነበር። ለመተው እና በስብሰባ ቋንቋ ሁሉንም ለመፃፍ ተቃርቤ ነበር ነገር ግን የመጨረሻውን ዕድል ሰጠሁት። በመጨረሻው የማመቻቸት ጥድፊያ ወቅት ቀስተ ደመናን ወደ ሶስት መሠረታዊ ቀለሞች እቆርጣለሁ እና ሌሎችንም በበረራ ላይ እንዲሰሉ አድርጌያለሁ ፣ ሁሉንም ነገር መርምሬ AVR ን የማመቻቸት ምክሮችን ተከትዬ በመጨረሻ…

avrdude: ፍላሽ መጻፍ (1004 ባይቶች)

መጻፍ | ##################################################### | 100% 0.90 ዎች

የአሁኑን ሁኔታ ለማከማቸት ሁሉንም ራም እና አንድ EEPROM አንድ ባይት ብቻ ተጠቅሜያለሁ ማለት አያስፈልግም። ይህ ተስማሚ እና የመጨረሻ ትግበራ ነው ብዬ አልጠቁምም። እሱ ብቻ ይሠራል እና የማይክሮ መቆጣጠሪያውን ይገጥማል። እርግጠኛ ነኝ ፣ በተሻለ ሁኔታ ሊያደርጉት ይችላሉ። እኔ በእውነት ነኝ። መጀመሪያ ላይ ፈጽሞ የማይቻል ነው ብለው ያሰቡትን ተግባራዊ ያልሆነን ችግር ለመፍታት ደስታን ብቻ ማጋራት እፈልጋለሁ። ስለዚህ ጠለፋ ማለት የሚቻለውን ወሰን መመርመር ማለት ነው…” -ሪቻርድ ስታልማን።

አቅርቦቶች

1x ATtiny13 MCU ($ 0.28 = $ 0.24 ለ MCU በ SOP-8 ጥቅል እና $ 0.04 ለ DIP8 አስማሚ)

8x WS2812 RGB LEDs (ሰሌዳ ወይም አንድ የኤልዲ ጭረት ቁራጭ እመክራለሁ) ($ 0.42)

1x TTP223 የንክኪ አዝራር ($ 0.10)

1x ማይክሮ ዩኤስቢ ወደ DIP አስማሚ ($ 0.14)

1x 10kΩ resistor (<$ 0.01)

1x 100nF የሴራሚክ capacitor (<$ 0.01)

1x 10-47µF ኤሌክትሮላይቲክ capacitor (<$ 0.01)

ጠቅላላ <0.97 ዶላር

ደረጃ 1 የሶፍትዌር ማዋቀር

የሶፍትዌር ማዋቀር
የሶፍትዌር ማዋቀር

የማይክሮ መቆጣጠሪያ ሮምን ለመስቀል የምንጭ ኮዱን እና የ avrdude መገልገያን ለማጠናቀር የ avr-gcc መሣሪያ ሰንሰለት ያስፈልግዎታል። የመጫን ሂደቱ በጣም ቀላል እና ቀጥተኛ ነው ፣ ግን በእርስዎ ስርዓተ ክወና ላይ የተመሠረተ ነው። አንድ ዓይነት የጂኤንዩ/ሊኑክስን የሚጠቀሙ ከሆነ ምናልባት በማከማቻ ማከማቻ ዛፍዎ ውስጥ ቀድሞውኑ ትክክለኛ ጥቅሎች ይኖሩዎት ይሆናል። የዚህ ፕሮጀክት ምንጭ ኮድ እዚህ ሊወርድ ይችላል-

github.com/arduinocelentano/t13_ws2812_lamp

እንዲሁም የ light_ws2812 ቤተ -መጽሐፍት ያስፈልግዎታል

github.com/cpldcpu/light_ws2812

አንዴ የ avr-gcc መሣሪያ ሰንሰለት እና የፕሮጀክት ምንጮች ካገኙ በኋላ ተርሚናልዎን ያሂዱ እና የሚከተለውን ኮድ ይተይቡ

ሲዲ መንገድ/ወደ/ፕሮጀክት

ማድረግ

ደረጃ 2 ማይክሮ መቆጣጠሪያውን ፕሮግራም ማድረግ

የማይክሮ መቆጣጠሪያውን ፕሮግራም ማድረግ
የማይክሮ መቆጣጠሪያውን ፕሮግራም ማድረግ
የማይክሮ መቆጣጠሪያውን ፕሮግራም ማድረግ
የማይክሮ መቆጣጠሪያውን ፕሮግራም ማድረግ
የማይክሮ መቆጣጠሪያውን ፕሮግራም ማድረግ
የማይክሮ መቆጣጠሪያውን ፕሮግራም ማድረግ

አንድ ዓይነት የዩኤስቢኤስፕ ፕሮግራም አውጪ ካለዎት ፣ በእሱ አቆጣጠር መሠረት ከአቲኒ ጋር ያገናኙት። ብዙውን ጊዜ እንደዚህ ይመስላል ፣ ግን ትክክለኛውን ፒኖትዎን እንዲፈትሹ አጥብቄ እመክራለሁ!

እንደአማራጭ ፣ የአርዲኖ ቦርድ እንደ ፕሮግራም አውጪ ሊጠቀሙበት ይችላሉ። Arduino IDE ን ይክፈቱ እና በ “ፋይል → ምሳሌዎች” ምናሌ ውስጥ የአርዲኖ አይኤስፒ ምሳሌን ያግኙ። ንድፉን ከጫኑ በኋላ የእርስዎ የአርዱዲኖ ቦርድ እንደ ፕሮግራም አውጪ ሆኖ ይሠራል። በሥዕላዊ መግለጫው ኮድ ውስጥ ያሉት አስተያየቶች ለመጥቀስ ፍንጭ ይሰጡዎታል።

አሁን ሩጡ

ብልጭታ ያድርጉ

MCU ን ለማብራት እና

ፊውዝ ያድርጉ

ፊውዝ ቢት ለማቀናበር።

የሚመከር: