Բովանդակություն:
- Պարագաներ
- Քայլ 1: Ներբեռնեք որոնվածը
- Քայլ 2: Փոփոխեք որոնվածը
- Քայլ 3: Ապամոնտաժեք լապտերը
- Քայլ 4: Միացրեք Flashing Hardware- ը
- Քայլ 5: Լրացրեք այն
Video: Customրամեկուսացման հարմարեցված որոնվածը BLF A6 լապտերի վրա `5 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:46
Վերջերս ես ձեռք բերեցի BLF A6: Դա շատ գեղեցիկ է, բայց ինձ դուր չի գալիս ռեժիմների լռելյայն խումբը, այնպես որ ես փոխեցի որոնվածը `նախընտրած պայծառությունները օգտագործելու համար: Տեղեկատվությունը դժվար էր գտնել, ուստի ես իմ և ուրիշների համար այստեղ եմ դնում այն ամենը, ինչ սովորել եմ:
Պարագաներ
BLF A6 (հավանաբար կաշխատի ATtiny- ի վրա հիմնված այլ լապտերների հետ)
Պինցետներ / բարակ տափակաբերան աքցան / փոքր մկրատ / ինչ -որ բան ՝ վարորդի տախտակի ամրացման օղակը ետ շրջելու համար
Համակարգիչը լուսավորելու համար, նախընտրելի է Linux բաշխում
USB ASP ծրագրավորող / Arduino / մի բան, որը կարող է կատարել AVR ծրագրավորում (ըստ երևույթին, USB ASP ծրագրավորողը խորհուրդ է տրվում, բայց ես օգտագործել եմ Arduino)
SOIC8 հոլովակ (հնարավոր է անել առանց դրա, բայց դա շատ անհեթեթ է և ամենևին խորհուրդ չի տրվում)
(ըստ ցանկության) Միացվող տախտակի և (կամ) ցատկերի լարեր `միացումն ավելի դյուրին դարձնելու համար
Քայլ 1: Ներբեռնեք որոնվածը
BLF A6- ի (և շատ այլ լապտերների) որոնվածը հասանելի է այստեղ: Հեղինակը դրա մասին խոսում է այստեղ: Դուք կարող եք ներբեռնել այն գործարկելով ՝
bzr մասնաճյուղ lp: ~ խաղալիք/լապտեր-որոնված/blf-a6-final
տերմինալում: (գուցե հարկ լինի տեղադրել bzr)
Նշում. Այս հրահանգի նախորդ խմբագրման փոխարեն ես օգտագործել եմ «bzr branch lp: flashlight-firmware»: Այդ ժամանակվանից ես իմացա, որ սա ներբեռնում է հնացած տարբերակ `ժամանակին անջատված կոնդենսատորի համար սխալ արժեքներով, ինչը կոճակն անհարմար երկար սեղմում է: (Reddit- ի այս թեմայի շնորհիվ)
Ձեր ուզած թղթապանակը blf-a6-final/ToyKeeper/blf-a6 է: Այն պարունակում է կազմված. Hex ֆայլ, որը պատրաստ է բռնկման (blf-a6.hex) և C կոդ, որը կարող եք փոփոխել: (blf-a6.c) Եթե ցանկանում եք լուսավորել ֆիրմայի որոնվածը, կարող եք բաց թողնել հաջորդ քայլը և պարզապես օգտագործել blf-a6.hex: Այդ պահեստի մյուս ծրագրակազմը, հավանաբար, նույնպես կաշխատի:
Քայլ 2: Փոփոխեք որոնվածը
Բացեք blf-a6.c- ը ձեր նախընտրած տեքստային խմբագրիչում կամ IDE- ում: Ամենահետաքրքիր տողերն են ռեժիմի խմբերը 116 -րդ և 131 -րդ տողերի միջև: Նրանք ունեն այս տեսքը.
// Ռեժիմ խումբ 1 #սահմանել NUM_MODES1 7 // PWM մակարդակները մեծ միացման համար (FET կամ Nx7135) #սահմանել MODESNx1 0, 0, 0, 7, 56, 137, 255 // PWM մակարդակները փոքր միացման համար (1x7135) # սահմանել MODES1x1 2, 20, 110, 255, 255, 255, 0 // Իմ նմուշը ՝ 6 = 0..6, 7 = 2..11, 8 = 8..21 (15..32) // Krono նմուշ ՝ 6 = 5..21, 7 = 17..32, 8 = 33..96 (50..78) // Տնօրեն 2: 2 = 21, 3 = 39, 4 = 47,… 6? = 68 // PWM արագությունը յուրաքանչյուր ռեժիմի համար #սահմանել MODES_PWM1 PHASE, FAST, FAST, FAST, FAST, FAST, PHASE // ռեժիմի խումբ 2 #սահմանել NUM_MODES2 4 #սահմանել MODESNx2 0, 0, 90, 255 #սահմանել MODES1x2 20, 230, 255, 0 #սահմանեք MODES_PWM2 FAST, FAST, FAST, PHASE
Յուրաքանչյուր խմբի համար MODESN- ը FET- ի համար օգտագործվող PWM արժեքն է, իսկ MODES1- ը ՝ յուրաքանչյուր ռեժիմում 7135 -ի համար օգտագործվող PWM արժեքը: Թիվը 0 -ից 255 -ի սահմաններում է և համապատասխանում է լույսի պայծառությանը: Լրացուցիչ տեղեկություններ այստեղ: (ոլորեք դեպի «Ռեժիմի կարգավորում.»): Ես վստահ չեմ, թե որն է ճշգրիտ PWM արագությունը: Եթե ինչ -որ մեկը գիտի, ասեք ինձ մեկնաբանություններում: FET- ը կարող է ավելի շատ լույս արտադրել, քան 7135 -ը, բայց 7135 -ը լույսի մակարդակը քիչ թե շատ նույնն է պահում մարտկոցի կյանքի ընթացքում, մինչդեռ FET- ը մթնում է, քանի որ մարտկոցը սպառվում է:
Այստեղ դուք կարող եք հարմարեցնել PWM- ի արժեքները ՝ ձեր նախընտրած ռեժիմներն արտադրելու համար: Դուք, հավանաբար, կարող եք նաև փոխել ռեժիմների քանակը, բայց ես դա չեմ փորձել, քանի որ ուզում էի չորս ռեժիմ, որը երկրորդ խմբի թիվն է: Ես ուզում էի ավելի մուգ լուսնային ռեժիմ, ուստի առաջինը սահմանեցի 0/1, և տուրբո ռեժիմը մի փոքր անիմաստ եմ համարում, ուստի այն փոխարինեցի 137/255 -ով ՝ յոթ ռեժիմի վեց ռեժիմի համարժեքով: Հավանաբար, անհրաժեշտության դեպքում կարող եք փոփոխել մնացած ծածկագիրը, բայց ես չեմ փորձել:
Երբ դուք ստանում եք ձեր ուզած կոդը, դուք պետք է այն կազմեք. Hex ֆայլում: Առնվազն ձեզ հարկավոր են gcc-avr և avr-libc: Եթե խնդիրներ ունեք, նայեք որոնվածի ընթերցման մյուս կախվածություններին: Պահեստը ներառում է կառուցման սցենար, բայց ես չկարողացա այն գործի դնել: Փոխարենը, ես ներբեռնեցի հին տարբերակը հետ
bzr մասնաճյուղ lp: լապտեր-որոնվածը
և պատճենեց հին կառուցման սցենարը (որ ես կարողանամ աշխատել) նորի վրա: Հետո վազեցի.
../../bin/build.sh 13 blf-a6
blf-a6 թղթապանակում: (դա պետք է լինի ավելի լավ միջոց).. (duh) Այն պետք է ասի ձեզ, թե ինչ հրամաններ է այն աշխատում և ձեզ տալիս է ելք: Իմն ունի այս տեսքը.
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.) Տվյալներ ՝ 13 բայթ (20,3% լրիվ)
Հրամանները արդեն օպտիմիզացված են չափի համար, այնպես որ, եթե այն ասում է, որ այն 100% -ից ավել է, փորձեք մեկնաբանել
#սահմանեք FULL_BIKING_STROBE
147 -րդ տողում `ավելի փոքր նվազագույն հեծանվավազքի ստրոբ օգտագործելու համար: Եթե այն դեռ չի տեղավորվում, հավանաբար ինչ -որ տեղ պետք է ավելի շատ կոդ հեռացնեք: Կոմպիլյացիայի ավարտից հետո պանակում պետք է լինի blf-a6.hex անունով ֆայլ: Սա ձեր կազմած ծածկագիրն է, որը պատրաստ է բռնկման:
Քայլ 3: Ապամոնտաժեք լապտերը
Պտուտակեք լամպի ծայրը ժամացույցի սլաքի հակառակ ուղղությամբ: Այստեղ կա երկու պտուտակային հոդ: Լապտերի լամպի ծայրին ավելի մոտ գտնվողը բացում է ռեֆլեկտորը և LED- ը, իսկ կեսին ավելի մոտը ՝ վարորդի տախտակը: Դուք ցանկանում եք, որ մեկը ավելի մոտ լինի կեսին:
Ներսում դուք պետք է տեսնեք մարտկոցի գարունը և ամրացնող օղակը, որի մեջ երկու անցք կա: Տեղադրեք ձեր պինցետը / բարակ տափակաբերան աքցանը / մկրատը անցքերի մեջ և պտտեք դրանք ժամացույցի սլաքի հակառակ ուղղությամբ: Այն բավականին թունդ է, և երկու առանձին օբյեկտների օգտագործումը, հավանաբար, ձեզ բավարար լծակներ չի տա: Մկրատը օգտագործեցի շվեյցարական բանակի դանակի վրա:
Մատանին հանելուց հետո ազատեք վարորդի տախտակը: Այն դեռ ամրացված է երկու լարերով, այնպես որ զգույշ եղեք: Նրանք ոլորված են միասին, այնպես որ պտտեք տախտակը այս կամ այն կերպ, մինչև լարերը թուլանան: Երբ բավականաչափ ազատություն ունեք, շրջեք տախտակը: Դուք դա ցանկանում եք այնպես, որ դրա վրա «TINY13A» մակագրությամբ չիպը ավելի բարձր և հասանելի լինի: Եթե այն սխալ կողմում է, շրջեք այն այլ ճանապարհով: Գարունը կողքի տակ կպցրու: Սա ժամանակավորապես կպահի այն տեղում և ավելի հեշտ կդարձնի չիպին հասնելը: Եթե դրա հետ կապված խնդիրներ ունեք, հավանաբար կարող եք պտուտակն այլ պտուտակն անջատել և ապամոնտաժել մյուս լարերը մյուս կողմից, որպեսզի կարողանաք ամբողջությամբ հեռացնել տախտակը, բայց ես դա չեմ փորձել:
Քայլ 4: Միացրեք Flashing Hardware- ը
Այժմ դուք օգտագործում եք SOIC8 տեսահոլովակը ATtiny13 չիպը և ձեր ծրագրավորողը միացնելու համար: Իմ SOIC8 հոլովակով, եթե ես երկու ծայրերի ձախ կողմում ունեմ կարմիր մետաղալար, ապա սեղմակի ծայրին ինձ ավելի մոտ գտնվող կապում շարանը համապատասխանում է միակցիչի ծայրին ինձ ավելի մոտ գտնվող կապանների շարքին, երբ միակցիչը թեքված է ներքև: (տես իմ գերարվեստի գծապատկերը) Այս ուղեցույցը խորհուրդ է տալիս օգտագործել USB ASP V2.0 ծրագրավորող: Եթե ունեք, միացրեք այն այսպես.
- Կցեք 1 -ը ATtiny13- ին, 5 -ը ՝ USB ASP- ին (վերականգնում)
- 4 -րդ կապը ATtiny13- ին, USB ASP- ի 10 -ին ամրացնելու համար (հիմք)
- Կցեք 5 -ը ATtiny13- ին 1 -ին USB ASP- ին (MOSI)
- 6 -րդ կապ ATtiny13- ին, 9 -ը USB ASP- ին (MISO)
- 7 -րդ կապը ATtiny13- ին USB 7 ASP- ի (SCK) միացման համար
- 8 -րդ կապը ATtiny13- ին, 2 -րդը USB ASP- ի (VCC) վրա
Եթե դուք, ինչպես և դուք, օգտագործում եք Arduino- ն, ապա պետք է մի փոքր ավելի շատ պատրաստվեք: Հետևեք այս ուղեցույցի զրո և երկրորդ քայլերին.
Բացեք Arduino IDE- ն և համոզվեք, որ ձեր Arduino- ն միացված է ձեր համակարգչին: Գտեք մատակարարի էսքիզը Ֆայլ> Օրինակներ> 11. ArduinoISP> ArduinoISP և վերբեռնեք այն ձեր Arduino- ում: Այնուհետև ATtiny13- ը միացրեք դրան հետևյալ կերպ.
- Կցեք 1 -ը ATtiny13- ին և ամրացրեք 10 -ը Arduino- ում (վերականգնում)
- 4 կապում ATtiny13- ին GND- ին Arduino- ում (գետնին)
- Կցեք 5 -ը ATtiny13- ին, 11 -ը Arduino- ին (MOSI)
- 6 -րդ կապը ATtiny13- ի վրա, 12 -ը Arduino- ի վրա (MISO)
- 7 -րդ կապ ATtiny13- ին, 13 -ին Arduino- ին (SCK)
- 8 -րդ կապ ATtiny13- ից VCC / 5V / 3.3V Arduino- ում (ցանկացածը պետք է աշխատի, բայց 5V- ն ավելի հուսալի է) (VCC)
Ես տեղադրեցի նաև ապարատային փաթեթը, բայց հավանաբար դա անհրաժեշտ չէր: Եթե կասկածում եք, փորձեք այն: Դա ոչ մի վնաս չի հասցնի: Բայց մի այրեք բեռնախցիկը, քանի որ այն, հավանաբար, կբարձրացնի ձեր լապտերը:
Քայլ 5: Լրացրեք այն
Firmրագիրը որոնելու համար անհրաժեշտ է տեղադրել 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 -dump.hex: i -Uhfuse: r: hfuse -dump.hex: i
Առկա որոնվածը պահուստավորելու համար: Եվ այն բռնկելու համար փոփոխված blf-a6- ով թղթապանակից ես վազում եմ.
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- ը որպես ծրագրավորող, և այն չաշխատեց, եթե չնշեցի պորտի և բաուդ արագությունը: Եթե դուք օգտագործում եք Arduino և կասկածում եք, փորձեք անջատել ձեր ATtiny13- ը Arduino- ից և վերբեռնել ուրվագիծը Arduino IDE- ում ՝ օգտագործելով այստեղի կարգավորումները: Այն ձախողվելու է, բայց այն պետք է ասի, թե ինչ հրաման է այն օգտագործում վահանակի պատուհանում: Դուք կարող եք պատճենել հատկանիշները ձեր AVRDUDE հրամանի մեջ:
Եթե դուք օգտագործում եք USB 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
Flashրամեկուսացնելու համար:
-Uflash: w: blf-a6.hex- ը վերաբերում է այն ֆայլին, որը փայլում է: Փոխարինեք blf-a6.hex- ը ձեր ֆայլի անունով, եթե այն այլ է:
-Ulfuse: w: 0x75: m և -Uhfuse: w: 0xFF: m են ապահովիչները: Ձերը կարող է տարբեր լինել, այնպես որ կրկնակի ստուգեք լապտեր-որոնվածի/bin/flash-tiny13-fuses.sh- ի արժեքները:
Եթե դա թույլ է տալիս տիրույթից դուրս սխալ, նշանակում է, որ պատկերը չափազանց մեծ է չիպի վրա տեղավորվելու համար, և դուք պետք է հեռացնեք ծածկագրի մի մասը: Եթե այն հաջողությամբ թարթում է, այն պետք է ցուցադրի առաջընթացի մի քանի սանդղակներ, այնուհետև ասի «Ավարտված է: Շնորհակալություն»:
Եթե այնտեղ գրված է «սարքի անվավեր ստորագրություն», և ձեր ծրագրավորողի jumper- ը սահմանվել է 3.3 վ, փորձեք այն սահմանել 5 վ:
Այն վառելուց հետո նորից հավաքեք ձեր լապտերը և տեսեք, արդյոք այն աշխատում է: Իմը արել, սակայն ժամկետները համար որոշ ̶r̶e̶a̶s̶o̶n̶.̶ է երկար մամլիչներ պետք է լինի մոտ երեք վայրկյան փոխարեն ̶1̶.̶5̶.̶ Ես չգիտեմ, եթե ̶i̶t̶'̶s̶ ինչ-որ բան պետք է անել, Arduino, կամ որովհետեւ ̶I̶'̶v̶e̶ օգտագործվում որ սխալ կարգավորումները ̶s̶o̶m̶e̶w̶h̶e̶r̶e̶.̶, եթե դուք ունեք որեւէ գաղափար, ̶ թող ինձ տեղյակ չէ ̶c̶o̶m̶m̶e̶n̶t̶s̶.̶
Խմբագրել. Ես ուղղեցի: (տես քայլ 1)
Խորհուրդ ենք տալիս:
Minion Cubecraft Toy (Լապտերի խաղալիք) ՝ 4 քայլ
Minion Cubecraft Toy (Լապտերի խաղալիք). Երկար ժամանակ ես ցանկանում էի ջահ պատրաստել, որպեսզի այն օգտագործեմ մթության մեջ, բայց գաղափարը, որ ունեմ միայն գլանաձև ձևի առարկա, պարզապես անջատիչ անջատիչով, դիմադրեց ինձ, որ այն չպատրաստեմ: Դա չափազանց հիմնական էր: Հետո մի օր եղբայրս մի փոքր PCB բերեց խելքով
Լապտերի արդիականացում ՝ 5 քայլ
Լապտերի արդիականացում. Այս հրահանգում դուք կսովորեք, թե ինչպես բարձրացնել ստանդարտ չինական լապտերը մինչև Li-ion 18650 և միկրո USB լիցքավորիչ: Li-ion մարտկոց. Ես վերցրել եմ հին նոութբուքի մարտկոցից Li-ion լիցքավորիչ `5 հատ
Օգտագործեք Homie որոնվածը ՝ Sonoff անջատիչ մոդուլը քշելու համար (ESP8266 հիման վրա) ՝ 5 քայլ (նկարներով)
Օգտագործեք Homie որոնվածը ՝ Sonoff անջատիչ մոդուլը քշելու համար (ESP8266 հիման վրա). Վերջինս կենտրոնանում էր D1 Mini տախտակների շուրջ հիմնական մոնիտորինգի վրա (DHT22, DS18B20, լույս): Այս անգամ ես կցանկանայի ցույց տալ
Ինչպես թարմացնել որոնվածը էժան USBasp-Clone- ի վրա. 9 քայլ
Ինչպես թարմացնել որոնվածը էժան USBasp-Clone- ի վրա. Սա փոքրիկ ուղեցույց է, որը ցույց կտա նոր որոնվածը իմ նման USBasp-clone- ի վրա: Այս ուղեցույցը հատուկ գրված է նկարներում երևացող USBasp-clone- ի համար, սակայն այն դեռ պետք է աշխատի ուրիշների հետ: Էլեկտրագծերը ցուցադրվում են 5 -րդ քայլին, կա TL; DR- ը
Ինչպես միացնել MicroPython- ի որոնվածը ESP8266- ի վրա հիմնված Sonoff խելացի անջատիչի վրա. 3 քայլ (նկարներով)
Ինչպե՞ս միացնել MicroPython- ի որոնվածը ESP8266- ի վրա հիմնված Sonoff խելացի անջատիչի վրա. Այդ գծից ամենաճկուն և էժան սարքերից են Sonoff Basic- ը և Sonoff Dual- ը: Սրանք Wi-Fi- ով միացված անջատիչներ են ՝ հիմնված հիանալի չիպի ՝ ESP8266- ի վրա: Մինչդեռ