ዝርዝር ሁኔታ:

ለ Digispark ATtiny85: 7 ደረጃዎች የባትሪ ኃይል ፍጆታን መቀነስ
ለ Digispark ATtiny85: 7 ደረጃዎች የባትሪ ኃይል ፍጆታን መቀነስ

ቪዲዮ: ለ Digispark ATtiny85: 7 ደረጃዎች የባትሪ ኃይል ፍጆታን መቀነስ

ቪዲዮ: ለ Digispark ATtiny85: 7 ደረጃዎች የባትሪ ኃይል ፍጆታን መቀነስ
ቪዲዮ: Ethical Hacking Full course How to hack ስለ ሀክ ሙሉ ትምህርት Amiko Tech 2024, ህዳር
Anonim
ለ Digispark ATtiny85 የባትሪ ኃይል ፍጆታን መቀነስ
ለ Digispark ATtiny85 የባትሪ ኃይል ፍጆታን መቀነስ
ለ Digispark ATtiny85 የባትሪ ኃይል ፍጆታን መቀነስ
ለ Digispark ATtiny85 የባትሪ ኃይል ፍጆታን መቀነስ

ወይም: አርዱዲኖን በ 2032 ሳንቲም ሴል ለ 2 ዓመታት ማስኬድ።

የዲዲስፓርክ አርዱዲኖ ቦርድዎን ከአርዱዲኖ ፕሮግራም ጋር ከሳጥኑ ውጭ በመጠቀም በ 5 ቮልት 20 mA ያወጣል።

በ 2000 ሚአሰ ባለ 5 ቮልት የኃይል ባንክ ለ 4 ቀናት ብቻ ይሠራል።

ደረጃ 1 - የሊፖ ባትሪ በመጠቀም የአቅርቦትን ቮልቴጅ መቀነስ

የሊፖ ባትሪ በመጠቀም የአቅርቦትን ቮልቴጅ መቀነስ
የሊፖ ባትሪ በመጠቀም የአቅርቦትን ቮልቴጅ መቀነስ

የዲጂስፓርክ ቦርድዎ 13 ሜአ ብቻ ሲሳል የ LiPo ባትሪ ከ 3.7 ቮልት ጋር መጠቀም።

በ 2000 ሚአሰ ባትሪ ለ 6 ቀናት ይሠራል።

ደረጃ 2 የሲፒዩ ሰዓት ቀንስ

በፕሮግራምዎ ውስጥ የዩኤስቢ ግንኙነትን ፣ ከባድ ሂሳብን ወይም ፈጣን ምርጫን የማይጠቀሙ ከሆነ የሰዓት ፍጥነቱን ይቀንሱ። ለምሳሌ ከባድ የምርጫ ኢንፍራሬድ የመቀበያ ቤተ -መጽሐፍት IRMP በ 8 ሜኸዝ በጥሩ ሁኔታ ይሠራል።

በ 1 ሜኸር የእርስዎ Digispark 6 mA ይስባል። በ 2000 ሚአሰ ባትሪ ለ 14 ቀናት ይሠራል።

ደረጃ 3 - በቦርዱ ላይ የኃይል LED እና የኃይል መቆጣጠሪያውን ያስወግዱ

የኃይል LED ን ከዲዲዮው ጋር የሚያገናኘውን የመዳብ ሽቦን በቢላ በመበጠስ ወይም የ 102 ተቃዋሚውን / አስወግድ / አቦዝን።

አሁን የ LiPo ባትሪ እየተጠቀሙ ስለሆነ የቦርዱ የኃይል መቆጣጠሪያ IC ን እንዲሁ ማስወገድ ይችላሉ። በመሸጫ ብረት እና በፒን በመታገዝ መጀመሪያ የውጭውን ፒኖች ያንሱ። ከዚያ ትልቁን አያያዥ ይሽጡ እና ተቆጣጣሪውን ያስወግዱ። ለአነስተኛ ተቆጣጣሪዎች ብዙ መሸጫ ይጠቀሙ እና ሁሉንም 3 ፒኖች በአንድ ላይ ያሞቁ ፣ ከዚያ ያስወግዱት።

በ 1 ሜኸ እና በ 3.8 ቮልት የእርስዎ Digispark አሁን 4.3 mA ን ይስባል። በ 2000 ሚአሰ ባትሪ ለ 19 ቀናት ይሠራል።

ደረጃ 4- የዩኤስቢ ዲ- Pullup Resistor ን ማቋረጥ (152 ምልክት የተደረገበት) ከ 5 ቮልት (ቪሲሲ) እና ከዩኤስቢ V+ ጋር ያገናኙት

የዩኤስቢ ዲ- Pullup Resistor ን ማቋረጥ (152 ምልክት የተደረገበት) ከ 5 ቮልት (ቪሲሲ) እና ከዩኤስቢ V+ ጋር ያገናኙት
የዩኤስቢ ዲ- Pullup Resistor ን ማቋረጥ (152 ምልክት የተደረገበት) ከ 5 ቮልት (ቪሲሲ) እና ከዩኤስቢ V+ ጋር ያገናኙት

ይህ ማሻሻያ ከማይክሮኑክለስ ቡት ጫerው ከሁሉም 1..x ስሪቶች ጋር ተኳሃኝ ነው። አስቀድመው በቦርድዎ ላይ አዲስ 2.x ቡት ጫኝ ካለዎት በስሙ “ንቁPullup” ወደ 2.5 ስሪቶች ማሻሻል አለብዎት። ይህንን ለማድረግ ቀላሉ መንገድ አዲሱን የዲጅስፓርክ ቦርድ ጥቅል መጫን እና የማስነሻ ጫloadውን በሚመከረው (!!! ነባሪው ወይም ጠበኛ አይደለም !!!) ስሪት ማቃጠል ነው።

ወደ ATtiny የሚያመለክተው በተከላካዩ ጎን ላይ የመዳብ ሽቦውን ይሰብሩ። ይህ የዩኤስቢ በይነገጽን ያሰናክላል እና የዲጂስፓርክ ሰሌዳውን በዩኤስቢ በኩል የማዘጋጀት ዕድል። እንደገና ለማንቃት ፣ ግን አሁንም ኃይልን ይቆጥቡ ፣ ተከላካዩን (ምልክት የተደረገበት 152) በቀጥታ በሾትኪ ዲዲዮ ውስጥ በቀላሉ ከሚገኘው ዩኤስቢ ቪ+ ጋር ያገናኙት። የዲዲዮ እና ትክክለኛ ጎኖቹን ቀጣይነት ባለው ሞካሪ በመጠቀም ማግኘት ይቻላል። የዚህ ዲዲዮ አንድ ጎን ከ ATtiny (VCC) እና Digispark 5V ፒን 8 ጋር ተገናኝቷል። ሌላኛው ወገን ከዩኤስቢ V+ጋር ተገናኝቷል። አሁን የዩኤስቢ pullup resistor የሚሠራው Digispark ሰሌዳ ከዩኤስቢ ጋር ከተገናኘ ብቻ ነው። በፕሮግራም ወቅት።

የመጨረሻዎቹ 2 ደረጃዎች እዚህም ተመዝግበዋል።

በ 1 ሜኸ እና 3.8 ቮልት የእርስዎ Digispark አሁን 3 mA ን ይስባል። በ 2000 ሚአሰ ባትሪ ለ 28 ቀናት ይሠራል።

ደረጃ 5 - ከመዘግየት ይልቅ እንቅልፍን ይጠቀሙ ()

ከመዘግየት ይልቅ እንቅልፍን ይጠቀሙ ()
ከመዘግየት ይልቅ እንቅልፍን ይጠቀሙ ()

ከረዥም መዘግየቶች ይልቅ የሲፒዩ እንቅልፍን ኃይል ቆጣቢ መጠቀም ይችላሉ። እንቅልፍ በ 15 ፣ 30 ፣ 60 ፣ 120 ፣ 250 ፣ 500 ሚሊሰከንዶች እና 1 ፣ 2 ፣ 4 ፣ 8 ሰከንዶች ውስጥ ከ 15 ሚሊሰከንዶች እስከ 8 ሰከንዶች ሊቆይ ይችላል።

ከእንቅልፍ የመነሻ ጊዜ 65 ሚሊሰከንዶች ከፋብሪካው ዲጅስፓርክ ፊውዝ ቅንብሮች ጋር በመሆኑ ከ 80 ሚሴ በላይ የሚዘገይ መዘግየቶች ብቻ በእንቅልፍ ሊተኩ ይችላሉ።

በእንቅልፍ ወቅት የእርስዎ Digispark 27 µA ን ይስላል። በ 200 ሚአሰ የአዝራር ሕዋስ 2032 ለ 10 ወር ይተኛል።

ትክክል ለመሆን ፣ Digispark ቢያንስ በየ 8 ሰከንዶች መንቃት አለበት ፣ ቢያንስ ለ 65 ሚሊሰከንዶች መሮጥ እና በ 2 mA የአሁኑ አካባቢ መሳል አለበት። ይህ ወደ 42 µA እና 6 ወር አማካይ የአሁኑን ይመራል። በዚህ ሁኔታ ውስጥ ፕሮግራምዎ ለ 10 ሚሊሰከንዶች (በየ 8 ሰከንዶች) ቢሠራ ምንም ማለት አይቻልም።

እንቅልፍን ለመጠቀም ኮዱ የሚከተለው ነው-

#ያካትቱ #የማይለዋወጥ uint16_t sNumberOfSleeps = 0; ውጫዊ ተለዋዋጭ ያልተፈረመ ረዥም ሚሊስ_ቲመር_ሚሊስ; ባዶነት ማዋቀር () {እንቅልፍ_መቻል (); set_sleep_mode (SLEEP_MODE_PWR_DOWN); // በጣም ጥልቅ የእንቅልፍ ሁኔታ…} ባዶነት loop () {… sleepWithWatchdog (WDTO_250MS ፣ እውነት); // እንቅልፍ ለ 250 ሚሴ… sleepWithWatchdog (WDTO_2S ፣ እውነት); // እንቅልፍ ለ 2 ሰከንድ…}/ * * aWatchdogPrescaler 0 (15 ሚሴ) እስከ 3 (120 ሚሴ) ፣ 4 (250 ሚሰ) እስከ 9 (8000 ሚሰ) */ uint16_t computeSleepMillis (uint8_t aWatchdogPrescaler) {uint16_t tResultMillis = 8000; ለ (uint8_t i = 0; እኔ WD33 ቢት በ WDTCR መዝገብ wdt_enable (aWatchdogPrescaler) ቢት 5 ውስጥ መሆኑን ስለሚይዝ 200 uA // use wdt_enable () አስቀምጣለሁ ፤ WDTCR | = _BV (WDIE) | _BV (WDIF); // Watchdog መቋረጥ ያንቁ + የተቋረጠውን ባንዲራ ዳግም ማስጀመር -> ISR (WDT_vect) sei () ይፈልጋል ፤ // አንቃ እንቅልፍ_cpu ን ያቋርጣል () ፤ // የጠባቂው ማቋረጫ ከእንቅልፋችን ያስነሳናል wdt_disable () ፤ // ምክንያቱም ቀጣዩ መቋረጥ በሌላ መንገድ wdt_enable () WDE / Watchdog System Reset ያንቁ ADCSRA | = ADEN; / * * የሰዓት ቆጣሪ ሰዓት ሊሰናከል ስለሚችል ሚሊስን ማስተካከል በ IDLE ሁነታ ካልተተኛ ብቻ (SM2… 0 ቢት 000 ነው) * / ከሆነ (aAdjustMillis && (MCUCR & ((_BV (SM1) | _BV (SM0))))! = 0) {millis_timer_millis += computeSleepMillis (aWatchdogPrescaler);}} / * * ይህ ማቋረጥ ሲፒዩን ከእንቅልፉ ያስነሳል * / ISR (WDT_vect) {sNumberOfSleeps ++;}

ደረጃ 6 - ፊውሶቹን ይቀይሩ

ከ 27 mA ውስጥ 22 mA በ BOD (BrownOutDetection/undervoltage detection) ይሳባሉ። BOD አካል ጉዳተኛ ሊሆን የሚችለው ፊውሶችን እንደገና በማስተካከል ብቻ ነው ፣ ይህም በአይኤስፒ ፕሮግራም አውጪ ብቻ ነው። ይህንን ስክሪፕት በመጠቀም የአሁኑን ወደ 5.5 µA ዝቅ ማድረግ እና እንዲሁም ከእንቅልፍ የመነሻ ጊዜን ወደ 4 ሚሊሰከንዶች መቀነስ ይችላሉ።

ከቀሩት 5.5 µA ውስጥ 5 በንቁ ጠባቂ ጠባቂ ቆጣሪ ይሳባሉ። ከእንቅልፍ ለመነሳት ውጫዊ ዳግም ማስቀመጫዎችን መጠቀም ከቻሉ ፣ የአሁኑ ፍጆታው በውሂብ ሉህ ውስጥ እንደተገለጸው ወደ 0.3 µA ሊወርድ ይችላል።

ይህንን እሴት መድረስ ካልቻሉ ፣ ምክንያቱ በቪሲሲ እና በ pullup መካከል ያለው የሾትኪ ዳዮድ የአሁኑ በጣም ከፍተኛ ነው። የ 12 MOhm resistor እንዲሁ 0.7 µA በ 3.7 ቮልት እንደሚስብ ያስታውሱ።

ለምሳሌ 9 µ ኤ (2.5 ዓመታት በ 200 ሚአሰ የአዝራር ሴል 2032) አማካይ የአሁኑን ፍጆታ ያስከትላል። እዚህ እንደ 3 ሚሊሰከንዶች በየ 8 ሰከንዶች የውሂብ ሂደት።

ደረጃ 7 - ተጨማሪ መረጃ

የዲጂስፓርክ ቦርድ የአሁኑ ስዕል።

ይህንን መመሪያ በመጠቀም ፕሮጀክት።

የሚመከር: