Felch’i kodukas

PICutamine

Microchip’i protsessor PIC on vahva riistapuu: tal on sees piisavalt “rauda” ja käsustik mõnus lühike. Hea selgeks õppida.

Järgnevas lühiülevaade PICi kivisest sisust ja tema progemisest. Siin on tekst (OO 1.0 formaadis) ja siin M$ Powerpointi esitlus. Näidisproged jooksevad pisikese ja lihtsa maketi peal.

1. projekt— vilgutame kahte LED’i

2. projekt— sama kuid kasutame taimerit

3.projekt— kuidas PICiga muuta sujuvalt lambi heledust või mootori kiirust

4.projekt—juhime LCD-displeid

5. softiliselt kõige keerukam projekt—võtame vastu IR-puldi käske.

Kogu krempel ühe arhiivifailina.

 

Kontaktivabade (RFID) kaartide lugemiseks on vaja lugejat ennast (odavaimad on “Rosslare”, mida nägin STA-tehniks-is müügil umbes 600 raha eest).  Lugeja väljastab daatat enamasti nn. (26.bitises) Wiegandi formaadis. Formaadi ülddine selgitus on siin (vt. lk. 2). Praktika näitab, et pdf-is märgitud ajad on vaid sellele konkreetsele lugejale iseloomulikud. Teised tekitavad hoopis teistsuguste kestuste jakaugustega pulsse. Tööstuslikud Wiegandi konverterid maksavad mõttetult palju raha aga saab ka lihtsamini—PIC12F629’ga (kood assembleris ja MPLABi projektifailid).

PIC väljastab kaardi koodi kiirusega 4800 bd. Eelduseks see, et viik enable (vt. koodi listingut) on kõrge (võib ühendada toitesiiniga).

 

Bootloader MMC-kaardilt. Töötab protsessoril PIC18F452 (või üldisemalt—18-seerial). Taktsagedus: 8MHz*4 (sisemine PLL)=32MHz (ei ole proge jaoks oluline). MMC-kaart peab olema FAT16 formaadis ja laetav (Intel hex formaadis) koodifail peab olema juurkataloogis (ehk siis alamkatalooge ei toetata.

Loader asub aadressil 0x7000 ja ta ei lase ennast üle kirjutada. Väljakutse: goto errorloader. Siis laeb esimese kettalt leitava faili nimega codexxxx.hex. Esimese asjana kustutab loader kogu flashi (kuni 0x7000) tühjaks ja kirjutab aadressile 0x0000 käsu “goto errorloader”. Kui nüüd flashimise käigus vool kaob või on fail vigane või paneb keegi kaardi pätcu, tehakse reset ja üritatakse uuesti flashida...kuni õnnestub.

Eduka flashimise puhul taastatakse kettalt laetud kasutaja koodi 64 esimest baiti ja tehakse reset.

Lähtekood assembleris (no milles veel ;) ) ja kompileeritud hex-fail ühes arhiivis. Free for everybody...

 

Koodide vigadest ja parandamise ettepanekutest võib alati kirjutada: felch@staff.ttu.ee

 

Kena PICutamist!

Esileht

Jutud “Praktilises Arvutikasutajas”

Jutud “Horisondis”

Akva staff

PICutamine

Lendavad asjad

Koolitööd

Tudengitele

(Praktiline elektroonika)