Բովանդակություն:
![Arduino- ի օդում ծրագրավորում (OTA) - Ameba Arduino. 4 քայլ Arduino- ի օդում ծրագրավորում (OTA) - Ameba Arduino. 4 քայլ](https://i.howwhatproduce.com/images/008/image-23435-j.webp)
Video: Arduino- ի օդում ծրագրավորում (OTA) - Ameba Arduino. 4 քայլ
![Video: Arduino- ի օդում ծրագրավորում (OTA) - Ameba Arduino. 4 քայլ Video: Arduino- ի օդում ծրագրավորում (OTA) - Ameba Arduino. 4 քայլ](https://i.ytimg.com/vi/F4GCXgpPNZg/hqdefault.jpg)
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:46
![Arduino- ի օդում ծրագրավորում (OTA) - Ameba Arduino Arduino- ի օդում ծրագրավորում (OTA) - Ameba Arduino](https://i.howwhatproduce.com/images/008/image-23435-1-j.webp)
Շուկայում կան շատ Wi-Fi միկրոկառավարիչներ, շատ արտադրողներ վայելում են իրենց Wi-Fi միկրոկառավարիչի ծրագրավորումը Arduino IDE- ի միջոցով: Այնուամենայնիվ, Wi-Fi միկրոկառավարիչի առաջարկած ամենաթեժ հատկություններից մեկը, որպես կանոն, անտեսվում է, այն է ՝ ծրագրավորելն ու ձեր ծածկագրի հեռակա և անլար տեղադրումը ՝ օգտագործելով OTA (Over-The-Air) գործառույթը:
Այս Ուղեցույցում ես ձեզ ցույց կտամ, թե ինչպես տեղադրել OTA ձեր Wi-Fi միկրոկառավարիչի վրա ՝ օգտագործելով ամենուր Arduino IDE- ն Ameba Arduino Wi-Fi միկրոկոնտրոլերի վրա:
Պարագաներ
Ամեբա Արդուինո x 1
Քայլ 1: OTA
![ՕՏԱ ՕՏԱ](https://i.howwhatproduce.com/images/008/image-23435-2-j.webp)
OTA (Over-The-Air) վերաբերում է ինտերնետի միջոցով առցանց արդիականացման մեխանիզմին:
Arduino IDE- ն առաջարկում է OTA գործառույթը, որը հետևում է վերևի նկարում ներկայացված աշխատանքային ընթացքին:
(i) Arduino IDE- ն mDNS- ի միջոցով փնտրում է Arduino IDEOTA ծառայություն ունեցող սարքեր տեղական ցանցում:
(ii) Քանի որ mDNS ծառայությունն աշխատում է Ameba- ի վրա, Ameba- ն արձագանքում է mDNS որոնմանը և բացում միացման համար հատուկ TCP նավահանգիստը:
(iii) Օգտվողը ծրագիր է մշակում Arduino IDE- ում: Ավարտելուց հետո ընտրեք ցանցի նավահանգիստ:
(iv) Սեղմեք վերբեռնում: Այնուհետեւ Arduino IDE- ն OTA պատկերն ուղարկում է Ameba- ին TCP- ի միջոցով, Ameba- ն պատկերը պահում է որոշակի հասցեում և հաջորդ անգամ այս պատկերից բեռնման տարբերակ է դնում:
Աշխատանքային գործընթացը բաղկացած է երեք մասից ՝ mDNS, TCP և OTA պատկերի գործընթաց: MDNS- ի հետ կապված մանրամասները նկարագրված են mDNS ձեռնարկում: TCP վարդակների ծրագրավորումն օգտագործվում է պատկերի փոխանցման համար և արդեն տրամադրված է OTA API- ում:
Հաջորդ բաժնում մենք կքննարկենք, թե ինչպես մշակել OTA պատկերը և կներկայացնենք որոշ հիմնական գիտելիքներ Ameba ֆլեշ հիշողության դասավորության և բեռնման հոսքի վերաբերյալ:
Քայլ 2: Ameba Flash Memory Layout
![Ameba Flash Memory Layout Ameba Flash Memory Layout](https://i.howwhatproduce.com/images/008/image-23435-3-j.webp)
Ameba RTL8195A- ի ֆլեշ հիշողության չափը 2 ՄԲ է, տատանվում է 0x00000000 -ից մինչև 0x00200000: Այնուամենայնիվ, Ameba RTL8710 ֆլեշ հիշողության չափը 1 ՄԲ է: Տարբեր տախտակների օգտագործմանը համապատասխանելու համար մենք ենթադրում ենք, որ ֆլեշ հիշողության դասավորությունը 1 ՄԲ է:
Ինչպես ցույց է տրված վերևում նկարում, Ameba ծրագիրը զբաղեցնում է ֆլեշ հիշողության երեք մաս.
- Boot Image
Այսինքն, բեռնախցիկ: Երբ Ameba- ն բարձրանում է, այն տեղադրում է բեռնախցիկի պատկերը հիշողության մեջ և կատարում սկզբնականացում: Ավելին, այն որոշում է, թե որտեղ շարունակել բեռնիչից հետո: Bootloader- ը նայում է համակարգի տվյալների տարածքում OTA հասցեին և վերականգնման քորոցին և որոշում, թե որ պատկերն է կատարվելու դրանից հետո: Բեռնիչ սարքի վերջում այն տեղադրում է պատկերը հիշողության մեջ և շարունակում է այն կատարել:
- Կանխադրված պատկեր 2
Այս մասում տեղադրված է մշակողի կոդը, հասցեն սկսվում է 0x0000B000- ից: Առաջին 16 բայթերը պատկերի վերնագիրն են, 0x0000B008 ~ 0x0000B00F- ն պարունակում է Ստորագրություն, որն օգտագործվում է պատկերի վավերականության ստուգման համար: Ստորագրության դաշտը ունի երկու վավեր արժեք ՝ նոր պատկերը հին պատկերից տարբերելու համար:
- OTA պատկեր
Այս մասի տվյալները նույնպես մշակողի կոդ են: Լռելյայն, հիշողության այս հատվածը սկսվում է 0x00080000 -ից (կարող է փոխվել): OTA պատկերի և Default Image 2 -ի հիմնական տարբերությունները ֆլեշ հիշողության հասցեն և ստորագրության արժեքն են:
Կոդից բացի, կան որոշ տվյալների բլոկներ.
- Համակարգի տվյալներ
Համակարգի տվյալների բլոկը սկսվում է 0x00009000 -ից: Գոյություն ունեն OTA- ի հետ կապված երկու տվյալներ.
1. OTA հասցե : 4 բայթ տվյալներ ՝ սկսած 0x00009000 -ից: Այն պատմում է OTA Image հասցեն: Եթե OTA հասցեի արժեքը անվավեր է (այսինքն ՝ 0xFFFFFFFF), ֆլեշ հիշողության մեջ OTA պատկերը չի կարող ճիշտ բեռնվել:
2. Վերականգնման պին : 4 բայթ տվյալներ ՝ սկսած 0x00009008- ից, վերականգնման քորոցն օգտագործվում է որոշելու, թե որ պատկերը (կանխադրված պատկեր 2 կամ OTA պատկեր) կատարի, երբ երկու պատկերն էլ վավեր են: Եթե վերականգնման քորոցի արժեքն անվավեր է (այսինքն ՝ 0xFFFFFFFF), նոր պատկերը լռելյայն կկատարվի:
Համակարգի տվյալները կհեռացվեն, երբ ծրագիրը Ameba- ն վերբեռնենք DAP- ի միջոցով: Այսինքն, OTA հասցեն կհեռացվի, և Ameba- ն կորոշի, որ OTA պատկեր չկա:
- Կալիբրացիայի տվյալներ this Այս բլոկում տեղադրված են ծայրամասային չափագրման տվյալները: Սովորաբար այդ տվյալները չպետք է ջնջվեն:
Քայլ 3: Boot Flow
![Boot Flow Boot Flow](https://i.howwhatproduce.com/images/008/image-23435-4-j.webp)
Վերևի պատկերից ՝
Մենք քննարկում ենք հետևյալ սցենարները. (I) OTA- ն չի օգտագործվում, օգտագործեք DAP ծրագիրը վերբեռնելու համար.
Այս իրավիճակում, bootloader- ը ստուգում է կանխադրված պատկերի 2 -ի և OTA հասցեի ստորագրությունը: Քանի որ OTA հասցեն հեռացված է, նախնական պատկերը 2 կընտրվի կատարման համար:
(ii) OTA պատկերը փոխանցվում է Ameba- ին, OTA հասցեն ճիշտ է դրված, վերականգնման քորոցը սահմանված չէ
Ameba- ն ստացել է թարմացված պատկեր OTA- ի միջոցով, կանխադրված պատկերի 2 -ի ստորագրությունը կդառնա հին ստորագրություն:
Bootloader- ը ստուգում է կանխադրված պատկերի 2 -ի և OTA հասցեի ստորագրությունը: Այն կգտնի, որ OTA հասցեն պարունակում է վավեր OTA պատկեր: Քանի որ վերականգնման քորոցը սահմանված չէ, այն ընտրում է կատարման նոր պատկերը (այսինքն ՝ OTA պատկերը):
(iii) OTA պատկերը փոխանցվում է Ameba- ին, OTA հասցեն ճիշտ է դրված, վերականգնման քորոցը `
Ameba- ն ստացել է թարմացված պատկեր OTA- ի միջոցով, կանխադրված պատկերի 2 -ի ստորագրությունը կդառնա հին ստորագրություն:
Bootloader- ը ստուգում է կանխադրված պատկերի 2 -ի և OTA հասցեի ստորագրությունը: Այն կգտնի, որ OTA հասցեն պարունակում է վավեր OTA պատկեր: Այնուհետեւ ստուգեք վերականգնման քորոցի արժեքը: Եթե վերականգնման քորոցը միացված է LOW- ին, ապա նոր պատկերը (այսինքն ՝ OTA պատկերը) կկատարվի: Եթե վերականգնման քորոցը միացված է HIGH- ին, հին պատկերը (այսինքն ՝ կանխադրված պատկերը 2) կկատարվի:
Քայլ 4: Օրինակ
![Օրինակ Օրինակ](https://i.howwhatproduce.com/images/008/image-23435-5-j.webp)
![Օրինակ Օրինակ](https://i.howwhatproduce.com/images/008/image-23435-6-j.webp)
![Օրինակ Օրինակ](https://i.howwhatproduce.com/images/008/image-23435-7-j.webp)
![Օրինակ Օրինակ](https://i.howwhatproduce.com/images/008/image-23435-8-j.webp)
OTA գործառույթն օգտագործելու համար խնդրում ենք բարձրացնել DAP որոնվածը մինչև> 0.7 տարբերակ (v0.7 ներառված չէ): Գործարանային լռելյայն DAP որոնվածը 0.7 տարբերակն է: Խնդրում ենք հետևել DAP որոնվածը թարմացնելու հրահանգին ՝
Բացեք օրինակը ՝ «Ֆայլ» -> «Օրինակներ» -> «AmebaOTA» -> «ota_basic»
Լրացրեք ssid և գաղտնաբառի տվյալները նմուշի ծածկագրում ցանցի միացման համար:
OTA- ի հետ կապված որոշ պարամետրեր կան.
§ MY_VERSION_NUMBER first Առաջին տարբերակում մենք պետք է սահմանենք OTA հասցեն և վերականգնման քորոցը: Քանի որ այս անգամ USB- ի միջոցով վերբեռնումը առաջին տարբերակն է, մեզ հարկավոր չէ փոխել այս արժեքը:
§ OTA_PORT : Arduino IDE- ն կգտնի Ameba- ն mDNS- ի միջոցով: Ameba- ն Arduino IDE- ին կասի, որ այն բացում է TCP 5000 նավահանգիստը `սպասելու OTA պատկերին:
§ RECOVERY_PIN : Կարգավորեք վերականգնման համար օգտագործվող քորոցը: Մենք այստեղ օգտագործում ենք քորոց 18 -ը:
Այնուհետև մենք օգտագործում ենք USB բեռնման ծրագիրը Ameba- ին: Կտտացրեք Գործիքներ -> Նավահանգիստներ, ստուգեք սերիական նավահանգիստը ՝ օգտագործելու համար:
Խնդրում ենք նկատի ունենալ, որ Arduino IDE- ն օգտագործում է մեկ պորտ ՝ բեռնման ծրագրի և ելքային բլոգի համար: Այն իրավիճակից խուսափելու համար, երբ տեղեկամատյան OTA- ն օգտագործելիս տեղեկամատյանը չի կարող դուրս գալ, մենք օգտագործում ենք սերիական պորտի այլ տերմինալ (օրինակ ՝ Tera տերմին կամ ծեփամածիկ) սերիական մոնիտորի փոխարեն դիտելու տեղեկամատյանային հաղորդագրությունը:
Այնուհետև կտտացրեք վերբեռնում և սեղմեք վերակայման կոճակը:
Մատյանային հաղորդագրության մեջ.
1. «===== Մուտքագրեք պատկեր 1 ====» և «Մուտքագրեք պատկեր 2 ====» միջև կարող եք գտնել «Ֆլեշ պատկեր 2. Addr 0xb000»: Սա նշանակում է, որ Ameba- ն որոշում է գործարկել Default Image 2 -ից 0xb000:
2. «Մուտքագրեք պատկերը 2 ====» -ից հետո կարող եք գտնել «Սա տարբերակ 1 է»: Սա տեղեկամատյանային հաղորդագրություն է, որը մենք ավելացնում ենք ուրվագծում:
3. Ameba- ն AP- ին միանալուց և «192.168.1.238» IP հասցե ստանալուց հետո այն ակտիվացնում է mDNS- ը և սպասում հաճախորդին:
Հաջորդը, մենք փոփոխում ենք «MY_VERSION_NUMBER» - ը 2 -ի:
Կտտացրեք «Գործիքներ» -> «Պորտ», կարող եք տեսնել «Networkանցային նավահանգիստների» ցուցակը: Գտեք «MyAmeba 192.168.1.238 հասցեով (Ameba RTL8195A)», MyAmeba- ն այն mDNS սարքի անունն է, որը մենք սահմանել ենք ընտրանքային կոդի մեջ, իսկ «192.168.1.238» -ը ՝ Ameba- ի IP- ն:
Եթե չեք կարողանում գտնել Ameba- ի ցանցային պորտը, խնդրում ենք հաստատել.
- արդյոք ձեր համակարգիչը և Ameba- ն նույն տեղական ցանցում են:
- փորձեք վերագործարկել Arduino IDE- ն:
- ստուգեք տեղեկամատյանների հաղորդագրությունը Serial Monitor- ում ՝ տեսնելու համար, թե արդյոք Ameba- ն հաջողությամբ միացված է AP- ին:
Այնուհետեւ կտտացրեք բեռնել: Այս անգամ ծրագիրը կբեռնվի TCP- ի միջոցով: Մատյանային տերմինալում կարող եք տեսնել հաճախորդի միացման տվյալները:
Երբ OTA պատկերը հաջողությամբ ներբեռնվի, Ameba- ն կվերագործարկվի, և հաջորդ տեղեկամատյանը կցուցադրվի տեղեկամատյանների տերմինալում:
- «===== Մուտքագրեք պատկեր 1 ====» և «Մուտքագրեք պատկեր 2 ====» միջև կարող եք տեսնել «Flash Image 2: Addr 0x80000» տեղեկամատյանային հաղորդագրություն: Սա նշանակում է, որ Ameba- ն որոշում է գործարկել OTA Image- ից 0x80000:
- «Մուտքագրեք պատկեր 2 ====» -ից հետո «Սա տարբերակ 2 է» տեղեկամատյանը այն հաղորդագրությունն է, որը մենք ավելացնում ենք ուրվագծում:
OTA պատկերը Ameba- ում ներբեռնելուց հետո նախկին պատկերը վերականգնելու համար խնդրում ենք միացնել էսքիզում (այսինքն ՝ 18 -րդ կապում) տեղադրված վերականգնման քորոցը HIGH (3.3V) և սեղմել վերականգնել:
Այնուհետև Default image 2 -ը կընտրվի բեռնման ժամանակ: Նկատի ունեցեք, որ ներբեռնված OTA պատկերը չի ջնջվում, երբ վերականգնման քորոցն անջատվի HIGH- ից, OTA պատկերը կկատարվի:
Մենք ամփոփում ենք զարգացման հոսքը `օգտագործելով OTA- ն հետևյալ նկարում:
Խորհուրդ ենք տալիս:
ARDUINO- ի ՕԳՏԱԳՈՐՄԱՆ AT89S52 ծրագրավորում. 4 քայլ
![ARDUINO- ի ՕԳՏԱԳՈՐՄԱՆ AT89S52 ծրագրավորում. 4 քայլ ARDUINO- ի ՕԳՏԱԳՈՐՄԱՆ AT89S52 ծրագրավորում. 4 քայլ](https://i.howwhatproduce.com/images/005/image-13901-j.webp)
8րագրավորում AT89S52 ՕԳՏԱԳՈՐՈՄ ARDUINO. Համակարգային ծրագրավորում (ISP), որը հայտնի է որպես In-Circuit Serial Programming (ICSP), որոշ ծրագրավորվող տրամաբանական սարքերի, միկրոկոնտրոլերների և ներկառուցված այլ սարքերի կարողությունն է ծրագրավորվել ամբողջական համակարգում տեղադրելու փոխարեն, այլ ոչ թե պահանջել չի
Bluetooth «Օդում» հենակետ: 7 քայլ (նկարներով)
![Bluetooth «Օդում» հենակետ: 7 քայլ (նկարներով) Bluetooth «Օդում» հենակետ: 7 քայլ (նկարներով)](https://i.howwhatproduce.com/images/005/image-14512-j.webp)
Bluetooth «Օդում» հենակետ. Ես աշխատում էի Bluetooth- ի հետ կապ չունեցող նախագծի վրա, ես ստիպված էի փորձարկել հաղորդակցությունը, այնպես որ ես կառուցեցի Arduino- ի փորձարկման սխեմաներից մեկը: Լույսը պարունակում է էլեկտրոնիկա, միկրոկառավարիչ և մարտկոց, որոնք կարող են լիցքավորվել VIA USB- ի միջոցով: Այն օգտագործում է
Arduino ծրագրավորում բջջայինի միջոցով -- Արդուինոդրոիդ -- Arduino Ide for Android -- Թարթել ՝ 4 քայլ
![Arduino ծրագրավորում բջջայինի միջոցով -- Արդուինոդրոիդ -- Arduino Ide for Android -- Թարթել ՝ 4 քայլ Arduino ծրագրավորում բջջայինի միջոցով -- Արդուինոդրոիդ -- Arduino Ide for Android -- Թարթել ՝ 4 քայլ](https://i.howwhatproduce.com/images/006/image-17986-j.webp)
Arduino ծրագրավորում բջջայինի միջոցով || Արդուինոդրոիդ || Arduino Ide for Android || Blink. Խնդրում ենք բաժանորդագրվել իմ youtube ալիքին ավելի շատ տեսանյութերի համար …… Arduino- ն տախտակ է, որը կարող է ծրագրավորվել անմիջապես USB- ով: Դա շատ պարզ և էժան է քոլեջի և դպրոցի նախագծերի կամ նույնիսկ արտադրանքի նախատիպի համար: Շատ ապրանքներ առաջին հերթին դրա վրա են կառուցվում ՝
Arduino- ի ծրագրավորում ՝ օգտագործելով մեկ այլ Arduino ՝ առանց գրադարանի ոլորվող տեքստ ցուցադրելու համար. 5 քայլ
![Arduino- ի ծրագրավորում ՝ օգտագործելով մեկ այլ Arduino ՝ առանց գրադարանի ոլորվող տեքստ ցուցադրելու համար. 5 քայլ Arduino- ի ծրագրավորում ՝ օգտագործելով մեկ այլ Arduino ՝ առանց գրադարանի ոլորվող տեքստ ցուցադրելու համար. 5 քայլ](https://i.howwhatproduce.com/images/007/image-20745-j.webp)
Arduino- ի ծրագրավորում ՝ օգտագործելով մեկ այլ Arduino ՝ առանց գրադարանի ոլորվող տեքստ ցուցադրելու համար. Sony Spresense- ը կամ Arduino Uno- ն այդքան թանկ չեն և չեն պահանջում մեծ էներգիա: Այնուամենայնիվ, եթե ձեր նախագիծը սահմանափակումներ ունի էներգիայի, տարածքի կամ նույնիսկ բյուջեի վրա, գուցե ցանկանաք հաշվի առնել Arduino Pro Mini- ի օգտագործումը: Ի տարբերություն Arduino Pro Micro- ի, Arduino Pro Mi
Սկսել Esp 8266 Esp-01- ով Arduino IDE- ով - Arduino Ide- ում Esp տախտակների տեղադրում և ծրագրավորում Esp. 4 քայլ
![Սկսել Esp 8266 Esp-01- ով Arduino IDE- ով - Arduino Ide- ում Esp տախտակների տեղադրում և ծրագրավորում Esp. 4 քայլ Սկսել Esp 8266 Esp-01- ով Arduino IDE- ով - Arduino Ide- ում Esp տախտակների տեղադրում և ծրագրավորում Esp. 4 քայլ](https://i.howwhatproduce.com/images/003/image-6001-15-j.webp)
Սկսելով Esp 8266 Esp-01- ով Arduino IDE- ով | Arduino Ide- ում Esp տախտակների տեղադրում և ծրագրավորում Esp. Այս հրահանգներում մենք կսովորենք, թե ինչպես տեղադրել esp8266 տախտակները Arduino IDE- ում և ինչպես ծրագրավորել esp-01- ը և դրանում վերբեռնել ծածկագիրը: Քանի որ esp տախտակները այնքան հայտնի են, ես մտածեցի ուղղորդելու համար սա և մարդկանց մեծ մասը բախվում են խնդրի