ዝርዝር ሁኔታ:

ብጁ firmware ወደ BLF A6 የእጅ ባትሪ: 5 ደረጃዎች
ብጁ firmware ወደ BLF A6 የእጅ ባትሪ: 5 ደረጃዎች

ቪዲዮ: ብጁ firmware ወደ BLF A6 የእጅ ባትሪ: 5 ደረጃዎች

ቪዲዮ: ብጁ firmware ወደ BLF A6 የእጅ ባትሪ: 5 ደረጃዎች
ቪዲዮ: BTT SKR2 -Klipper Firmware Install 2024, ሀምሌ
Anonim
ብጁ firmware ወደ BLF A6 የእጅ ባትሪ
ብጁ firmware ወደ BLF A6 የእጅ ባትሪ

በቅርቡ BLF A6 አግኝቻለሁ። በጣም ጥሩ ነው ፣ ግን እኔ ከሁለቱም ነባሪ ሁናቴ ቡድኖች አልወድም ፣ ስለዚህ እኔ የምመርጠውን ብሩህነት ለመጠቀም firmware ን ቀይሬዋለሁ። መረጃው ማግኘት ከባድ ነበር ፣ ስለዚህ የተማርኩትን ሁሉ ለራሴ እና ለሌሎች እሰጣለሁ።

አቅርቦቶች

BLF A6 (ምናልባት ከሌላ አትቲኒ ላይ ከተመሠረቱ የእጅ ባትሪዎች ጋር ይሠራል)

የመንገጫገጫ ሰሌዳ / የማቆያ ቀለበት ለመቀልበስ መንጠቆዎች / ቀጫጭን ቁርጥራጮች / ትናንሽ መቀሶች / የሆነ ነገር

የሚበራበት ኮምፒተር ፣ በተለይም የሊኑክስ ስርጭትን ማካሄድ የተሻለ ነው

የዩኤስቢ ASP ፕሮግራም አውጪ / አርዱinoኖ / የ AVR ፕሮግራምን ሊያከናውን የሚችል ነገር (ይመስላል የዩኤስቢ ASP ፕሮግራም አድራጊ ይመከራል ፣ ግን እኔ አርዱዲኖን እጠቀም ነበር)

SOIC8 ቅንጥብ (ያለሱ ማድረግ ይቻላል ፣ ግን በጣም ታማኝነት ያለው እና በጭራሽ አይመከርም)

(አማራጭ) መገናኘትን ቀላል ለማድረግ የዳቦ ሰሌዳ እና/ወይም ዝላይ ሽቦዎች

ደረጃ 1: የጽኑ ትዕዛዝ ያውርዱ

ለ BLF A6 (እና ሌሎች ብዙ የባትሪ መብራቶች) firmware እዚህ ይገኛል። ደራሲው ስለዚህ ጉዳይ ይናገራል። በማሄድ ማውረድ ይችላሉ-

bzr ቅርንጫፍ lp: ~ መጫወቻ/የእጅ ባትሪ/firmware/blf-a6-final

ተርሚናል ውስጥ። (bzr ን መጫን ሊኖርብዎት ይችላል)

ማሳሰቢያ-ከዚህ ቀደም በዚህ አስተማሪ አርትዕ ውስጥ በምትኩ “bzr ቅርንጫፍ lp: flashlight-firmware” ን እጠቀም ነበር። እኔ ከዚያን ጊዜ ጀምሮ ይህ ጊዜ ያለፈበት ስሪት የተሳሳተ እሴቶችን ለጊዜያዊ capacitor ማውረዱን ፣ አዝራሩ በማይመች ሁኔታ ረዥም እንዲጫን ማድረጉን ተረድቻለሁ። (ለዚህ ክር ምስጋና በ Reddit ላይ)

የሚፈልጉት አቃፊ blf-a6-final/ToyKeeper/blf-a6 ነው። ለማብራት (blf-a6.hex) እና እርስዎ ሊቀይሩት የሚችሉት ሲ ኮድ የያዘ የተጠናከረ.hex ፋይል ይ Itል። (blf-a6.c) የአክሲዮን firmwareን ለማብራት ከፈለጉ ቀጣዩን ደረጃ መዝለል እና blf-a6.hex ን ብቻ መጠቀም ይችላሉ። በዚያ ማከማቻ ውስጥ ያሉ አንዳንድ ሌሎች firmware ምናልባት እንዲሁ ይሰራሉ።

ደረጃ 2: የጽኑዌር ለውጥ

በተመረጠው የጽሑፍ አርታኢ ወይም አይዲኢ ውስጥ blf-a6.c ን ይክፈቱ። በጣም የሚስቡ መስመሮች በ 116 እና 131 መካከል ያሉት የሞዴል ቡድኖች ናቸው። እነሱ እንደዚህ ይመስላሉ -

// የሞዴል ቡድን 1 #NUM_MODES1 7 // የ PWM ደረጃዎችን ለትልቁ ወረዳ (FET ወይም Nx7135) #መግለፅ MODESNx1 0 ፣ 0 ፣ 0 ፣ 7 ፣ 56 ፣ 137 ፣ 255 // ለትንሹ ወረዳ (1x7135) # MODES1x1 2 ፣ 20 ፣ 110 ፣ 255 ፣ 255 ፣ 255 ፣ 0 // የእኔ ናሙና 6 = 0..6 ፣ 7 = 2..11 ፣ 8 = 8..21 (15..32) // የክሮኖ ናሙና ይግለጹ 6 = 5..21 ፣ 7 = 17..32 ፣ 8 = 33..96 (50..78) // ማንከር 2 2 = 21 ፣ 3 = 39 ፣ 4 = 47 ፣… 6? = 68 // ለእያንዳንዱ ሁናቴ የ PWM ፍጥነት #define MODES_PWM1 PHASE ፣ ፈጣን ፣ ፈጣን ፣ ፈጣን ፣ ፈጣን ፣ ፈጣን ፣ ሁኔታ // የሞዴል ቡድን 2 #ጥፋቶች NUM_MODES2 4 #define MODESNx2 0 ፣ 0 ፣ 90 ፣ 255 #ዲፋይን MODES1x2 20 ፣ 230 ፣ 255 ፣ 0 #MODE_PWM2 ፈጣን ፣ ፈጣን ፣ ፈጣን ፣ ገጽታ

ለእያንዳንዱ ቡድን ፣ MODESN ለ FET ጥቅም ላይ የዋለው የ PWM እሴት ነው ፣ እና MODES1 በእያንዳንዱ ሁነታ ለ 7135 ጥቅም ላይ የዋለው የ PWM እሴት ነው። ቁጥሩ ከ 0 እስከ 255 ነው ፣ እና ከብርሃን ብሩህነት ጋር ይዛመዳል። ተጨማሪ መረጃ እዚህ። (ወደ “የሞድ ደንብ” ወደ ታች ይሸብልሉ)) የ PWM ፍጥነት በትክክል ምን እንደሆነ እርግጠኛ አይደለሁም። የሚያውቅ ካለ በአስተያየቶቹ ውስጥ ንገረኝ። FET ከ 7135 የበለጠ ብርሃን ማምረት ይችላል ፣ ነገር ግን 7135 በባትሪው ሕይወት ውስጥ የብርሃን ደረጃውን የበለጠ ወይም ያነሰ ተመሳሳይ ያደርገዋል ፣ FET ባትሪ ሲያልቅ ጨለማ ይጨልማል።

ሁነቶችን ወደ እርስዎ ፍላጎት ለማምረት እዚህ የ PWM እሴቶችን ማስተካከል ይችላሉ። ምናልባት እርስዎ ሁነታዎች ቁጥርን መለወጥ ይችላሉ ፣ ግን እኔ እንደሞከርኩት አልሞከርኩም አራት ሁነታዎች ፣ ይህም በሁለተኛው ቡድን ውስጥ ያለው ቁጥር ይሆናል። የጠቆረ የጨረቃ ብርሃን ሁነታን ፈልጌ ነበር ፣ ስለዚህ የመጀመሪያውን ወደ 0/1 አስቀምጫለሁ ፣ እና የቱርቦ ሞድ ትንሽ ትርጉም የለሽ ሆኖ አግኝቼዋለሁ ፣ ስለዚህ በሰባቱ ሞድ ቡድን ውስጥ ካለው የሞድ ስድስት ጋር እኩል በሆነው በ 137/255 ተተካሁት። አስፈላጊ ከሆነ የቀረውን ኮድ መለወጥ ይችላሉ ፣ ግን አልሞከርኩትም።

የሚፈልጉትን ኮድ ሲያገኙ ፣ ወደ.hex ፋይል ማጠናቀር አለብዎት። ቢያንስ gcc-avr እና avr-libc ያስፈልግዎታል። ችግሮች ካሉዎት በ firmware ንባብ ውስጥ ያሉትን ሌሎች ጥገኞች ይመልከቱ። ማከማቻው የግንባታ ስክሪፕትን ያጠቃልላል ፣ ግን እንዲሠራ ማድረግ አልቻልኩም። ይልቁንም የድሮውን ስሪት በ

bzr ቅርንጫፍ lp: የእጅ ባትሪ-firmware

እና በአዲሱ ላይ የድሮውን የግንባታ ስክሪፕት (ወደ ሥራ እንድገባ) ቀድቷል። ከዚያም ሮጥኩ: -

../../bin/build.sh 13 blf-a6

በ blf-a6 አቃፊ ውስጥ። (ያንን ለማድረግ የተሻለ መንገድ መኖር አለበት) The../../bin/build.sh ስክሪፕቱን ይጠራል ፣ 13 ቱ ለ ATtiny13 የሚገነባ መሆኑን እና blf-a6 ለ BLF A6 መሆኑን ይገልጻል። (ዱህ) እሱ ምን እየሰራ እንደሆነ ያዘዘውን ሊነግርዎት እና ውጤቱን ሊሰጥዎት ይገባል። የእኔ እንዲህ ይመስላል

avr -gcc -Wall -g -Os -mmcu = attiny13 -c -std = gnu99 -fgnu89 -inline -DATTINY = 13 -I.. -I../.. -I../../.. -fshort -enums -o blf -a6.o -c blf -a6.cavr -gcc -Wall -g -Os -mmcu = attiny13 -fgnu89 -inline -o blf -a6.elf blf -a6.o avr -objcopy -set -section-flags =.eeprom = መድብ ፣ ጭነት-መለዋወጥ-ክፍል-lma.eeprom = 0-ለውጥ-ማስጠንቀቂያዎች -O ihex blf-a6.elf blf-a6.hex ፕሮግራም 1022 ባይት (99.8% ሙሉ) ውሂብ 13 ባይት (20.3% ሙሉ)

ትዕዛዞቹ ቀድሞውኑ ለመጠን የተመቻቹ ናቸው ፣ ስለዚህ ከ 100% በላይ ተሞልቷል ካለ አስተያየት ለመስጠት ይሞክሩ

#ሙሉ_ቢስክሌት_STROBE ን ይግለጹ

በመስመር 147 ላይ አነስተኛውን የብስክሌት መንሸራተት ለመጠቀም። አሁንም የማይስማማ ከሆነ ፣ ምናልባት የሆነ ቦታ ላይ ተጨማሪ ኮድ ማስወገድ ይኖርብዎታል። ማጠናቀር ሲጠናቀቅ በአቃፊው ውስጥ blf-a6.hex የሚባል ፋይል መኖር አለበት። ለመብረቅ ዝግጁ የሆነው ይህ የእርስዎ የተጠናቀረ ኮድ ነው።

ደረጃ 3 የእጅ ባትሪውን ይበትኑ

የእጅ ባትሪውን ይበትኑት
የእጅ ባትሪውን ይበትኑት
የባትሪ ብርሃንን ያላቅቁ
የባትሪ ብርሃንን ያላቅቁ
የባትሪ ብርሃንን ያላቅቁ
የባትሪ ብርሃንን ያላቅቁ

አምፖሉን መጨረሻ በተቃራኒ ሰዓት አቅጣጫ ይንቀሉ። እዚህ ሁለት የመገጣጠሚያ መገጣጠሚያዎች አሉ። ከባትሪው መብራት ወደ አምፖሉ ጫፍ የተጠጋው አንፀባራቂውን እና ኤልኢዲውን ይከፍታል ፣ እና ወደ መሃሉ የተጠጋው የመንጃ ሰሌዳውን ይከፍታል። ወደ መሃል እንዲጠጋ ይፈልጋሉ።

በውስጠኛው ውስጥ የባትሪውን ምንጭ እና በውስጡ ሁለት ቀዳዳዎች ያሉት የማቆያ ቀለበት ማየት አለብዎት። ጠመዝማዛዎችዎን / ቀጭን መጭመቂያ / መቀስዎን ወደ ጉድጓዶቹ ውስጥ ያስገቡ እና በተቃራኒ ሰዓት አቅጣጫ ያሽከርክሩዋቸው። እሱ በጣም ጠንካራ ነው ፣ እና ሁለት የተለያዩ ነገሮችን መጠቀም ምናልባት በቂ ጥንካሬ አይሰጥዎትም። እኔ በስዊስ ጦር ቢላዋ ላይ መቀስ ተጠቅሜአለሁ።

አንዴ ቀለበቱን ከለቀቁ በኋላ የአሽከርካሪ ሰሌዳውን ነፃ ያውጡ። አሁንም በሁለት ሽቦዎች ተያይ attachedል ፣ ስለዚህ ይጠንቀቁ። እነሱ አንድ ላይ ተጣምረዋል ፣ ስለዚህ ገመዶቹ እስኪፈቱ ድረስ ቦርዱን በአንድ ወይም በሌላ መንገድ ያሽከርክሩ። በቂ የእግረኛ መንገድ ሲኖርዎት ፣ ሰሌዳውን ይገለብጡ። በላዩ ላይ “TINY13A” ያለው ቺፕ ከፍ እንዲል እና የበለጠ ተደራሽ እንዲሆን እርስዎ ይፈልጋሉ። ከተሳሳተው ወገን ከሆነ ፣ በሌላ መንገድ ይቅለሉት። ፀደዩን ከጎኑ ስር ይክሉት። ይህ ለጊዜው በቦታው እንዲቆይ እና ወደ ቺፕ መድረሱን ቀላል ያደርገዋል። በዚህ ላይ ችግር ካጋጠመዎት ምናልባት ሰሌዳውን ሙሉ በሙሉ ለማስወገድ እንዲችሉ ሌላውን መቀላቀል እና ሁለቱን ገመዶች ማላቀቅ ይችላሉ ፣ ግን አልሞከርኩትም።

ደረጃ 4 ብልጭ ድርግም የሚሉ ሃርድዌሮችን ያገናኙ

ብልጭታ ሃርድዌርን ያገናኙ
ብልጭታ ሃርድዌርን ያገናኙ
ብልጭታ ሃርድዌርን ያገናኙ
ብልጭታ ሃርድዌርን ያገናኙ
ብልጭታ ሃርድዌርን ያገናኙ
ብልጭታ ሃርድዌርን ያገናኙ

አሁን የ ATINy13 ቺፕን እና የፕሮግራም አዘጋጅዎን ለማገናኘት የ SOIC8 ቅንጥቡን ይጠቀማሉ። በእኔ SOIC8 ቅንጥብ ፣ በሁለቱም ጫፎች በግራ በኩል ቀይ ሽቦው ካለኝ ፣ በቅንጥብ መጨረሻ ላይ ወደ እኔ የሚጠጉ የፒኖች ረድፍ በአገናኝ መንገዱ ላይ ወደ እኔ ቅርብ ከሆነው የፒኖች ረድፍ ጋር ይዛመዳል ፣ አገናኙ ወደ ታች ሲመለከት። (የእኔን እጅግ በጣም ጥበባዊ ሥዕላዊ መግለጫ ይመልከቱ) ይህ መመሪያ የዩኤስቢ ASP V2.0 ፕሮግራመር እንዲጠቀሙ ይመክራል። ካደረጉ ፣ እንደሚከተለው ያገናኙት

  • በዩኤስቢ ASP ላይ 5 ለመሰካት ATtiny13 ላይ 1 ን ይሰኩ (ዳግም ያስጀምሩ)
  • በዩኤስቢ ASP (መሬት) ላይ 10 ለመሰካት በ ATtiny13 ላይ 4 ን ይሰኩ
  • በዩኤስቢ ASP (MOSI) ላይ 1 ን ለመሰካት በ ATtiny13 ላይ 5 ን ይሰኩ
  • በዩኤስቢ ASP (MISO) ላይ 9 ን በ ATtiny13 ላይ ለመሰካት 6
  • በዩኤስቢ ASP (SCK) ላይ 7 ን ለመሰካት በ ATtiny13 ላይ 7 ን ይሰኩ
  • በዩኤስቢ ASP (VCC) ላይ 2 ን ለመሰካት ATtiny13 ላይ 8 ን ይሰኩ

እንደ እኔ አርዱዲኖን የሚጠቀሙ ከሆነ ትንሽ ተጨማሪ ዝግጅት ማድረግ አለብዎት። የዚህን መመሪያ ደረጃዎች ዜሮ እና ሁለት ይከተሉ ፦

የ Arduino IDE ን ይክፈቱ እና አርዱዲኖ ከኮምፒዩተርዎ ጋር መገናኘቱን ያረጋግጡ። የፋይል> ምሳሌዎች> 11. ArduinoISP> ArduinoISP ውስጥ የ ISP ንድፉን ያግኙ እና ወደ አርዱinoኖ ይስቀሉት። ከዚያ ATtiny13 ን ከዚህ ጋር ያገናኙት-

  • በአርዱዲኖ ላይ 10 ለመሰካት ATtiny13 ላይ 1 ይሰኩ (ዳግም ያስጀምሩ)
  • በአትዲኒ 13 ላይ በአርዲኖ (መሬት) ላይ 4 ላይ ፒን 4 ይሰኩ
  • በአርቱዲኖ (MOSI) ላይ 11 ላይ ለመለጠፍ በ ATtiny13 ላይ 5 ን ይሰኩ
  • በአርቱዲኖ (MISO) ላይ 12 ላይ ለመለጠፍ በ ATtiny13 ላይ 6 ን ይሰኩ
  • በአርቱዲኖ (ኤስ.ኬ.ኬ) ላይ 13 ላይ ለመለጠፍ በ ATtiny13 ላይ 7 ን ይሰኩ
  • በ ATtiny13 ላይ 8 ን በ Arduino ላይ ወደ VCC / 5V / 3.3V ይሰኩ (ማንኛውም መሥራት አለበት ፣ ግን 5V የበለጠ አስተማማኝ ነው) (ቪሲሲ)

እኔም የሃርድዌር ጥቅል እጫን ነበር ፣ ግን ምናልባት አስፈላጊ ላይሆን ይችላል። ጥርጣሬ ካለዎት ይሞክሩት። ምንም ጉዳት አያስከትልም። ግን የማስነሻ ጫerውን አያቃጥሉት ምክንያቱም ምናልባት የእጅ ባትሪዎን ጡብ ስለሚሠራ።

ደረጃ 5: ያብሩት

ሶፍትዌሩን ለማብራት AVRDUDE ን መጫን ያስፈልግዎታል። በእኔ Arduino ጋር እንደሚሰራ ለመፈተሽ እሮጣለሁ-

avrdude -v -p attiny13 -c stk500v1 -P /dev /ttyUSB0 -b 19200 -n

የሚሰራ ከሆነ ወደ አንድ ቦታ ወደ ባዶ አቃፊ እሄዳለሁ እና አሂድ

avrdude -v -p attiny13 -c stk500v1 -P /dev /ttyUSB0 -b 19200 -u -Uflash: r: flash -dump.hex: i -Ueeprom: r: eeprom -dump.hex: i -Ulfuse: r: lfuse -ዶምፕ.ሄክስ i -Uhfuse: r: hfuse -dump.hex: i

አሁን ያለውን firmware ምትኬ ለማድረግ። እና እሱን ለማንፀባረቅ ፣ ከተለወጠው blf-a6.hex እኔ ካሄድኩበት አቃፊ

avrdude -v -p attiny13 -c stk500v1 -P /dev /ttyUSB0 -b 19200 -u -Uflash: w: blf -a6.hex -Ulfuse: w: 0x75: m -Uhfuse: w: 0xFF: m

በሆነ ምክንያት stk500v1 ን እንደ ፕሮግራም አድራጊ መግለፅ አለብኝ ፣ እና የወደብ እና የባውድ መጠን እስካልገለጽኩ ድረስ አልሰራም። አርዱዲኖን የሚጠቀሙ ከሆነ እና ጥርጣሬ ካለዎት ፣ እዚህ ቅንብሮቹን በመጠቀም የእርስዎን ATtiny13 ን ከ Arduino ለማላቀቅ እና በአርዱዲኖ አይዲኢ ውስጥ ንድፍ ለመጫን ይሞክሩ። እሱ አይሳካም ፣ ግን በኮንሶል መስኮት ውስጥ ምን ትእዛዝ እንደሚጠቀም መናገር አለበት። ባህሪያቱን በ AVRDUDE ትዕዛዝዎ ውስጥ መገልበጥ ይችላሉ።

የዩኤስቢ ASP ፕሮግራም አድራጊን የሚጠቀሙ ከሆነ ይልቁንስ ያሂዱ

avrdude -v -p attiny13 -c usbasp -n

የሚሰራ መሆኑን ለማየት እና

avrdude -v -p attiny13 -c usbasp -u -Uflash: r: flash -dump.hex: i -Ueeprom: r: eeprom -dump.hex: i -Ulfuse: r: lfuse -dump.hex: i -Uhfuse: r: hfuse-dump.hex: i

ምትኬ ለመስራት እና

avrdude -v -p attiny13 -c usbasp -u -Uflash: w: blf -a6.hex -Ulfuse: w: 0x75: m -Uhfuse: w: 0xFF: m

ለማብራት።

ፍንጭ: w: blf-a6.hex የሚያበራውን ፋይል ያመለክታል። የተለየ ከሆነ blf-a6.hex ን በፋይልዎ ስም ይተኩ።

-Ulfuse: w: 0x75: m እና -Uhfuse: w: 0xFF: m ፊውሶች ናቸው። የእርስዎ የተለየ ሊሆን ይችላል ፣ ስለዚህ በባትሪ ብርሃን-firmware/bin/flash-tiny13-fuses.sh ውስጥ ያሉትን እሴቶች በእጥፍ ይፈትሹ።

ከክልል ውጭ የሆነ ስህተት ከሰጠ ፣ ይህ ማለት ምስሉ በቺፕ ላይ ለመገጣጠም በጣም ትልቅ ነው እና አንዳንድ ኮዱን ማስወገድ አለብዎት ማለት ነው። በተሳካ ሁኔታ ብልጭ ድርግም የሚል ከሆነ አንዳንድ የእድገት አሞሌዎችን ማሳየት አለበት ፣ ከዚያ «avrdude ተፈጸመ። አመሰግናለሁ» ይበሉ።

“ልክ ያልሆነ የመሣሪያ ፊርማ” ካለ እና በፕሮግራም አድራጊዎ ላይ ያለው ዝላይ ወደ 3.3 ቪ ከተዋቀረ ወደ 5v ለማዋቀር ይሞክሩ።

ካበሩት በኋላ የእጅ ባትሪዎን እንደገና ይሰብስቡ እና የሚሰራ መሆኑን ይመልከቱ። የእኔ አደረገ, ነገር ግን አገማመት ነው ማጥፋት አንዳንድ እንዲያመዛዝኑ ረዥም ተጫን ያስፈልገናል ሊሆን ስለ ሦስት ሴኮንድ ይልቅ ̶1̶.̶5̶.̶ እኔ መሄዱንም ካወቃችሁ ̶i̶t̶'̶s̶ አንድ ነገር ማድረግ ጋር ̶A̶r̶d̶u̶i̶n̶o̶ ወይም ምክንያቱም በተፈጥሮዬ ውሏል የተሳሳተ ቅንብሮች ̶s̶o̶m̶e̶w̶h̶e̶r̶e̶.̶ ከሆነ ማንኛውም ያለዎት ሐሳብ, ̶ እንመልከት እኔ አውቃለሁ ውስጥ ̶c̶o̶m̶m̶e̶n̶t̶s̶.̶

አርትዕ - አስተካክዬዋለሁ። (ደረጃ 1 ይመልከቱ)

የሚመከር: