ասք արնետազավրի մասին (մաս 0)

Ես անցնում եմ գործի, ջենթլմեններ, եւ կարծում եմ որ հավես կլինի այդ գործի ընթացքը նկարագրել այստեղ։

Սույն կիսաբազկաթոռով վարպետ Համբսը սկսում է շարք մի պողպատե էակի մասին է, ավելի ճշգրիտ՝ շիկամուկի, ում անունն է՝ Առնետազավր։

Ոչ, ես չեմ վախենում «գողություններից», եւ վստահ եմ որ մտքերը թաքցնելն անիմաստ է, այսպիսով շիկամուկի ստեղծման ընթացքը կլինի բավականին բաց։ Ու այո, այս նյութը ցց է։ Ուրախ կլինեմ, եթե իմ տեքստերը օգտակար կլինեն որեւե մեկին, նույնիսկ մրցակիցների շարքից։

Սակայն, այն հանգամանքը որ իմ սիրելի տեքնոլոգիաները սպեցիֆիկ են, ավաղ, կարող է նվազեցնել այն էակների թիվը ում տեքստը օգտակար կլինի։

Ես օգտագործում եմ իմ ձեւով հավաքած մինիմալիստիկ Ջենթու համակարգ։ Եւ բնականաբար, ինձ պետք է քոմփայլեր։ Այժմ ես մտածում եմ, որ ինձ պետք է avr-gcc-ն։ Ու այն օգտագործելով ես հետագայում կփորձեմ ստանալ Օբերոն քրոսքոմփայլեր եւ գեներացնել avr-libc-ի կապեր Սթյուարթ Գրինհիլլի H2O ծրագրի օգնությամբ։

Սակայն քանի որ avr-gcc-ի ինետում առկա փաթեթները հին են, ու նույնիսկ թե հին չլինեին, ես միեւնույն է նախընտրում եմ հավաքել քոմփայլերի իմ ուզած տարբերակը ինքնուրույն ու իմ իսկ մեքենայի վրա։ Ինձ կօգնի քրոսքոմփայլերներ ստանալու համար նախատեղնված սկրիպտերի հավաքածուն՝ քրոսդեւը՝

# emerge crossdev

Ասենք, ուզում եմ բինուտիլս 2.21 որ ակնարկի Հոլմսին, ու ջիսիսի 4.5.2։

crossdev --binutils 2.21 --gcc 4.5.2 --with-headers --target avr -s3

հիմա մենք ունենք /usr/bin/avr-gcc , ունենք հեդերներ /usr/avr/include-ում, ու լիբեր՝ /usr/avr/lib-ում։

Եթե խնդիր լինի քոմփայլերը օգտագործելու հետ

/usr/libexec/gcc/avr/ld: cannot open linker script file ldscripts/avr5.x: No such file or directory

ապա այն լուծվում է այսպես՝

ln -s /usr/lib/binutils/avr/2.21/ldscripts /usr/avr/lib/ldscripts

Համակարգը տեստավորելու համար քաշում ենք ինետից ցանկացած օրինակ, ասենք վազող լույսերը այստեղից քոմփայլ անում, ու լցնում կոնտրոլերի մեջ։

Երեւի կռահել եք, որ ես խուսափում եմ գրաֆիկական գործիքներ օգտագերծելուց։ Դա արվում է հարմարավետության, մասնավորապես՝ ավտոմատացման հնարավորություն ունենալու համար։ Օրինակ, այդ է պատճառը ինչու ես պատրաստել եմ avrdude-ի հետեւյալ փաթաթանը՝

#cat program.sh
PORT=/dev/ttyUSB0
M=m16
#TYPE=dapa
#TYPE=ponyser
TYPE=siprog

FILE=Running_LEDs.hex

avrdude -p $M -P $PORT -c $TYPE -U flash:w:$FILE

Թայփը սիպրոգ ա, քանի որ Հովիկը հավաքել է սերիալ պորտով աշխատող այսպիսի մի պրոգրամեր։

Լույսերը հիմա, ստորեւ բերված նկարի պես վազվզում են, սակայն ես գիֆ սարքելու զահլա բնավ չունեմ՝

[}}

Այնպես որ զգոն եղեք լույսերի հետ, նրանք կարող են նաեւ վազել։

շարունակելի

ու տենց

խցիկ՝ Canon EOS 350D  ոսպնեակ՝ Mamiya Sekor 55mm F1_4