
Բովանդակություն:
2025 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2025-01-23 14:48

Ես արեցի այս բարձրաչափը, որպեսզի օդաչուն իմանա, որ նրանք գտնվում են ԱՄՆ -ում RC ինքնաթիռների 400 ոտնաչափ սահմանի տակ: Իմ ընկերը մտահոգված էր, քանի որ նա չէր կարող հստակ ասել, որ ինքը միշտ գտնվում էր 400 ոտնաչափի տակ, և ցանկանում էր ունենալ լրացուցիչ երաշխիք, որ կտա հեռաչափության տվյալներով սենսորը: Այո, դուք կարող եք ձեռք բերել սենսոր Spektrum- ից, բայց կարող եք կառուցել այս նախագիծը 20 դոլարից պակաս գնով ՝ բեկումնային տախտակներով (որոնք արդեն իսկ ուռճացված են գներով): Եթե արդեն ունեք J-link ծրագրավորող, կարող եք այն կառուցել սովորական տախտակի վրա ՝ մի քանի դոլարով: Էլ չասած, երբ հասկանում եք Xbus արձանագրությունը, կարող եք կատարել ցանկացած այլ օժանդակ սենսոր: Բայց այս նախագծում ես պարզապես բարձրաչափ եմ ծածկելու…
Մասերի ցուցակ.
-
Այս նախագծի համար ես օգտագործեցի Seeeduino XIAO միկրոկառավարիչ տախտակ, քանի որ այն փոքր է, օգտագործում է M0 պրոցեսոր, որն այս նախագծի համար ունի շատ հզորություն, և I2C և SPI- ն պատրաստ է տուփից դուրս գալու համար, և օգտագործում է 3.3 վ տրամաբանություն, այնպես որ մակարդակի փոփոխություն չկա: պահանջվում է:
https://www.seeedstudio.com/Seeeduino-XIAO-Arduino…
-
Օդի ճնշումը զգալու համար ես Adafruit- ից գնել եմ BMP388 ճեղքման տախտակ: Տախտակն ունի I2C և SPI կոտրված, և կարող է աշխատել 3.3v կամ 5v տրամաբանությամբ:
https://www.adafruit.com/product/3966
- Protoboard սխեման միացնելու համար
- Sոդման/զոդման երկաթ
- Արական/իգական կապի վերնագրեր, որպեսզի ես հեշտությամբ անջատեմ սենսորը/միկրոկոնտրոլերը:
- Փոքր կոճակ: Ես օգտագործում եմ սա սկզբնական բարձրությունը վերականգնելու համար:
- 10k դիմադրություն կոճակը քաշելու համար:
- JST-XH 4 փին իգական միակցիչ ՝ Spektrum ստացողի հեռաչափության պորտին միանալու համար
-
SEGGER J-Link EDU ծրագրավորող ՝ M0- ն առանց բեռնիչ բեռնաթափելու համար:
https://www.adafruit.com/product/3571
-
Adafruit SWD 10-պինտ բեկումնային տախտակ
www.adafruit.com/product/2743
Պարագաներ
- Ես նաև 3D- ով տպեցի փոքր պարիսպ իմ բարձրաչափի համար, բայց դրա կարիքը չկա:
-
Օսլիլոսկոպ- Եթե դուք չունեք մեկը, ես խորհուրդ եմ տալիս այս մեկը.
https://store.digilentinc.com/analog-discovery-2-1…
Քայլ 1: Իմացեք Spektrum հեռաչափության արձանագրությունը



Սա ինձ համար հիմնականում արեց Ռեյմոնդ Դոմինգոն: Նրանք արդեն սարքել էին Spektrum- ի հետ համատեղելի բարձրաչափ, այնպես որ այդ աղբյուրի կոդին հետևելը իսկապես օգնեց: Spektrum հեռաչափության տվյալների թերթիկը լրացրեց մնացած բացերը: Ընդունիչից տվյալների մակարդակները չափելը ցույց տվեց, որ ինձ անհրաժեշտ կլինի 3.3 վ տրամաբանություն:
Ստացողը ուղարկում է սարքի հասցեն, այնուհետև ակնկալում է 16 բայթ պատասխան: Տվյալների թերթիկը ցույց է տալիս բոլոր տարբեր սենսորների կառուցվածքները: Նույնիսկ եթե կառուցվածքը 16 բայթ չէ, ստացողը ամեն անգամ 16 բայթ հետ է ակնկալում:
Spektrum Datasheet:
www.spektrumrc.com/ProdInfo/Files/SPM_Tele…
Ռայմոնդ Դոմինգոյի նախագիծը.
www.aerobtec.com/download/altisSpektrumInte…
Քայլ 2: Ընտրեք Սարքաշար



Ես օգտագործել եմ Adafruit- ից BMP388 ճեղքման տախտակը ճնշման զգայացման համար: Բեկումն ապահովում է I2C և SPI ճեղքումներ և աշխատում է 3.3v կամ 5v տրամաբանությամբ: Adafruit- ը միշտ զարմանալի աշխատանք է կատարում իր ջարդման տախտակների հետ, այնպես որ ես այն գնել եմ: Ես դրա փոխարեն օգտագործեցի DFRobot Gravity BMP388 տախտակ, քանի որ իմ Adafruit տախտակն արդեն օգտագործվում էր:
Հաշվի առնելով, որ ընդունող I2C սարքը օգտագործում է 3.3v տրամաբանություն, ինձ անհրաժեշտ էր 3.3v միկրոկոնտրոլեր, և ես ուզում էի, որ այն փոքր լիներ: Ես պատրաստվում էի օգտագործել Adafruit Trinket M0- ը, բայց դրանք համեմատաբար թանկ են, և շատ քորոցներ չունեն: Հետո ես գտա Seeeduino XIAO տախտակը: Դա M0 տախտակ է ՝ I2C- ով և SPI- ով, որոնք պատրաստ են գործարկման, USB-C միակցիչով: Բացի այդ, դա իսկապես շատ փոքր է: Ընդհանուր առմամբ, ես իսկապես սիրում եմ այս խորհուրդը (չնայած դանդաղ գործարկման բյուրեղը ինձ ընդմիշտ տևեց պարզելու համար):
Spektrum- ն ընդունիչի վրա օգտագործում է JST-XH չափի 4-փին արական միակցիչ «Xbus» պորտի համար, որին մենք կպչենք: Ես բարձրաչափի վրա օգտագործեցի 4-պինյա JST-XH կանացի խրոց, և այն կատարյալ աշխատեց:
Քայլ 3: Գրեք ծրագրակազմ
Ես օգտագործել եմ Arduino IDE- ն ՝ ամբողջ ծածկագիրը գրելու համար: Ես պատճենեցի Spektrum հեռաչափության արձանագրությունը դրանց տվյալների թերթից և այն ավելացրեցի իմ Arduino գրադարանում: Քանի որ Adafruit- ն միշտ ունի գեղեցիկ գրադարաններ իրենց ճեղքման համար, ես օգտագործեցի նրանց BMP3XX գրադարանը BMP388 սենսորի համար:
Իմ դիզայնի հիմնական արդյունքները հետևյալն են.
- Կարգավորեք I2C- ն, որ իրեն պահի որպես հաճախորդի սարք և արձագանքի Spektrum բարձրաչափի հասցեին (0x12):
- Կարդացեք BMP388 բարոմետրը SPI- ի միջոցով:
- Պահպանեք բարձրության տվյալները երկու տարբեր բուֆերներում, որպեսզի ստացողից I2C- ի հարցումը չփչացնի տվյալները և տվյալների բեռնման ժամանակ փոխարինեք երկու բուֆերների միջև: Սա համոզված է, որ ստացողին ուղարկված տվյալները միշտ ամբողջական են:
- Օգտագործում է բարձրությունը չափող զրոյական կոճակ:
Լրացուցիչ մանրամասների և ծածկագրերի վերլուծության համար դիտեք տեսանյութը:
Քայլ 4: Մալուխը միացրեք




Ես օգտագործում էի նախատախտակ, բայց եթե ցանկանում եք ժամանակ հատկացնել ՝ մշակելու համար հարմարեցված աղացած տախտակ, կարող եք միացումն ավելի մաքուր դարձնել:
JST-XH միակցիչը միացրեցի XIAO- ի I2C կապումներին: Քանի որ ստացողը 5 վոլտ է թողարկում հեռաչափության ավտոբուսին, ավտոբուսից դրականը գնաց դեպի XIAO- ի VCC պին: Այդ կերպ, 3.3v կարգավորիչը օգտագործվում է BMP388 սենսորը սնուցելու համար:
Քայլ 5: Կազմեք առանց բեռնախցիկի


-
Գտեք ձեր boards.txt ֆայլը (ինչ տախտակի համար էլ օգտագործեք):
Իմ դեպքում, այն գտնվում էր այստեղ ՝ C: / Users / AppData / Local / Arduino15 / packages / Seeeduino / hardware / samd / 1.7.7 / boards.txt
-
Պատճենեք ձեր տախտակը և վերանվանեք առաջին բանալին ՝ առանց բեռնախցիկի տարբերակ նշելու համար: Ես պարզապես ավելացրել եմ _nbl սկզբնական անվանմանը:
- Հին ՝ seeed_XIAO_m0
- Նոր ՝ seeed_XIAO_m0_nbl
-
Փոխել.name արժեքը.
- Հին ՝ seeed_XIAO_m0_nbl.name = Տեսածուինո XIAO
- Նոր ՝ seeed_XIAO_m0_nbl.name = Seeeduino XIAO առանց բեռնիչ
-
Փոփոխեք կապող սարքը `առանց bootloader- ի բռնկման` փոխելով շինարարի ld սցենարը.
- Հին: seeed_XIAO_m0_nbl.build.ldscript = linker_scripts/gcc/flash_with_bootloader.ld
- Նոր ՝ seeed_XIAO_m0_nbl.build.ldscript = linker_scripts/gcc/flash_with _bootloader.ld
- Վերագործարկեք Arduino IDE- ն:
- Տախտակների ընտրացանկից ընտրեք նոր «Seeeduino XIAO No Bootloader» տախտակը:
- Ընտրեք «Արտահանել կազմված երկուական»
- Կազմվելուց հետո.bin ֆայլը կլինի ձեր Arduino նախագծի պանակում:
Քայլ 6. Flash MCU J-Link- ով



Adafruit- ն ունի ֆանտաստիկ ուղեցույց M0/M4 սարքի վրա բեռնախցիկ ծրագրավորելու վերաբերյալ: Մեր դեպքում մենք ցանկանում ենք ազատվել bootloader- ից, բայց այն աշխատում է նույն կերպ:
learn.adafruit.com/how-to-program-samd-boo…
Դա անելուց հետո դուք չեք կարողանա վերբեռնել ծածկագիրը USB- ի միջոցով: Կարող եք հետևել վերը նշված ուղեցույցին ՝ բեռնախցիկը նորից սարքի վրա նորից տեղադրելու համար ՝ USB- ի միջոցով նորից վերբեռնելու կոդ, ինչպես կարող էիք գործարանից:
Adafruit ուղեցույցը շատ մանրակրկիտ է, բայց դրանք հիմնական քայլերն են.
-
Oldոդման jumper լարերը դեպի հետեւի XIAO խորհրդի.
- Adafruit- ի ուղեցույցը չի ասում, որ 2x5 ճեղքման տախտակի վրա RST- ի քորոցը պետք է միացված լինի Adafruit- ի տախտակների վերակայման քորոցին: Բայց XIAO- ի համար ինձ անհրաժեշտ էր միանալ տախտակի հետևի բոլոր չորս բարձիկներին:
- VREF կապը պետք է միացված լինի XIAO 3.3v քորոցին: Սա վրիպազերծողին ասում է, որ սարքի տրամաբանությունը 3.3 վ է: Առանց դրա, եթե սխալ տարբերակ եք ընտրում, կարող եք վնասել միկրոկոնտրոլերը:
- Միացրեք jumper լարերը J-Link- ին:
- Միացրեք XIAO տախտակին USB մալուխով:
- Բացեք Atmel Studio- ն:
- Ընտրեք Գործիքներ Սարքի ծրագրավորում
- Ընտրեք ձեր M0 տախտակը: Այս դեպքում `ATSAMD21G18A
- Ընտրեք SWD:
- Կարդացեք կազմաձևը թիրախից:
- Եթե օգտվում եք EDU J-Link- ից, համաձայնեք օգտագործման պայմաններին (եթե հետևում եք օգտագործման պայմաններին):
- Ստուգեք, որ լարման ընթերցումը ճիշտ է վերին աջ անկյունում: Եթե դա 3.3 վ չէ, կարող եք կոտրել ձեր տախտակը:
- Մաքրել boot protection ապահովիչը (տեղադրեք bootloader- ի չափը 0 բայթ), ապա ընտրեք ծրագիրը:
- Հիշողությունների բաժնում ընտրեք ձեր կազմած.bin կամ.hex ֆայլը և ընտրեք ծրագիրը:
Խնդիրների նկարահանում.
Սարքի կազմաձևը կարդալիս, եթե լարման միջակայքից սխալ եք ստանում, ապա համոզվեք, որ MCU- ն միացված է հոսանքին և J-Link VREF կապը միացված է 3.3 վոլտ լարման:
Քայլ 7: Վերակազմավորեք առանց արտաքին բյուրեղի

XIAO- ի տախտակն ունի արտաքին բյուրեղ, որի մեկնարկը երկար ժամանակ է պահանջում: Spektrum ստացողը սարքի հայտնագործություն է կատարում հեռաչափի ավտոբուսում 350 միլիվայրկյան հզորացումից հետո, ուստի մենք պետք է ասենք, որ կոմպիլյատորը փոխարենը օգտագործի ներքին տատանողական սարքը, որը գործարկումը կդարձնի գրեթե ակնթարթային:
- Գտեք boards.txt ֆայլը, որը դուք ավելի վաղ փոփոխել եք (այո, ես կարող էի ձեզ պահել այս քայլը ավելի վաղ, բայց սա ուսուցման գործընթաց էր ինձ համար)
- Ավելացրեք «-DCRYSTALLESS» ՝ sawed_XIAO_m0_nbl.build.extra_flags տողին: Սա կոմպիլյատորին կասի օգտագործել ներքին տատանումները:
- Վերակազմակերպեք ծածկագիրը:
- Կրկին բռնկեք MCU- ն:
- Ստուգեք, որ գործարկման ժամանակը բավականաչափ արագ է ՝ օգտագործելով օսլիլոսկոպ:
Ինչպես տեսնում եք նկարից, դեղին 1 ալիքը էլեկտրասնուցումն է: Cիրանագույն ալիքը 2 -ը միկրոկառավարիչի պատրաստ քորոցն է: Միացումից մոտ 10 միլիվայրկյան անց, երկրորդ ալիքը միկրոկոնտրոլերի կողմից բարձր է քաշվում, ինչը ցույց է տալիս, որ այն գտնվում է կարգավորման օղակում: Կարգավորումն ավարտվելուց հետո MCU- ն կոդավորված է, որ քորոցը ցածր է քաշում ՝ նշելով, որ հիմնական հանգույցը սկսվում է: Շրջանակը ցույց է տալիս, որ կարգավորումը տևում է մոտ 3 միլիվայրկյան: Ընդհանուր առմամբ, միկրոկառավարիչին 13 միլիվայրկյան տևում է միացումից հետո `պատրաստ լինելու համար:
Խորհուրդ ենք տալիս:
Ardubuino (Arduboy- ի հետ համատեղելի կլոն). 5 քայլ

Ardubuino (Arduboy- ի հետ համատեղելի կլոն). Arduboy- ը բաց կոդով վարկային քարտի չափի խաղային կոնսոլ է, որն ունի ակտիվ համայնք ոչ միայն իր ծրագրային ապահովման վրա, որտեղ շատ մարդիկ մշակում են իրենց խաղը հարթակի համար, այլ նաև իր սարքավորումների վրա, որտեղ կան նաև շատ մարդիկ եկել են
XtraCell Extra Large 9V մարտկոց ՝ 9V- ի հետ համատեղելի սեղմիչով ՝ 6 քայլ

XtraCell Extra Large 9V մարտկոց ՝ 9V համատեղելի Snap- ով. 9V մարտկոցները Arduino- ի անձի կյանքի մի մասն են, ուստի … Ես որոշեցի դրա մեծ տարբերակը պատրաստել: Սա պարունակում է արագություն, այնպես որ այն համատեղելի է սովորական 9V մարտկոցների հետ: Ձեզ անհրաժեշտ կլինի. 12 AA մարտկոց (կամ տարբեր քանակություն կամ տեսակ) Պղնձե ժապավեն Ստվարաթուղթ Sco
Arduino Nano- ի հետ համատեղելի Robo-Geek հավաքածուներ. 5 քայլ

Arduino Nano- ի հետ համատեղելի Robo-Geek հավաքածուներ. Շնորհավորում ենք Arduino Nano- ի հետ համատեղելի Robo-Geek հավաքածուի ձեռքբերման համար: Այս ձեռնարկում մենք ձեզ կառաջնորդենք, թե ինչպես սկսել սկսել Arduino Nano համատեղելի տախտակը: Arduino Nano- ի հետ համատեղելի Robo-Geek հավաքածուն նախատեսված էր Arduino- ում նորեկների համար
ԻՆՉՊԵՍ ԿԱՐՈ ԵՆ ՀԵՏ ՀԵՏ ՀԵՏ չորության չորացման սենսոր `4 քայլ

ՈՐՊԵՍ ԿԱՐՈ ԵՆՔ ՀԵՏ ՀԵՏ ՀԱՎԱՔԱՈ ՍԵՆՍՈՐ. Ողջույն, այս ուսանելի ծրագրում ես ձեզ ցույց կտամ, թե ինչպես պատրաստել մի պարզ «ՀՈ DRՅԱՆ ՉՈՐՈ SԹՅԱՆ ՍԵՆՍՈՐ»: Սա իմ առաջին ուսանելի ներողությունն է իմ ծիծաղելի անգլերենի համար: Հողի չորությունը որոշվում է led ցուցիչով: led լույսը wi
Ինչպես Breadboard Arduino- ի հետ համատեղելի. 4 քայլ

Ինչպես թխել Arduino- ի հետ համատեղելի. Գաղտնիք չէ, որ oomlout HQ- ի շուրջ մենք բաց աղբյուրի Arduino միկրոհսկիչի հսկայական երկրպագուներ ենք: Նախապես պատրաստված Duemilanove տախտակը նախատիպերի զարմանալի հարթակ է, բայց երբեմն հաճելի է ինքներդ ինչ-որ բան պատրաստել: Հետևյալը ուղեցույց է