ዝርዝር ሁኔታ:

ኦሱ! የቁልፍ ሰሌዳ: 8 ደረጃዎች (ከስዕሎች ጋር)
ኦሱ! የቁልፍ ሰሌዳ: 8 ደረጃዎች (ከስዕሎች ጋር)

ቪዲዮ: ኦሱ! የቁልፍ ሰሌዳ: 8 ደረጃዎች (ከስዕሎች ጋር)

ቪዲዮ: ኦሱ! የቁልፍ ሰሌዳ: 8 ደረጃዎች (ከስዕሎች ጋር)
ቪዲዮ: 🛑 አዲስ ዝማሬ | የማርያም ነህ ይሉኛል | ዘማሪ አንግዳወርቅ |@dejtenahu 2024, ሰኔ
Anonim
ኦሱ! የቁልፍ ሰሌዳ
ኦሱ! የቁልፍ ሰሌዳ

እኔ በቅርቡ ኦሱ የተባለ ምት ምት ጨዋታ መጫወት ጀመርኩ! እና ለንግድ አነስተኛ የቁልፍ ሰሌዳ ቪዲዮን ካየሁ በኋላ እኔ እራሴ ዲዛይን ማድረግ አስደሳች ፕሮጀክት ይሆናል ብዬ አሰብኩ። ከዚያ ብዙም ሳይቆይ እንደ መጀመሪያው ፕሮጀክት በአስተማሪ ዕቃዎች ላይ ማድረጉ ጥሩ ሀሳብ እንደሆነ ወሰንኩ።

ይህንን ፕሮጀክት በትክክል ወደ መጨረሻው መመሪያ መድገም ከፈለጉ እንግዶቼ ይሁኑ ፣ ግን ያደረግኳቸው አንዳንድ ምኞቶች በዝቅተኛ ዋጋ ወይም በጥሩ ጥራት ላይ አይመሰረቱም። በዙሪያቸው ተኝቼ ስለነበርኩ አንዳንድ ክፍሎች ማለት ይቻላል የተመረጡ ናቸው። እርስዎ ማስተናገድ ከቻሉ ፕሮጀክትዎን እንዲያበጁ አበረታታዎታለሁ።

ማስታወሻ 1 - የ SMD ክፍሎች (አነስተኛ ኤሌክትሮኒክስ) ጥቅም ላይ ይውላሉ ስለዚህ ይህንን የፕሮጀክት ብየዳ ክህሎት ያስፈልጋል። ምናልባት ለመሸጥ ቀላል የሆነ ስሪት ሊታከል ይችላል ፣ ግን እነዚህ ሊድስ በገንዳ ጉድጓድ ጥቅል ውስጥ አይመጡም

ማስታወሻ 2 - ኮዱን ብዙ ጊዜ አዘምነዋለሁ እና አሁን ወደ ስሪት 3ish እመጣለሁ። ሁሉንም ኮድ በመስመር ላይ እተወዋለሁ ግን የመጨረሻውን ስሪት እንዲጠቀሙ እመክራለሁ። በአሁኑ ጊዜ የመሪነት ተግባር የለውም ፣ ግን እሱ በጣም ጥሩ አፈፃፀም መሆን አለበት።

ደረጃ 1: ቁሳቁሶች እና ማብራሪያዎች

ቁሳቁሶች እና ማብራሪያዎች
ቁሳቁሶች እና ማብራሪያዎች

ፕሮጀክትዎን እንዴት እንደሚሠሩ ላይ በመመስረት የተለያዩ አካላት ሊፈልጉ ይችላሉ ፣ ግን እነዚህ አካላት እኔ የተጠቀምኳቸው ናቸው። ጊዜ ካለዎት እና ገንዘብን ለማዳን ከፈለጉ ፣ aliexpress ን ያዙ እና ፒሲቢውን አያዝዙ።

1 አርዱinoኖ ፕሮ ማይክሮ + የዩኤስቢ ገመድ

3 Kailh BOX ቀይ መቀያየሪያዎች

3 10k resistor (0805 SMD)

3 100nF capacitor (0805 SMD)

4 APA102 rgb LED (5050 SMD)

3 የቁልፍ ሰሌዳዎች

1 በዚህ ፕሮጀክት ውስጥ የታተመ የወረዳ ሰሌዳ (ፒሲቢ)

በዚህ ፕሮጀክት ውስጥ የቀረበው 1 3 ልኬት መያዣ

ለምን የአርዱዲኖ ፕሮ ማይክሮን እጠቀማለሁ?

እንደ Uno (Atmega328) ያሉ አብዛኛዎቹ የአርዱዲኖ ሰሌዳዎች ለዩኤስቢ ግንኙነት ቤተኛ ድጋፍ የላቸውም። አዎ በጣም በቀላሉ በዩኤስቢ ላይ መርሃ ግብር ልታደርጓቸው ትችላላችሁ እና የመፍትሄ አቅጣጫዎች አሉ ብዬ አስባለሁ ፣ ግን የዩኤስቢ ግንኙነትን በተመለከተ ቀለል ባለ መልኩ መቀጠል እወዳለሁ እና የመፍትሄዎቹ ምላሽ ሰጪ እንደሆኑ አላውቅም። የ Arduino pro micro (Atmega32U4) በውስጡ የሠራው የዩኤስቢ ግንኙነት እንዲቻል እነዚያ ሰሌዳዎች የዩኤስቢ ግንኙነት እንዲቻል ውጫዊ ቺፕ ይጠቀማሉ።

መቀያየሪያዎቹ

ሊጠቀሙባቸው የሚችሉ ብዙ ሜካኒካዊ መቀየሪያዎች አሉ። ከካይል ወይም ከቼሪ ኤምኤክስ መስመራዊ ፣ ንክኪ ወይም ጠቅታ። የሚወዱትን ይምረጡ። በአይሊፕስፕስ ላይ ርካሽ ስለነበሩ የ Kailh መቀየሪያዎችን እጠቀም ነበር። PCB ን ለመጠቀም ከመረጡ የ Kailh BOX መቀየሪያዎች ያስፈልግዎታል። ቀለሙ ስሜቱን ይወስናል።

የኤሌክትሮኒክ ክፍሎች

በዚህ ምዕራፍ ውስጥ ስለእነሱ ለማብራራት ብዙ አይደለም ፣ ግን ፒሲቢን የማይጠቀሙ ከሆነ በቀላሉ ለመሸጥ የተለመዱትን የገንዳ ቀዳዳ ክፍሎችን እመክራለሁ። እንደ አለመታደል ሆኖ ጥቅም ላይ የዋሉት ሊድዎች በጉድጓድ ጉድጓድ ጥቅሎች ውስጥ አይገኙም። በሽያጭ ችሎታዎችዎ ላይ በጣም እርግጠኛ ካልሆኑ በስተቀር በ SMD ጥቅሎች ላይ ሽቦዎችን እንዲጠቀሙ አልመክርም። በፒሲቢ “የላቀ” የመሸጥ ችሎታ ላይ ለ SMD እንኳን እኩል ናቸው።

መኖሪያ ቤቱ

በዚህ ፕሮጀክት ውስጥ መኖሪያ ቤት እሰጣለሁ ፣ ግን በዚህ ጊዜ ጉድለት ያለበት ነው። መቀርቀሪያዎችን ለመገጣጠም ማስተካከያዎች ያስፈልጋሉ ፣ ለሊዶቹ ክፍት ቦታዎች ጥሩ አይደሉም ፣ አርዱዲኖ ተጋለጠ እና ለዩኤስቢ እንዲገጣጠም አንድ ክፍል መቁረጥ ያስፈልጋል። ለወደፊቱ አዲስ መኖሪያ ቤት ሊጨመር ይችላል። የ 3 ዲ አታሚ ካለዎት ይቀጥሉ እና ያትሙት ፣ ግን እባክዎን አንድ ዓይነት የፕሮጀክት ሳጥን ካልተጠቀሙ ይህንን የተበላሸ መያዣ ለማተም ከመንገድዎ አይውጡ።

ደረጃ 2 - መርሃግብሩ

መርሃግብሩ
መርሃግብሩ

የዚህ ፕሮጀክት ንድፈ ሀሳብ ቀላል ነው ፣ ግን ፍላጎት ላላቸው እና ይህንን ትግበራ ለማያውቁ ሰዎች ክፍሎቹን ለማብራራት እፈልጋለሁ።

ግንኙነቶችን ወደ አርዱዲኖ ይለውጡ

መቀያየሪያዎቹ ከ Arduino ፒኖች 0 ፣ 2 እና 3 ጋር ተገናኝተዋል ምክንያቱም እነዚያ ፒኖች እንደ ውጫዊ ማቋረጦች ሆነው ሊያገለግሉ ይችላሉ። ይህ በኮድ ክፍል ውስጥ የበለጠ ተብራርቷል።

የ debounce ወረዳ

በሥዕላዊ መግለጫው በግራ በኩል 3 ጊዜ የሚገለበጥ ወረዳ አለ። ይህ ወረዳ ማብሪያ / ማጥፊያውን ለማራገፍ ያገለግላል። ማቃለል ምን እንደሆነ ለማወቅ የመቀያየርን መንጋጋ መረዳት ያስፈልግዎታል እና ለመረዳት አስቸጋሪ አይደለም።

የመጀመሪያውን ስዕል ለመሳል መጀመሪያ ይህንን ማስመሰያ ይመልከቱ (በፍጥነት መቀየሪያውን ጠቅ ያድርጉ እና ከዚህ በታች ያለውን ምልክት ይመልከቱ)

ማብሪያ / ማጥፊያ ሲጫኑ ወይም ሲለቁ ይሽከረከራል እና ምልክትዎ ለጥቂት ሚሊሰከንዶች በጥቂት እና ሁለት ጊዜያት መካከል ይለዋወጣል። አርዱዲኖ በእውነቱ ፈጣን ነው እናም በዚህ አጭር ጊዜ እያንዳንዱን ከፍ እና ዝቅ ይላል። ከፍተኛ ወይም ዝቅተኛ በተነበበ ቁጥር ፕሮግራሙ የቁልፍ ፕሬስ ይልካል ወይም ይለቀቃል ስለዚህ በእያንዳንዱ ፕሬስ ኮምፒተርዎ ብዙ የቁልፍ ማተሚያዎችን ይቀበላል። ለሪም ጨዋታ ተስማሚ አይደለም።

ይህ የማራገፊያ ዑደት የምልክት መውደቁን ጠርዝ ያዘገየዋል። ወደ አርዱinoኖ ያለው ምልክት መብረቅ እንደተከሰተ በፍጥነት መለወጥ አይችልም ስለዚህ እንደ አንድ ፕሬስ ይነበባል። ለሚቀጥለው እውነተኛ ፕሬስ በዝግታ ስለሚወድቅ አይጨነቁ ምክንያቱም እሱ ይሆናል።

የላቀ ፦

Atmaga32U4 ዲጂታል ዝቅተኛ በ 0.2Vcc - 0.1V = 0.9 ቮልት ያነባል። በሚፈስበት ጊዜ በማንኛውም ጊዜ የ capacitor ቮልቴጅ Vcc * e^(-t/RC) ነው። በእርስዎ ማብሪያ / ማጥፊያ ላይ የተለየ የመቀነስ ጊዜን የሚለኩ ከሆነ የተቃዋሚዎን እና የካፒቴን እሴቶችን ማስላት ይችላሉ።

የቀመር ቅጽ

ኤልኢዲዎች

የ rgb LED ዎች የሰዓት እና የውሂብ መስመርን በመጠቀም በግለሰብ ደረጃ አድራሻ የሚይዙ APA102 ሊዶች ናቸው። እንዲሠሩ ለማድረግ የውጭ አካላት አያስፈልጉም። ለብዙ ኤልኢዲዎች ከ 5 ቮልት እና ከመሬት ጋር ትይዩ የሆነ capacitor መጠቀም አለብዎት ነገር ግን በ 4 ኤልኢዲዎች ብቻ አያስፈልገዎትም።

ደረጃ 3 የቦርዱ ንድፍ

የቦርዱ ንድፍ
የቦርዱ ንድፍ

PCB በ JLCPCB ውስጥ የተነደፈ ነው። እኔ በእነሱ ስፖንሰር አይደለሁም ግን ለርካሽ ፕሮቶፖች እነሱ እጅግ በጣም ጥሩ ፒሲቢዎችን ያደርጋሉ። ለ 2 ዶላር ተመሳሳይ ቦርድ 10 ያገኛሉ ፣ ግን መላኪያ ለእኔ 11 ዶላር ያህል ነበር። RGB ብርሃንን በስውር የማይፈልጉ ከሆነ እና አንድ ብቻ ለማድረግ ካሰቡ ፣ የቁልፍ ሰሌዳዎን ያለ ፒሲቢ ለመሥራት ማሰብ አለብዎት።

የቦርዱ ንድፍ በቀጥታ ወደ ፊት ቀጥ ያለ ነበር። ለማዞሪያዎቹ አንድ አካል ብቻ ማከል ነበረብኝ ፣ ግን አንዳንድ ቪዲዮዎችን ከተመለከትኩ በኋላ ተንጠልጥዬ ገባሁ። እኔ የተረዳሁት ብቸኛው ጉድለት የጉድጓዶቹ አቀማመጥ ወደ መቀያየሪያዎቹ በጣም ቅርብ ነው።

PCB ን ለማዘዝ ወደ https://jlcpcb.com/ ይሂዱ እና የ 2 ድርብርብ አማራጩን ይምረጡ። የገርበር ፋይል ይጠይቅዎታል። የ “.zip” ፋይልን ያውርዱ እና ወደ መስኮቱ ይጎትቱት። እሱን መበተን አያስፈልግዎትም። ቅንብሮቹ ጥሩ መሆን አለባቸው እና መቀጠል እና ትዕዛዙን ማጠናቀቅ ይችላሉ።

ደረጃ 4 የጉዳይ ንድፍ እና የመሰብሰቢያ ምክሮች

የጉዳይ ንድፍ እና የስብሰባ ምክሮች
የጉዳይ ንድፍ እና የስብሰባ ምክሮች
የጉዳይ ንድፍ እና የስብሰባ ምክሮች
የጉዳይ ንድፍ እና የስብሰባ ምክሮች
የጉዳይ ንድፍ እና የስብሰባ ምክሮች
የጉዳይ ንድፍ እና የስብሰባ ምክሮች
የጉዳይ ንድፍ እና የስብሰባ ምክሮች
የጉዳይ ንድፍ እና የስብሰባ ምክሮች

ንድፍ

ቀደም ሲል እንደታሰበው ፣ የእኔ ንድፍ ጉድለት አለበት ግን ከፈለጉ አሁንም ማተም ይችላሉ። ዲዛይኑ የተሠራው በ Fusion 360 ውስጥ ነው። እሱ ነፃ የ 3 ዲ አምሳያ ሶፍትዌር ነው እና በእኔ ተሞክሮ ከፈጠራ እና ጠንካራ ሥራዎች ጋር አብሮ መሥራት በጣም ቀላል ነበር። በጉዳዩ ማዕዘኖች ላይ ያሉት ክበቦች ከህትመት አልጋው እንዳይላጠፉ ለመከላከል ነው።

የራስዎን ጉዳይ ካደረጉ አንድ ነገር ብቻ አስፈላጊ ነው። የእርስዎ መቀያየሪያዎች በጥብቅ መቀመጥ እና መንቀሳቀስ የለባቸውም። የ Kailh BOX መቀየሪያዎችን ይጠቀማሉ ብለው ለራስዎ ንድፍ ሊጠቀሙበት እንዲችሉ የካሬ ቁርጥራጮቹን ሥዕሎች ከስፋቶች ጋር አቅርቤያለሁ።

ስብሰባ

አሁን ለመሰብሰብ የሚያስፈልጉ ሁሉም ክፍሎች አሉዎት። መቀየሪያዎቹ ስለሚሸጡ ይህንን የመጀመሪያ ስሪት ለመሰብሰብ ትእዛዝ አለ።

1. የ SMD ክፍሎቹን ያሽጡ። እነዚህ ተቃዋሚዎች ፣ capacitors እና LEDs ናቸው።

2. Arduino pro micro ን ያሽጡ።

3. ከመሸጥዎ በፊት 3 መቀያየሪያዎቹን በ 3 ዲ የታተመ የሽፋን ሰሌዳ ውስጥ ያስቀምጡ። መቀያየሪያዎቹን ከለበሱ በኋላ የሽፋን ሰሌዳው ሊወገድ አይችልም። መቀያየሪያዎቹን ማስወጣት አይመከርም እና ሊያጠፋቸው ይችላል።

4. አሁን መቀያየሪያዎቹን በቦታው ላይ ያኑሩ። የፕላስቲክ መቀያየሪያዎች ሊቀልጡ እና ሊያበላሹዋቸው ወይም የጠቅታዎቻቸውን ብዛት በእጅጉ ሊቀንሱ ስለሚችሉ በተቻለ ፍጥነት ይህንን ያድርጉ።

5. የተሰበሰበውን የሽፋን ሰሌዳ በ 3 ዲ የታተመ መያዣ ውስጥ ያስቀምጡ እና በቁልፍ መያዣዎቹ ውስጥ ጣልቃ ካልገቡ በቴፕ ይያዙ ወይም መያዣዎችን ይጠቀሙ።

6. ቁልፎቹን በማብሪያዎቹ ላይ ያስቀምጡ እና ጨርሰዋል።

ምክሮች

ኮድዎን ከሰቀሉ በኋላ ዲዲደርደር ወይም አርዱዲኖ ላይ ያሉትን ኤልዲዎች ይሸፍኑ። ኮድዎ ካልተጫነ ግን እንደ ተጠናቀቀ ምርት መመልከቱ ጥሩ ካልሆነ ሌዲዎቹ ቢኖሩ ጥሩ ናቸው። ክህሎት እና የጠቆመ ጠመዝማዛዎች ያስፈልጋሉ።

እንዲሁም አንዳንድ የግርጌ እግሮች ለፀረ -ተንሸራታች ጥሩ ናቸው እና የ rgb ብርሃን እንዲበራ ያድርጉ።

ደረጃ 5 - ኮድ V1 (የሃርድዌር መሻር)

ኮድ V1 (የሃርድዌር መሻር)
ኮድ V1 (የሃርድዌር መሻር)
ኮድ V1 (የሃርድዌር መሻር)
ኮድ V1 (የሃርድዌር መሻር)

የዚህ ፕሮጀክት ኮድ ለጀማሪ ተስማሚ አይደለም ስለዚህ በአሩዲኖ ውስጥ ፕሮግራምን ገና ከጀመሩ ይህ ኮድ ምናልባት ትንሽ ሊያስፈራዎት ይችላል። ሆኖም በተቻለኝ መጠን ምን እየሆነ እንዳለ ለማብራራት እሞክራለሁ። በዚህ ጽሑፍ ውስጥ አንዳንድ ነገሮች በኋላ ላይ ተብራርተዋል ስለዚህ ጥያቄዎች ካሉዎት መጀመሪያ ሁሉንም ነገር ያንብቡ።

ኮዱን በመስቀል ላይ

መጀመሪያ ሁሉንም 3 ".ino" ፋይሎች ያውርዱ እና በአንድ አቃፊ ውስጥ ያስቀምጧቸው። የ Arduino IDE ከሌለዎት በይፋዊው አርዱዲኖ ጣቢያ ላይ በነፃ ያውርዱት።

አርዱዲኖዎን ከፒሲዎ ጋር ያገናኙ እና “OSU_Keyboard_code_V1.ino” ን ይክፈቱ። በመሳሪያዎች ቦርድ ውስጥ “አርዱዲኖ/ጀኑኖ ማይክሮ” ን ይምረጡ። እንዲሁም በመሳሪያዎች ውስጥ ትክክለኛውን COM ወደብ ይምረጡ። ይህ አንዳንድ ጊዜ ሊለወጥ ይችላል። ኮዱን ወደ አርዱinoኖ ለመስቀል በማያ ገጹ በላይኛው ግራ በኩል ባለው ቀስት ላይ ጠቅ ያድርጉ እና ከታች በስተግራ እንደተጠናቀቀ እስኪነግርዎ ድረስ ይጠብቁ።

OSU_Keyboard_code_V1

ማካተት እና መግለፅ

በመጀመሪያ የቁልፍ ሰሌዳ ቤተ -መጽሐፍት ማካተት አለብዎት። ይህ አርዱዲኖን እንደ ቁልፍ ሰሌዳ እንዲጠቀም ያደርገዋል።

ቀጥሎ አንዳንድ እሴቶችን እገልጻለሁ። ይግለጹ ልክ እንደ ተለዋዋጭ ነው ነገር ግን ፕሮግራሙ በሚሠራበት ጊዜ መለወጥ አይችሉም። የመጀመሪያዎቹ 9 የቁልፍ ሰሌዳ ቁምፊ ፣ የአርዱዲኖ ፒን ቁጥር እና የወደብ ቢት ናቸው።

ከዚያ የ LED ውሂቡ እና የሰዓት ወደቦቹ ቁርጥራጮች።

እንዲሁም የሊዶች ብዛት ይገለጻል እና ለቀለም መንኮራኩር አንግል ተለዋዋጭ ነው።

አዘገጃጀት

አርዱዲኖ ሲሰካ ይህ የኮዱ ክፍል አንድ ጊዜ ብቻ ይፈጸማል።

በመጀመሪያ የ LED ዎች የሰዓት እና የውሂብ ፒኖች እንደ ውፅዓት እና የመቀየሪያ ፒን እንደ ግብዓቶች ይዘጋጃሉ። ይህ የፒን ሞዶ () የላቀ ስሪት ነው። ፍላጎት ካለዎት “ቀጥታ ወደብ ማዛባት” ይፈልጉ።

Keyboard.begin () በቀላሉ የዩኤስቢ ግንኙነቱን እንደ ቁልፍ ሰሌዳ ይጀምራል።

ቀጣይ 3 ማቋረጦች ከመቀየሪያ ካስማዎች ጋር የተገናኙ ናቸው። በማዞሪያ ፒን ላይ ለውጥ በተገኘ ቁጥር አንድ ትንሽ ፕሮግራም ይፈጸማል። ይህ ትንሽ መርሃ ግብር በቀጣይ ይደረጋል።

ሉፕ

አርዱዲኖ ኃይል በሚሰጥበት ጊዜ ይህ ክፍል ያለማቋረጥ ይደግማል።

እኔ የ LEDs ቀለሙን ለመለወጥ እና ለማዘመን ብቻ እጠቀማለሁ።

ያቋርጣል

በመለወጫ ቁልፎች ላይ ለውጥ ሲታወቅ ብቻ የሚተገበሩ ትናንሽ ፕሮግራሞች እዚህ ተሠርተዋል። ለየትኛው ፒን ምላሽ ከሰጡ በስተቀር አንድ ናቸው።

መጀመሪያ አዝራሩ ተጭኖ ወይም ከተለቀቀ ይፈትሻል እና ትክክለኛውን የቁልፍ ሰሌዳ ትዕዛዝ ይልካል።

LED (በተለየ ቅደም ተከተል ተብራርቷል)

LED ዎች እንዴት እንደሚቆጣጠሩ የማወቅ ጉጉት ካለዎት የ APA102 የውሂብ ሉህ ማየት አለብዎት።

OneBit

ይህ እንደገና የዲጂታል ፃፍ ቀጥተኛ ወደብ የማዛባት ስሪት ነው።

መጀመሪያ 0 ወይም 1 መላክ እንዳለበት ይፈትሻል እና በቅደም ተከተል የውሂብ ፒን ዝቅተኛ ወይም ከፍተኛ ይጎትታል። ከዚያ የሰዓት ፒኑን በጣም አጭር አድርጎ ይጽፋል እና እንደገና ዝቅ ብሎ ይጽፋል።

OneByte

ይህ በ “ለ” loop አንድ oneBit ን 8 ጊዜ ይደግማል። የመጀመሪያውን ቢት ያነብባል እና እሴቱን ወደ አንድ ቢት ተግባር ያስተላልፋል እና ለሚቀጥሉት 7 ቢቶች እንዲሁ ያደርጋል።

ሊዳ ዳታ

ይህ ለአንድ መሪ የሚያስፈልገውን ውሂብ ለማቅረብ oneByte 4 ጊዜ ይደግማል። የመጀመሪያው ባይት በ 111xxxxxx እና በ xxxxx ቦታ ላይ በ 5 ቢት ብሩህነት እሴት ይጀምራል። ብሩህነት ከ 0 ወደ 31 (2^5 = 32 ደረጃዎች) ሊዘጋጅ ይችላል።

ቀጣዮቹ 3 ባይቶች ለሰማያዊ ፣ አረንጓዴ እና ቀይ እሴቶች ናቸው። ለእያንዳንዱ ቀለም አንድ ባይት።

ColorWheelThisLed

ይህ ተግባር ledData በቀለም መንኮራኩር ውስጥ ባለው አንግል ላይ በመመርኮዝ የ rgb ቀለሞችን ይሰጠዋል።

የ 16 ቢት እሴት በ 6 ዲግሪዎች በ 60 ዲግሪዎች በተከፋፈሉ ክፍሎች ውስጥ ነው። ምስሎቹን መመልከት በተሻለ ለመረዳት ይረዳዎታል።

(የ 8 ቢት ስሪት እንዲሁ ቀርቧል ግን በጣም ብልጭ ድርግም ስለሆነ አስተያየት ሰጥቷል)

StartEndFrame

አዲስ ቀለሞችን ወደ ሌዲዎቹ ለመላክ እና የሊዶቹን ትክክለኛ ቀለም ለማዘመን በሚፈልጉበት ጊዜ ሁሉ የመነሻ ክፈፉ መጠቀም ያስፈልጋል።

የመጨረሻ ክፈፉ ስለማያስፈልግ የመነሻውን ፍሬም ብቻ እጠቀማለሁ። የመነሻ ፍሬም 4 ባይት ከ 0. የመጨረሻው ፍሬም 25 ባይት (11111111) 4 ባይት ነው።

ደረጃ 6 - ኮድ V2 (ሶፍትዌሮች ከሰዓት ቆጣሪዎች ጋር ማውረድ)

ኮድ V2 (ሶፍትዌሮች ከሰዓት ቆጣሪዎች ጋር ያርቁ)
ኮድ V2 (ሶፍትዌሮች ከሰዓት ቆጣሪዎች ጋር ያርቁ)

ከተጫወትኩ በኋላ በሃርድዌር መዘግየት አንዳንድ ድርብ መታ ችግሮችን አስተዋልኩ። ይህ በአንዳንድ ሌሎች የእሴት መከላከያዎች ወይም መያዣዎች ሊስተካከል ይችላል ፣ ግን ቁልፎቹ እና ክዳኑ የማይነጣጠሉ በመሆናቸው የሶፍትዌር መሻር ጥሩ መፍትሔ ይሆናል ብዬ አሰብኩ። የሶፍትዌሩ መቀልበስ በእርጥብ ሃርድዌር መቀልበስ ተግባራዊ ወይም ተግባራዊ መሆን አለበት። አሁን ባለው ማዋቀሬ ውስጥ ክዳኑን አልገፋውም ስለዚህ ተከላካዮቹን እና መያዣዎቹን በቦታው ትቼዋለሁ።

ለማብራራት ትንሽ ከባድ ስለሆነ ኮዱን እንደ ቀዳሚው ስሪት በስፋት አልገልጽም።

በመሠረቱ አብዛኛው ኮዱ ተመሳሳይ ነው የሚመራው ኮድ ሳይነካ ይቀራል። ምን ተለውጧል ውጫዊ መቋረጦች ከአርዱዲኖ ተግባራት በኋላ አይጠቀሙም። አሁን በንፁህ ሲ ኮድ ውስጥ ይሰራል። እና አሁን የተጨመረው የሶፍትዌር መቋረጥ ነው። ለዚህ እኔ መነሳት እስኪያቆም ድረስ የተወሰነ ጊዜን ለመጠበቅ የ AVR ሰዓት ቆጣሪዎችን እጠቀም ነበር። ሰዓት ቆጣሪዎቹ ተቋርጠዋል ምክንያቱም የመቁረጫ ጊዜው በሉፕ ውስጥ በሚከሰት ማንኛውም ነገር ላይ ተጽዕኖ አይኖረውም።

እኔ ልመጣበት የምችለው ብቸኛው ዝቅጠት የአርዱዲኖ መዘግየት ተግባራት ከእንግዲህ ጥቅም ላይ መዋል አለመቻላቸው ነው። ምክንያቱም የመዘግየት ተግባራት ሰዓት ቆጣሪ 0 ን ስለሚጠቀሙ እና ይህ ፕሮግራም ሰዓት ቆጣሪ 0 ን ለማውረድ ይጠቀማል።

በምስሉ ላይ ኮዱ በግምት እንዴት እንደሚሰራ ማየት ይችላሉ። የሜም ቢት ሰዓት ቆጣሪ እየሰራ መሆኑን ያመለክታል። ያልተገለፀው በአዝራሩ መጨረሻ ላይ ግብዓቱ ዝቅተኛ የመሆኑ ጉዳይ ነው። በዚህ ሁኔታ ቁልፉ ቀድሞውኑ ሲለቀቅ የቁልፍ መጫኛ ብቻ ይላካል። ይህም ማለት ኮምፒዩተሩ እስከሚገባበት ድረስ ቁልፉ ወደ ታች ይቀመጣል። ለዚህ ያልተለመደ ትርኢት አንድ ሰዓት ቆጣሪ ሲያበቃ ቼክ አስቀድሞ ይዘጋጃል። በሰዓት ቆጣሪ መጨረሻ ላይ አዝራሩ ካልተጫነ የቁልፍ መለቀቅ ትእዛዝ ይላካል።

ደረጃ 7 - ኮድ V3 (ሶፍትዌሩ በአቀባዊ ቆጣሪ) (የሚመከር) (LED የለም)

ኮዱ V3 (ሶፍትዌሩ በአቀባዊ ቆጣሪ) (የሚመከር) (LED የለም)
ኮዱ V3 (ሶፍትዌሩ በአቀባዊ ቆጣሪ) (የሚመከር) (LED የለም)

ይህ ኮድ እንዲሁ ተቃዋሚዎችን ወደታች ማውረድ የማይፈልጉበት ስሪት አለው። እያንዳንዱን ቁልፍ ከግቤት እና ከ GROUND ጋር ማገናኘቱን ያረጋግጡ! የተገነባው መጎተት ጥቅም ላይ ይውላል።

እንዲሁም በ V2 ኮድ ውስጥ አንዳንድ ያልተመዘገቡ ማተሚያዎችን አጋጥሞኛል። ኮዱ ከሰዓት ቆጣሪው ጋር በጣም የተወሳሰበ ይመስለኛል- እና የውጭ መቋረጥ እና አንዳንድ ልዩ ነገሮችን አምልጦኝ ይሆናል። በዚህ ምክንያት የሶፍትዌር ማስወገጃ ዘዴዎችን በበይነመረብ ላይ በመፈለግ ከባዶ ተጓዝኩ።

(በእውነቱ ፣ የዚህ ፕሮጀክት ቢያንስ ግማሹ በዚህ ነጥብ ላይ አዝራር እየጠፋ ነው)

ከተወሰነ ፍለጋ በኋላ ይህንን ጽሑፍ አገኘሁ -

www.compuphase.com/electronics/debouncing….

እውነቱን ለመናገር ፣ በትክክል እንዴት እንደሚሠራ ሙሉ በሙሉ ለመረዳት ጊዜ ወስዶብኛል። እሱ በጣም የተወሳሰበ ትንሽ የትንበያ ዘዴዎችን ያካትታል ፣ ግን በተቻለ መጠን ቀላል ለማድረግ እሞክራለሁ። ሆኖም የእኔ ማብራሪያዎች ልጥፉ ተጨማሪ ብቻ ይሆናሉ ስለዚህ ቢያንስ “አቀባዊ ቆጣሪዎችን” ፣ “የተብራራ ትግበራ” እና “መዘግየት መቀነስ” ን ማንበብ አለብዎት።

የእኔ ማብራሪያ

የጊዜ ሰንጠረዥ (በ WaveDrom ውስጥ የተሰራ) እኔ ያከልኩት ይህንን ትንሽ ሂሳብን ቢያንስ ትንሽ ለመረዳት የሚያስቸግር መሆን አለበት። ልብ ይበሉ ምስሉ 2 አጸፋ ቢት አለው ፣ ግን የእኔ ኮድ አለው 3. ይህ ማለት ረዘም ያለ የመልቀቂያ ጊዜ ማለት ነው።

በእያንዳንዱ እሴት አንድ ቢት

በአቀባዊ ቆጣሪ አተገባበር ብዙ ትይዩዎችን በአንድ ጊዜ በአንድ ጊዜ ብዙ ቁልፎችን ማውረድ ይቻላል። ሁሉም እሴቶች ዓይነት ባይት (uint8_t) እና 8 ቢት ያካተቱ ናቸው። እኛ ከእነዚህ ባይት ውስጥ የትኛውም ዋጋ ምን እንደሚይዝ አንጨነቅም ፣ ይልቁንም እኛ በእራሳቸው ቁርጥራጮች ላይ ፍላጎት አለን። ለማቃለል እያንዳንዱ አዝራር እያንዳንዱን ባይት አንድ ቢት ብቻ ይጠቀማል። የመጀመሪያው አዝራር የእያንዳንዱን ባይት የመጀመሪያ ቢት ብቻ ይጠቀማል ፣ ሁለተኛው ቁልፍ ሁለተኛውን ቢት ወዘተ ይጠቀማል።

ሁሉም በተመሳሳይ ጊዜ

ቢት ሂሳብን በመጠቀም እነዚህን የፒን መሰናክሎች በትይዩ ማስፈፀም ይቻላል። እና ፣ ቢት ሂሳብ በጣም የተወሳሰበ ቢሆንም ፣ ለአቀነባባሪው በጣም ቀልጣፋ ነው።

በ 8 ቢት የውሂብ ዓይነት ለ 8 አዝራሮች ይህንን ማድረግ ይቻላል። ትልልቅ የውሂብ ዓይነቶችን መጠቀም በአንድ ጊዜ ብዙ መዘበራረቅን ይፈቅዳል።

የ debounce

የመቀነስ አሠራሩ በሰዓት ቆጣሪ መቋረጥ በየ 1 ሚሊሰከንዱ ይፈጸማል።

አዝራሩ ሲጫን አዝራሩ የተዝረከረከ ሁኔታ የሆነው ሁኔታ በቁልፍ ዝቅ ይላል ፣ ይህም የአዝራር ቁልፍን ያሳያል። አንድ ልቀትን ለመለየት አዝራሩ ለረዥም ጊዜ ከፍ ያለ መሆን አለበት ፣ ይህም ለተወሰነ ጊዜ አለመነሳቱን ያሳያል። መቀያየር የአዝራር ለውጥን ለማመልከት ያገለግላል። የቆጣሪ ክፍሎቹ ለ… ያገለግላሉ። አንድ መነሳት ያልነበረበትን ጊዜ በመቁጠር።

ዴልታ በመግቢያው እና በተዘበራረቀ ሁኔታ መካከል ያለውን ልዩነት ያመለክታል። ልዩነት ሲኖር ብቻ ቆጣሪው ይቆጠራል። መነሳት ሲታወቅ ቆጣሪው እንደገና ይጀመራል (ዴልታ 0 ነው)።

ደረጃ 8: ውጤቱ

Image
Image

ሁሉም ነገር ደህና ከሆነ አሁን ኦሱን ለማጫወት የሚሰራ የቁልፍ ሰሌዳ ሊኖርዎት ይገባል! በርቷል። እኔ በግሌ ምንም መዘግየት አላስተዋልኩም። ካደረጉ እባክዎን ያሳውቁኝ። እንዲሁም ማንኛውም ጥያቄዎች ካሉ ማንኛውንም ነገር ለመጠየቅ ነፃነት ይሰማዎ።

ቀደም ሲል ስለ አንድ V2 የሚጠቅሰው እንደ ቃል ኪዳን አይደለም ማለት ነው ስለዚህ V2 ን መጠበቅ ስለሚፈልጉ ይህንን ፕሮጀክት ለሌላ ጊዜ አያስተላልፉ።

በቁልፍ ሰሌዳዎ እንደሚደሰቱ ተስፋ አደርጋለሁ!

ኦሱ! ስም: ቶማዝዝ 3

ችግርመፍቻ

በቁልፍ ሰሌዳዎ ላይ ችግሮች ያጋጥሙዎታል ብለው የሚያስቡ ከሆነ መጀመሪያ የጽሑፍ አርታኢን ይክፈቱ እና እያንዳንዱን ቁልፍ ለአጭር ጊዜ ይጫኑ።

አንድ ወይም ብዙ ቁልፎች አይሰሩም?

በሚሸጡበት ጊዜ ማብሪያ / ማጥፊያውን በውስጥ አጥፍተው ሊሆን ይችላል። መልቲሜትር/ቀጣይነት/ድምጽ ማሰማት ካለዎት አርዱዲኖ በማይገናኝበት ጊዜ ከመቀየሪያው ጋር ትይዩ ያድርጉት እና ቁልፉን ይጫኑ። ቢፕ መሆን አለበት።

እርስዎ አሁን የተየቧቸው ቁምፊዎች በኦሱ ውስጥ ካዋቀሯቸው ቁልፎች ጋር ይዛመዳሉ! ?

በመጀመሪያዎቹ 3 #ትርጓሜዎች ውስጥ በአርዱዲኖ ኮድ ውስጥ ገጸ -ባህሪያትን ይለውጡ ('' ሴሰሪ አይደለም!)።

ወይም የእርስዎን ኦሱ ይለውጡ! የተዋቀሩ ቁልፎችን ለመጠቀም ቅንጅቶች።

አንድ ወይም ብዙ ቁልፎች ጥቂት ጊዜ ተደግመዋል?

የመቀየሪያ ወረዳው ለዝውውርዎ አይሰራም ወይም በትክክል አልተሸጠም። የሽያጭ ግንኙነቶችዎን ይፈትሹ። አሁንም ከተከሰተ የ 1uF የካፒቴን እሴት ይሞክሩ። ይህ ለፒሲቢ ተጠቃሚዎች በጣም ከባድ ይሆናል።

በእርስዎ LEDs ላይ ችግሮች እያጋጠሙዎት ከሆነ

የ LEDs ብልጭ ድርግም ይላሉ?

የሽያጭ ግንኙነት ሊፈታ ይችላል። ፒሲቢውን የሚጠቀሙ ከሆነ በሕትመቱ ላይ ባለው ንጣፍ ላይ የፈሰሰውን የሽያጭ ቆርቆሮ በእውነቱ ያረጋግጡ።

ከሊዶቹ አንዳቸውም አይሰሩም ወይም ከተወሰኑ የ LED ቁጥሮች መሥራታቸውን አያቆሙም?

በመጀመሪያው ኤልኢዲ (ኮንዲሽነሮች) መካከል አጫጭር ልብሶችን ይፈትሹ (ዱካዎችን ይከተሉ) እና በአርዱዲኖ ውጤቶች እና እንደገና የመጀመሪያውን ኤልዲኤ ላይ በጥሩ ሁኔታ የተገናኘ ቆርቆሮ ይፈትሹ። ትክክለኛ እና አሁንም ጉድለት ከተረጋገጠ የመጀመሪያውን ኤልኢዲ መተካት ያስፈልግዎታል።

ይህ ካስተካከለ ለሚቀጥሉት ኤልኢዲዎች ይድገሙት።

የሚመከር: