IT Kolledžile kingiti 2003-l aastal Eesti firma Liewenthal Electronics poolt 10 arendusplaati-51Kit-i 80C51 arhitektuuriga mikrokontrollerite kasutamiseks õppetöös. Üleandjaks oli CEO Jaan Liivand.
Väidetavalt kasutati samu 51Kit-e ka Liewenthalis oma töötajate väljaõppeks ja prototüüpimisel.
Kolledžis leidsid kit-d aastaid kasutust aines "Riistvaralähedane programmeerimine", mille juures olid tegevad õppejõud Andres Mulin ja Toomas Kont.
2008-l aastal kolis IT Kolledž Rävala puiesteelt uude õppehoonesse Tehnikaülikooli linnakus. Arendusplaate siis ilmselt enam ei kasutatud, aga kaasa nad tulid ja avastati möödunud aasta (2024) detsembris suure auditooriumi all paiknevast laoruumist suvalises tähistamata pappkastis, plaatide vahel prügikastist pääsenud A4-paberid.
Ja ennäe imet - plaadid näitasid kõik elumärke - ekraanid helendasid, LED-d vilkusid ühe või teise laboritöö pärandina.
Muidugi tekkis professionaalne huvi, kuna arendusplaadid nägid sedavõrd head välja, et kas on võimalik neid praeguses päevas ka veel kasutada. Kõik on ju kenasti integreeritud - ekraan, heksadetsimaal-klahvistik, LED-d, temperatuurisensor, laiendusklemmid jne. Kolledžis õpitakse tänagi mikrokontrollereid tundma - tõsi, nüüd hoopis Python programmeerimise aines.
Siis aga selgus, et ainult 3 plaati 9-st reageeris FlashMagic kutsele - ülejäänud panid lihtsalt "tuima", mis iganes nende peal jooksis. Digiostsilloskoobi abil oli lihtne näha kuidas FlashMagic püüdis kontrolleriga suhelda, saates välja sümbolit "U" (binaarkoodis 0x01010101"), mille vahendusel lepivad osapooled kokku protokolli kiiruses (vaikimisi 9600 boodi). Lukus mikrokontroller aga ei vasta.
Dokumentatsioon tegi üsna pea pöördumatult selgeks, et ju on viga programmeeritavas käivitusvektoris (Boot Vector), mida saab FlashMagic muuta kuid ainult ISP-režiimis. Kui aga käivitusvektor ei näita enam ISP-d sisaldava ROM mälu aadressile (mis on 0xFC00, käivitusvektoris on kirjas vaid vanem bait), siis ISP ei käivitu ja ongi kogu lugu. Aitab ainult rööprogrammaator. Ju laborites olid tudengid avastanud ka Boot Vector-i programmeerimise võimaluse ja uudishimutsenud....
Üsna pea sai veebi andmetel selgeks ka see, et rööpprogrammaator on midagi eksklusiivset ja kallist, seda kasutati kiipide mass-programmeerimiseks suuremates ettevõtetes. Nüüdseks on 80C51 programmaatorid ammu tootmisest maas ja suurema tuhnimise peale e-Bayst leitud paar potentsiaalselt pakkumist ei äratanud usaldust, dokumentatsiooni ei olnud, hind aga 200€ suurusjärgus.
Aga Liewenthal Electronics toimetab Eesti elektroonikamaastikul ju endiselt! Sai siis "oma agendi", kunagise doktorandi, kes nüüd töötab Liewenthalis, kaudu ääri-veeri uuritud ja tuli rõõmusõnum! 80C51 Kit-de avastamine oli firmas vanematel tegijatel "lambi põlema pannud" ja vana kola hulgast leiti üles nii oma Kit-d kui ka programmaator. Viimane olla tõeline 'vintage'-kast, PC-XT aegse rööpliidesega, pistikplaatidega seatav konkreetse programmeeritava seadme jaoks.
Plaadid Liewenthali ja nädala pärast tagasi. Uues pappkarbis, iga Kit pakitud omaette roosasse mullikilesse. Kõik korras, Boot Vector 0xFC ja kõik reageerisid FashMagic korraldustele. Tänud! Sellist teenust ostaksid hiired edaspidigi! Arendusplaadid olid ikka nii soliidselt tehtud, et mingeid muid elektrilisi probleeme polnud ligi 20 aastat seisnud plaatidel tekkinud.
PS. Enne kui Liewenthali taas avastasin, jõudsin läbi mängida mõtte, et ehk on lihtsam hankida uued protsessorid. Tõepoolest, AliExpress neid ka pakub. Mitte küll Philips kaubamärgi all, aga NXP märgistusega. NXP on Philips-st eraldunud tegija. Üksiku kontrolleri tellimine (pakkumine oli pisut väiksema mäluga variandile - P89C662) maksis koos saatekuludega napilt üle 2€ ja panin tellimuse üles. Ja tuligi paari nädalaga nagu lupsti, mulliümbrikus, üksik kiip ladumismasina lindilt väljalõigatud jupil.
Omaette teema oli olemasoleva kontrolleri PLCC44 pesast kättesaamine. Aitas kirjaklamber, millest sai tekitada mikrokonksu ning ettevaatlikult kiipi diagonaalidest nõksutades üles ta tuli (ähh, kahe € eest saab AliExpressist ka PLCC pesade näpitsad ja nüüd on ka need tööriistasahtlis olemas). Asendasin, lihtne pesasse vajutus ... ja ei midagi - FlashMagic kiibiga kontakti ei saanud.
Kahtlustasin juba seda, et ehk on tegemist nö ladumismasina testimiseks mõeldud kiibi imitatsiooniga nn dummy-kiibiga, milles pole räni lõhnagi. Suhtlus AliExpress vahendajaga ei aidanud, see ei jaganud tehnilistest terminitest ööd-ega-mütsi. Aga kui kaardile tuli Liewenthal, läks ka see kiip kaasa. Selgus, et käivitusvektori sisuks oli 0x00. Nende rööpprogrammaator asendas vektori vaevata ja kõik toimis - ISP oli ROM-s täies ilus olemas. Tuleb välja, et aus Hiina kraam. Jälle maailm parem.
Aga mida edasi? 80C51 aeg on ümber. See oli üliedukas arhitektuur ja olid ajad, kus iga ränisuutlik tegija püüdis seda pisikeste oma modifikatsioonidega turule tuua ja kontroller jõudis ka igale poole. Küllap on praegugi hulgaliselt vanemat masinavärki ja automaatikat, mida ajab ringi üks või teine 80C51 kloon. Nüüdsetel 8-bitistel kontrolleritel on kõik parameetrid "üles tuunitud". Kiiremad, parema energiaefektiivsusega, enam taimereid, integreeritud perifeeriamooduleid, palju enam mälu, nobedam ja paindlikum arendamine jne. Ja mida neist 8-bitistest üldse rääkida - alla 16-bitise kontrolleri uutesse seadmetesse ei kavandatagi, tänased lemmiklapsed on kõik 32-bitised ... monstrumid (suutlikkuse ja keerukuse mõttes).
Ja samas, C-keel on endiselt mikrokontrollerite maailmas au sees ja uus põlvkond peab endselt kõike algusest peale õppima. Sammhaaval, lihtsamalt keerulisemale. Ja selles mõttes on 80C51-s auru veel parasjagu.
Ehk parafraseerides Andrus Kivirähk-i Aabitsakukke - kes ikka väga tahab, sellel on 80C51-st õppida küll ja küll.
K.T.
veebruar 2025