Շատ հաճախ ինտերնետում շատերը հանդիպում են հետաքրքիր դիզայնի, բայց մի բան խանգարում է դրան՝ այն պատրաստված է կարգավորիչով։ Եվ դա այնքան դժվար է ...
Իրականում ամեն ինչ շատ ավելի պարզ է. Եթե հնարավոր է վերահսկիչ գնել, աշխատանքի կեսն արդեն արված է։ Մնում է տախտակը «արդուկել», փորագրել ու մասերով զոդել... Իսկ հիմա խոսքը գնում է կարգավորիչի մասին։ Ինչպե՞ս «վերակենդանացնել» նրան: Ինչպե՞ս «ֆայլել»: Սկսվում է ծրագրավորողի շրջանի և ծրագրի ցավոտ որոնումը։ Շղթան հայտնաբերվել է, բայց անհաջողություն. համակարգչի հետևի պատին արդեն կա 8 USB միակցիչ, տպիչի մի պորտ և ոչ մի COM պորտ, որի համար միացում է հայտնաբերվել:
Իրադարձությունների զարգացման մեկ այլ տարբերակ էլ կա. Համակարգչի վրա կա COM պորտ: Բայց ինչ-ինչ պատճառներով ծրագրավորողը հրաժարվում է «կարել» կարգավորիչը. անընդհատ սխալ է հայտնվում: Բայց փաստն այն է, որ հաճախ ժամանակակից մայր տախտակների վրա (և հատկապես դյուրակիր համակարգիչների) COM պորտերը պատրաստվում են շատ ցածր հոսանքով: Դրա պատճառով ծրագրավորման գործընթացն ավարտվում է դեռ չսկսած: Վերոնշյալ բոլոր դեպքերում ձեզ կօգնի այս պարզ դիագրամը։
Սա LPT պորտի ծրագրավորող է: Չնայած բոլոր թվացյալ բարդությանը, սխեման բավականին պարզ է և սկսում է աշխատել անմիջապես՝ առանց որևէ կոնֆիգուրացիա պահանջելու: Մասերը հասանելի են և արժեն բառացիորեն կոպեկներ: Բայց հնարավորությունները... Այս սարքով դուք կարող եք հեշտությամբ թարթել կարգավորիչը ոչ միայն վարդակից, այլ նաև միացումում (սա վերաբերում է սարքերին, որոնց տախտակը միացված է SMD կարգավորիչի պատյանին, բայց դուք չեք ցանկանում գնել վարդակից 20 դոլարով դրա համար):
Հավաքվելուց հետո այն ունի հետևյալ տեսքը.
Փոքր տարբերություններով այս ծրագրավորողը շուրջ 20 տարի շրջում է ինտերնետում: Այն հայտնի է որպես Clasic Tait Programer, ProPIC2, meProg: Այն դեռ արտադրվում է որոշ ընկերությունների կողմից և հաջողությամբ վաճառվում:
Ծրագրաշարի վերջին տարբերակները կարելի է ներբեռնել այստեղից.
- http://www.winpic800.com/
- http://melabs.com/support/progsoft.htm
- http://members.aon.at/electronics/pic/picpgm/
Ահա WinPIC800-ի կարգավորումները.
Եվ ահա 8-14-18-20 ելքային կարգավորիչները թարթելու համար ադապտեր:
Այս դիագրամը նույնպես հաճախ դիտվում է. |
Սկսնակների համար հարցն այն է, թե «ինչով ենք մենք օգտագործելու մեր կարգավորիչը թարթելու համար»: գրեթե անմիջապես վեր է կենում: Այս խնդիրը կարող է լուծվել երկու եղանակով` մենք գնում ենք սերիական ծրագրավորող կամ կառուցում ենք մերը: Բնականաբար, նպատակահարմար չէ գնել սերիական ծրագրավորողներից որևէ մեկը միկրոկոնտրոլերների հետ ծանոթանալու սկզբնական փուլում։ Ամենապարզ լուծումը կլինի այսպես կոչված «հինգ լար» ծրագրավորողը: Այս տարբերակը բավականին հարմար է մեկանգամյա օգտագործման համար, սակայն մեծ վտանգ կա, որ համակարգչի ձեր LPT պորտը վաղ թե ուշ կվառվի: Որպես զուգահեռ նավահանգիստ ծրագրավորողի էժան և անվտանգ տարբերակ, մենք օգտագործում ենք ավելի առաջադեմ միացում:
Ներկայացնում ենք պարզ և անվտանգ զուգահեռ նավահանգիստ ծրագրավորող: Ծրագրավորողների միացումը բավականին տարածված է տարբեր տատանումների մեջ և հիմնված է 74HC 244N բուֆերային չիպի օգտագործման վրա: Բուֆերը ապահովում է ձեր տպիչի միացքը անվտանգ և առողջ: Բացի այդ, շղթայում ներառված է ռեզիստոր, որի նպատակն է պաշտպանել ստատիկ էլեկտրականությունից:
Ծրագրավորողը համատեղելի է Atmel STK 200/300-ի հետ և աջակցվում է շատ հայտնի կոմպիլյատորների կողմից: Դրա հավաքման համար նախատեսված մասերի ամբողջ փոքր հավաքածուն բավականին տարածված է և որևէ դժվարություն չի առաջացնի գնման մեջ: Տպագիր տպատախտակը պատրաստված է միակողմանի տարբերակով՝ մի քանի ցատկողներով։
Ծրագրավորողը համակարգչին միացնելու համար հարմար է օգտագործել LPT պորտի երկարացման մալուխը:
Սխեման sPlan ձևաչափով 6.0 և տախտակի դասավորությունը ձևաչափով Sprint դասավորություն Դուք կարող եք ներբեռնել 4.0-ը LUT-ի ներքո ստորև:
Եթե դուք նախատեսում եք որևէ սարք կառուցել Atmel AVR միկրոկառավարիչներով (կամ նույնիսկ ձեր սեփական տնական Arduino-ով), դուք պարզապես չեք կարող անել առանց ծրագրավորողի: Ծրագրավորողը թույլ կտա միկրոկոնտրոլերը ջնջել ցանկալի ծրագրով կամ, Arduino-ի դեպքում, միկրոկարգավորիչի հիշողության մեջ գրել համապատասխան բեռնիչ:
Ընդհանուր առմամբ, կան ծրագրավորողների մեծ բազմազանություն, որոնք տարբերվում են հավաքման բարդությամբ, որոնվածի արագությամբ և գործառնական հուսալիությամբ: Դրանցից ամենապարզը «Հինգ լարեր» կոչվող տարբերակն է: Բայց դրա հուսալիությունը շատ ցանկալի է թողնում, քանի որ դրա հետ ավելի հեշտ է սպանել LPT նավահանգիստը =) Ավելի հուսալի է STK200 ծրագրավորողը, որը պարունակում է բուֆերային չիպ և երաշխավորում է նորմալ աշխատանքը պորտի հետ:
Բայց չիպի առկայության պատճառով սկսնակների համար (այսինքն ինձ համար) արտադրելը շատ ավելի դժվար է դառնում:
Ինչպե՞ս վարվել սրա հետ:
Կարճ միացումներից պաշտպանվելու համար մենք ավելացնում ենք 150 Օմ դիմադրություն, STK200-ի հետ համատեղելիության համար (սա թույլ կտա աշխատել թարթող ծրագրերի մեծ մասի հետ), մենք կապում ենք 2-ից 12-ը և 3-ից 11-ը LPT-ում: Ինչպես տեսնում եք, սխեման ամենևին էլ չի բարդացել և միևնույն ժամանակ հայտնվել է լրացուցիչ պաշտպանություն։
Եկեք սկսենք հավաքը:
Տղամարդկանց տիպի LPT միակցիչի վրա (կարող եք այն տանել հին մալուխից դեպի տպիչ), դուք պետք է միացնեք ոտքերը 18-ից մինչև 25-ը. սրանք հողային ելքեր են: Ստատիկից պաշտպանվելու համար կարող եք լրացուցիչ զոդել 1 KOhm դիմադրություն հողի և LPT միակցիչի մարմնի միջև:
Այնուհետև դուք պետք է միացնեք ելքը 3-ը 11-ին, իսկ ելքը 2-ը՝ 12-ին (STK200-ի տարբերակիչ հատկանիշ)
100-ից 150 Օմ անվանական արժեք ունեցող ռեզիստորները զոդվում են 6, 7, 9, 10 ոտքերին: Սրանք կլինեն մեր 4 ազդանշանային ելքերը:
Մալուխը կարելի է վերցնել IDE-ից, ավելի լավ է երկարությունը ընտրել առանց ֆանատիզմի, բավական է 20-30 սանտիմետրը =) Որքան կարճ, այնքան ծրագրավորողը վերջում վստահելի կլինի։ Լավ կլինի, որ յուրաքանչյուր ազդանշանային լարը փոխարինեք հողով (ինչպես արվում է, օրինակ, նույն IDE մալուխում)՝ հնարավոր միջամտությունից պաշտպանվելու համար:
Ներշրջանցային ծրագրավորման միակցիչներ…
Սա այն վայրն է, որտեղ դուք կարող եք թույլ տալ ձեր երևակայությունը: =) Կարող եք բաժանել 2x3 խումբ IDE մալուխից, կարող եք օգտագործել կանացի BLS միակցիչներ (դրանք միացնում են պատյանի առջևի վահանակը մայր տախտակին): 40 փինով քանոնից կտրեցի 3 հատ երկու շերտ։ Պարզվեց, որ ավելի վատ չէ =)
Այս ամբողջ բարությունը զոդելուց հետո մենք փակում ենք LPT միակցիչը և հիանում մեր ձեռքերի ստեղծագործությամբ։
Սկսնակների համար հարցն այն է, թե «ինչով ենք մենք օգտագործելու մեր կարգավորիչը թարթելու համար»: գրեթե անմիջապես վեր է կենում: Այս խնդիրը կարող է լուծվել երկու եղանակով` մենք գնում ենք սերիական ծրագրավորող կամ կառուցում ենք մերը: Բնականաբար, նպատակահարմար չէ գնել սերիական ծրագրավորողներից որևէ մեկը միկրոկոնտրոլերների հետ ծանոթանալու սկզբնական փուլում։ Ամենապարզ լուծումը կլինի այսպես կոչված «հինգ լար» ծրագրավորողը: Այս տարբերակը բավականին հարմար է մեկանգամյա օգտագործման համար, սակայն մեծ վտանգ կա, որ համակարգչի ձեր LPT պորտը վաղ թե ուշ կվառվի: Որպես զուգահեռ նավահանգիստ ծրագրավորողի էժան և անվտանգ տարբերակ, մենք օգտագործում ենք ավելի առաջադեմ միացում:
Ներկայացնում ենք պարզ և անվտանգ զուգահեռ նավահանգիստ ծրագրավորող: Ծրագրավորողների միացումը բավականին տարածված է տարբեր տատանումների մեջ և հիմնված է 74HC 244N բուֆերային չիպի օգտագործման վրա: Բուֆերը ապահովում է ձեր տպիչի միացքը անվտանգ և առողջ: Բացի այդ, շղթայում ներառված է ռեզիստոր, որի նպատակն է պաշտպանել ստատիկ էլեկտրականությունից:
Ծրագրավորողը համատեղելի է Atmel STK 200/300-ի հետ և աջակցվում է շատ հայտնի կոմպիլյատորների կողմից: Դրա հավաքման համար նախատեսված մասերի ամբողջ փոքր հավաքածուն բավականին տարածված է և որևէ դժվարություն չի առաջացնի գնման մեջ: Տպագիր տպատախտակը պատրաստված է միակողմանի տարբերակով՝ մի քանի ցատկողներով։
Ծրագրավորողը համակարգչին միացնելու համար հարմար է օգտագործել LPT պորտի երկարացման մալուխը:
Սխեման sPlan ձևաչափով 6.0 և տախտակի դասավորությունը ձևաչափով Sprint դասավորություն Դուք կարող եք ներբեռնել 4.0-ը LUT-ի ներքո ստորև:
Եկեք պարզենք, թե ինչ է ISP ինտերֆեյսը և նայենք էժան և հարմար USB ISP ծրագրավորողին: Դիտարկենք համակարգչի վրա COM և LPT պորտերը օգտագործող AVR միկրոկառավարիչների համար ամենապարզ ծրագրավորողների սխեմատիկ դիագրամները: Այս տեղեկատվությունը բավականին բավարար է AVR միկրոկառավարիչների մոդելների մեծ մասը լուսարձակելու համար ոչ միայն Linux-ում, այլ նաև այլ ՕՀ-ներում:
ISP ներհամակարգային ծրագրավորման ինտերֆեյս
AVR միկրոկոնտրոլերի վրա ծրագիր գրելու համար ձեզ հարկավոր է ծրագրավորող:
Ծրագրավորողփոքր էլեկտրոնային սխեման է, որը թույլ է տալիս միկրոկառավարիչը միացնել համակարգչային պորտերից մեկին (COM, LPT, USB)՝ որոնվածի հետագա ընթերցման և գրելու համար (ծրագրավորում):
AVR միկրոկոնտրոլերների համար ծրագրավորողների բավականին շատ դիզայներ կան, որոնք միանում են տարբեր համակարգչային պորտերին:
Ամենահուսալի և հարմար տարբերակը ծրագրավորողն է, որը միանում է USB պորտին, քանի որ COM և LPT պորտերը այլևս տեղադրված չեն նոր աշխատասեղան համակարգիչների և նոթբուքերի մեջ:
Պատրաստի սարքերում ծրագրավորողը միացված է միկրոկառավարիչին ինտերֆեյսի միջոցով ISP(In System Programming) - ներհամակարգային ծրագրավորման ինտերֆեյս: ISP ինտերֆեյսը բաղկացած է մի քանի հաղորդիչներից, որոնց միջոցով ժամացույցի ազդանշան և տվյալներ են ստացվում՝ ծրագրավորողը միկրոկոնտրոլերի հետ միացնելու համար։
Որպես կանոն, ISP ինտերֆեյսը տեղադրվում է տախտակների վրա տասը կամ վեց կապի տեսքով, որոնց ծրագրավորողը միացված է համապատասխան միակցիչի միջոցով մալուխի միջոցով։
Բրինձ. 4. ISP ինտերֆեյսը տախտակի վրա:
PIN-ների նպատակը ISP ինտերֆեյսում.
- VCC - էլեկտրամատակարարում գումարած, սովորաբար +5V;
- GND - հզորություն մինուս, հիմք (Ground);
- MOSI - տվյալների մուտքագրում (Master Out Slave In);
- MISO - տվյալների ելք (Master In Slave Out);
- SCK - ժամացույցի ազդանշան (Serial Clock);
- RST - վերակայման ազդանշան տրամադրելու համար:
Միկրոկարգավորիչի ներկառուցված ծրագրավորման համար բավական է ընդամենը 4 կապ, քանի որ միկրոկառավարիչը կարող է սնուցվել հենց այն միացումից, որտեղ այն տեղադրված է:
Ինչպե՞ս միացնել ծրագրավորողը AVR միկրոկոնտրոլերի չիպին, եթե այն միացված չէ շղթայի մեջ: - շատ պարզ, օգտագործելով ISP ինտերֆեյսի նույն կապերը, անհրաժեշտության դեպքում, միկրոկառավարիչը սնուցելով էներգիայի աղբյուրից:
USB ISP ASP ծրագրավորող
AVR չիպերի հետ աշխատելու համար ես գնեցի էժան USB ISP ծրագրավորող մոտ 10 դոլարով: Նման սարքը այժմ վաճառվում է բազմաթիվ ներքին և արտասահմանյան առցանց խանութներում, ուստի գնման հետ կապված խնդիրներ չպետք է լինեն:
Բրինձ. 5. USB ISP - ծրագրավորող՝ ATMEL-ից AVR միկրոկոնտրոլերների ներշղթայական ծրագրավորման մալուխով:
Այս ծրագրավորողն անվտանգ է օգտագործման համար, փոքր չափսերով և աջակցվում է AVR միկրոկարգավորիչների թարթող ծրագրերի մեծ մասի կողմից: USB ISP-ն աշխատում է Linux, Mac OS X և Windows օպերացիոն համակարգերով: Linux-ի համար ոչ մի դրայվեր տեղադրելու կարիք չկա, ծրագրավորողը USB պորտին միացնելուց հետո սարքն անմիջապես կհայտնաբերվի և պատրաստ կլինի օգտագործման:
Ստորև ես կտամ USB ISP ծրագրավորողի միակցիչների պինութը - դա մեզ ավելի ուշ օգտակար կլինի միկրոկառավարիչին միանալիս:
Բրինձ. 6. Կցամասերի գտնվելու վայրը USB ISP միակցիչի վրա (pinout):
Բրինձ. 7. Կոնտակտների գտնվելու վայրը USB ISP ծրագրավորողին միացված միակցիչի վարդակներում:
Ի՞նչ անել, եթե չկարողանաք գնել USB ISP ծրագրավորող:- Դուք կարող եք ծրագրավորել միկրոկոնտրոլերներ՝ օգտագործելով պարզ տնական ծրագրավորողներ, որոնք միանում են COM կամ LPT պորտին, բայց ավելի լավ է ինքներդ պատրաստեք USB ISP և դրա համար միկրոկոնտրոլերի չիպը մեկ անգամ ծրագրավորեք պարզ տնական ծրագրավորողի միջոցով COM կամ LPT պորտի միջոցով:
Բրինձ. 8. Տնական USB ASP ISP ծրագրավորողի սխեմատիկ դիագրամ:
USB ASP-ի, ինչպես նաև տպագիր տպատախտակների, դրայվերների և միկրոկոնտրոլերի որոնվածի արտադրության մասին մանրամասն տեղեկություններ կարելի է գտնել պաշտոնական կայքում՝ http://www.fischl.de/usbasp/
Բացի այդ, ինտերնետում կան բավականին շատ ռեսուրսներ այս անվճար ծրագրավորողի վրա, կան բազմաթիվ պատրաստի տպագիր տպատախտակների դասավորություններ, ներառյալ SprintLayout ծրագրում, ուստի մենք այս հոդվածում մանրամասն չենք խոսի դրա մասին:
Ծրագրավորող՝ օգտագործելով COM պորտը
Այս ծրագրավորողը կոչվում է նաև «Գրոմովի ծրագրավորող», ի պատիվ նրա, ով հանդես է եկել այս սխեմայով, Algorithm Builder ծրագրի ստեղծողի (Windows-ի տակ AVR ծրագրավորման գրաֆիկական միջավայր՝ ալգորիթմական լեզվով)՝ G.L. Գրոմովա.
Այս ծրագրավորողը թույլ է տալիս ծրագրավորել AVR չիպերը՝ օգտագործելով համակարգչի COM պորտը՝ RS232 ինտերֆեյսը: Նման ծրագրավորող հավաքելու համար ձեզ հարկավոր են նվազագույն մասեր՝ 3 դիոդ, 7 դիմադրություն, DB-9 կամ DB-25 միակցիչ (կախված նրանից, թե որ զուգակցիչն է տեղադրված ձեր համակարգչում) և ISP միակցիչ՝ միկրոկառավարիչին միանալու համար։ (կամ ընդամենը մի քանի դիրիժոր, որը չիպում է): Ցածր էներգիայի ցանկացած դիոդներ կարող են օգտագործվել միացումում:
Բրինձ. 9. AVR միկրոկոնտրոլերի ծրագրավորողի սխեմատիկ դիագրամ համակարգչային COM պորտի միջոցով:
Տեղեկատվության ամբողջականության համար ստորև ես կներկայացնեմ RS-232 նավահանգիստների պինութը DB-9 և DB-25 տարբերակների համար:
Բրինձ. 10. RS232 - COM Port, DB-9 փին դասավորություն:
Բրինձ. 11. RS232 COM Port DB-25 - միակցիչների վրա քորոցների գտնվելու վայրը:
Ծրագրավորող՝ օգտագործելով LPT պորտը
Ինչպես գիտենք, համակարգչի LPT պորտը նախատեսված է տեղական տպիչի (Local Printer Port) միացնելու համար, բայց այնուամենայնիվ այն հաճախ օգտագործվում է տարբեր սարքեր և տնական արտադրանքներ միացնելու համար։ Այս դեպքում մենք կարող ենք օգտագործել այն AVR միկրոկոնտրոլերները ծրագրավորելու համար՝ այդ նպատակով շատ պարզ միացում հավաքելով, որը ներկայացված է ստորև։
Բրինձ. 12. Համակարգչի LPT պորտը օգտագործող AVR միկրոկառավարիչների համար ծրագրավորողի սխեմատիկ դիագրամ:
Ինչպես տեսնում եք, շղթան նույնիսկ ավելի պարզ է, քան տարբերակով, այստեղ մեզ անհրաժեշտ է միայն 4 ցածր էներգիայի դիմադրություն և միակցիչ (արական, կապում) համակարգչի LPT պորտին միանալու համար:
Բրինձ. 13. LPT պորտի միակցիչների քորոցների գտնվելու վայրը:
Բոլոր մասերը և միացումները կարող են տեղադրվել LPT միակցիչի պատյանում, իսկ միկրոկառավարիչին միանալու համար կարելի է դուրս բերել ISP ինտերֆեյսի միակցիչով մալուխ կամ պարզապես միկրոչիպին միանալու համար անհրաժեշտ հաղորդիչներ:
Ծրագրային ապահովում և նշումներ
Միացնելով COM կամ LPT ծրագրավորողը միկրոկառավարիչին, դուք պետք է հիշեք, որ էներգիա մատակարարեք հենց միկրոչիպին: Դուք կարող եք օգտագործել մարտկոցներ կամ կայունացուցիչով սնուցման աղբյուր՝ որպես միկրոկառավարիչի էներգիայի աղբյուր, սա ամենաանվտանգը կլինի ինչպես համակարգչի պորտի, այնպես էլ չիպի համար: Մենք արդեն քննարկել ենք, թե ինչպես օգտագործել այն:
Linux-ի տակ կա շատ հզոր ծրագիր, որը կարող է աշխատել USB ASP, COM և LPT ծրագրավորողների հետ՝ այս ծրագիրը ԱՎՐԴՈՒԴԵ, այն կքննարկվի հաջորդ բաժիններում։
Windows-ի տակ AVR չիպերը լուսարձակելու համար՝ օգտագործելով COM և LPT ծրագրավորողների տվյալները, ձեզ անհրաժեշտ է Նիկոլաևի UniProf ծրագիրը, որը ունիվերսալ ծրագրավորող է AVR-ի համար (avr.nikolaew.org):
ՈՒՇԱԴՐՈՒԹՅՈՒՆ. Եղեք չափազանց զգույշ և զգույշ համակարգչի COM կամ LPT պորտը օգտագործող ծրագրավորողներ հավաքելիս և օգտագործելիս, մի պարզ սխալ կարող է հեշտությամբհրկիզել այս նավահանգիստները: Նման ծրագրավորողների նորմալ աշխատանքի համար դուք պետք է փորձեք օգտագործել ամենակարճ հաղորդիչները միակցիչից մինչև ծրագրավորող միացում և միկրոկառավարիչ: Ցանկալի է, որ համակարգչային միկրոպրոցեսորը ունենա 1-2 ԳՀց-ից ոչ ավելի հաճախականություն, իսկ չիպերի ծրագրավորման համար որպես ՕՀ ցանկալի է օգտագործել Win2000 կամ WinXP:
Կարևոր է նաև իմանալ, որ USB-RS232 (USB-COM Port) ադապտերները, ամենայն հավանականությամբ, չեն աշխատի Գրոմովի ծրագրավորողի հետ, կաշխատեն միայն ավելի նոր չիպեր ունեցողները, ուստի ավելի լավ է որոնել հայրենի COM պորտով մեքենա:
Եզրակացություն
Հոդվածում քննարկված ծրագրավորողները AVR ծրագրավորողների մեծ ցուցակի ամենամատչելի և պարզ լուծումներից ընդամենը մի քանիսն են՝ USBTinyISP, AVR-Doper, AVR vusbtiny, AVRISP-MkII, FTDI ծրագրավորողներ և այլն:
Այժմ, ամեն դեպքում, կարող եք հավաքել ձեզ հասանելի ծրագրավորող և թեկուզ մեկ չիպ բռնակել, որի հիման վրա կարող եք հավաքել մեկ այլ ավելի հարմար ծրագրավորող կամ որևէ այլ սարք։
Հաջորդ հոդվածում մենք կպարզենք, թե ինչպես կարելի է միացնել AVR միկրոկոնտրոլերների տարբեր մոդելներ ծրագրավորողին և պարզել, թե որտեղից կարելի է տեղեկատվություն ստանալ միկրոկոնտրոլերների պինութի մասին: