Super magnetinė lenta

Tikriausiai daugelis matė, ir manau kažkas iš skaitytojų turi tokį magnetinį gadžetą virtuvėje- metalinių įrankių laikiklį. Ten visokios šakutės ir peiliai prisiklijuoja ir panašiai. Turi ir aš namie tokia “liniuote”, tačiau ta liniuotė tikras šlamštas- kartais įrankiai nukrenta, veikia tik viena juostelė ir šiaip ji silpna.
Vieną dieną atsibeldė Linas su savo projektu- magnetinė lenta. Tačiau tokių pastiprintu- super magnetinė lenta. Skiriasi nuo paprastos tik tuo, kad naudojami gana stiprūs neodimo magnetai (šiaip “gana stirprūs” yra pasakyta labai labai švelniai).
Buvo visokių minčių kaip tai padaryti- logiškiausia matyt būtų paimti fanieros gabalą ir išgręžioti skylutes. Tačiau ta mintis kažkur pasislepė ir buvo padaryta ekstremaliai ir gana brangiai.

Taigi buvo nupirkta apie penkiasdešimt magnetėlių maždaug už 100€. Poto epoksidkės ir stiklo audinio. O poto viskas maždaug taip vaizdiškai gavosi:

super magnetine lenta irankiams peiliams sakutem petelnem
Magnetai suklijuoti prie metalinių juostų. Kadangi magnetai stiprūs, tai tos juostos pašoka ir susiklijuoja. Todėl panaudoti aliuminiai radiatoriai (kurie renkami vienam žmogui iš newsgrupo) ir keletas sunkesnių objektų.
Continue reading →

ARM:0002 arba Hello World aka mirksiukas

Pirmas darbas programuojant bet kokia programavimo kalba kompiuteryje yra parašyti “Hello World” programą. Visokiuose mikrokontroleriuose tai mirksiukas. T.y. kažkokia koja turi mirksėti kažkokiu priimtinu ir detektuojamu dažniu. Nu koja nemirksi, bet koks nors šviesos diodas tai tikrai. Labiau “advanced mirksiukas” tai mirksiukas kuris reaguoja į kokį nors išorinį vaiksmą. Šiuo atveju į kitos kojos būklę.

SAM7 mikrokontroleris turi gana daug kojų. Kai kurios turi ne vieną paskirtį. Tačiau męs čia giliai nekapstysim- PA1 koją panaudosim kaip išėjimą, o PA2 kaip įėjimą. Mano PCB visos kojos išestos į standartinio (0.1″) žingsnio skylutes. Pačios skylutės kiek didesnio diametro, tai ten puikiausiai laikosi oscilografo čiupiklis.
Kol kas nesinagrinėjau aš to MCU hardwarės, tai nieko protingo nepadariau- tik užprogramavau vieną koją išėjimui. Kitos tikriausiai pagal nutylėjima pasidaro kaip įėjimai. Kaip ten organizuojami pull-up aš nežinau, bet po standartinės inicializacijos viskas veikia.

Kuo šitas skiriasi nuo paprastos ATMEGOS iš softo pusės? Dar nežinau daug, bet pirmas bugas kuris man pasirodė nesuprantamas, tai kad reikia paprogrames daryti STATIC. Jei neparašai, viskas susikompiliuojasi, bet kažkaip neveikia. Čia jau aš dar nesupratau. Dar klaustukas dėl VOLATILE kintamųjų. Bet kadangi viskas nudrožta nuo oficialaus Atmelio pavyzduko, tai matyt taip turi būti.

ARM mirksiukas
Softas veikia taip- amžinam cikle sėdi kitas ciklas kuris skaičiuoja pauzės dydį. Nuo minimalios iki kiek didesnės. Nuo PIN2 reikšmės priklauso pauzė vienokia ar didesnė 10 kartų.
T.y. kai nenuspaustas (kaip foto) pauzė keičiasi nuo 0 iki 9*5 tuščių ciklų. Pauzė ir mygtuko tikrinimas daromas prieš kiekvieną signalo pokytį.

Per nuotraukoje apibrėžtas 800ns įvyksta: signalo pakeitimas iš 0 iki 1, mygtuko reikšmės nuskaitymas per paprogramę, pauzės skaičiavimas =0*5*1, pačios pauzės paprogramės iškvietimas ir nepavykęs for ciklas, važiavimas atgal iš paprogramės ir signalo pakeitimas iš 1 į 0.

Taktinis procesoriuko dažnis kažkoks defaultinis skirtas USB. Kažkur apie 48MHz. Bent jau toks turi būti. Čia jau labiau patyrę turi pakomentuoti ar gerai man gavosi.

Ir aišku: Source code ir hex.

ARM:0001, softas

Jau praėjo kelios dienos nuo pirmo bandymo. Iki tol aš net neieškojau softo, nes tikėjausi, kad gamintojas turi pilną free paketą. Deja aš klydau.
Teko biški pasukti galvą… Prie J-Link, kinai pridėjo warezų kompaktą, kuriame buvo Segger programinė įranga kuri dar dirba su mano padirbta hardware. Kiek supratau iš visokių forumų, naujausias softas jau žino, kad tai kiniškas reikalas ir užsilenkia. Todėl J-Linkas dirba su senu softu- versija tikriausiai ARM V4.64a.
Dar tame kompakte buvo crackai, serial generatoriai visokiems komerciniams ARM kompiliatoriams ir toolchainams. Buvo mintis tai daryti, bet kažkai užsimiršau aš apie tą kompaktą ir pradėjau guglinti. Keli rusiški forumai ir pats guglė išmetė tokį dalyką kaip YAGARTO, sprendžiant iš to, kad softas guli sourceforge, tai jis tikrai free. O last update stovi 2013-04-24 , tai vadinasi kažkas dar dirba su šiuo paketu. Ir dar gerai, kad šitas paketus turi kažkokį installerį kuris viską sumetą į windows kietą diską.
Tačiau tai plikas command line įrankis. Tačiau gal man tai ir patiko, nes man kiek nepatinka eclipsė (ypač prisiminus kaip ji gliučino ant seno kompo). Kaip gi tada tuom paketu naudotis? Ogi pas mane yra suinstaliuotas WinAVR paketus, kuriam buvo susiinstaliuotas “make” ir man jau įprastas “programmers notepad”. Vadinasi teoriškai “make” turi veikti. Nusikroviau “mirksiuko” projektą iš interneto. Ten rodos oficialus pavyzdinis projektas SAM7S64 procesoriukui.
Pasileidžiam make ir … vaje neranda mano gcc tinkamo. Reikia pakeisti biški makefile:

Iš:

# Define programs and commands.
SHELL = sh
CC = arm-elf-gcc
CPP = arm-elf-g++
OBJCOPY = arm-elf-objcopy
OBJDUMP = arm-elf-objdump
SIZE = arm-elf-size
NM = arm-elf-nm

Į:

# Define programs and commands.
SHELL = sh
CC = arm-none-eabi-gcc
CPP = arm-none-eabi-g++
OBJCOPY = arm-none-eabi-objcopy
OBJDUMP = arm-none-eabi-objdump
SIZE = arm-none-eabi-size
NM = arm-none-eabi-nm

Dabar padarius make, atsiranda hex failas. Valio.
Bet čia 64 kilobaitų procesoriukui. Maniškis šrotas turi kiek daugiau- 256kb.
Iš visokių oficialių ir neoficialių puslapių ir projektų susirankiojau reikalingus failus:

AT91SAM7S256-RAM.ld, AT91SAM7S256-ROM.ld, at91sam7s256.h, lib_AT91SAM7S256.h. Tuo tarpu Cstartup.S ir Cstartup_SAM7.c tiko iš mažesnio procesoriuko. Nu dar make file ir dar kažkur reikia pakeisti 64 į 256 failų ir MCU pavadinimuose. Ir mirksiukas vėl susikompiliavo.
O minėtą hex failą sumaitino J-Linkas į mikroschemą ir oscilografas parodė, kad tikrai kojos kaitaliojasi pagal mano norus. Tiesa ne iš karto.

Tai tiek buvo sugalvota per tuos du ar trys vakarus. Tiesa paskutinis vakaras buvo tūpai praleistas debuginant ir krapštant galą. Tiesiog ten kažkaip nesigavo ir manau tai aprašysiu sekančiam poste, kur busi minima pirma programa.

ARM:0000?

Viskas prasidėjo, kai mano labai labai senas pažįstamas vardu Edvardas paskambino ir be kitų šnekų pasiūlė “įdomių daikčiukų” paardymui. Tai buvo šie keisti USB gadžetai:

ARM
Tai yra siuntos monitoringo aparačiukai. Kiek supratau šitas aparačiukas monitorino tiktai temperatūrą. Įjungus į USB jis paprašė instaliuoti draiverius, tai toliau aš nevargau. Edvardas sakė, kad su specialia programa sugeneruojamas Excel failas su temperatūros grafiku.
Continue reading →

Ekskliuzyvas tipo

Kadangi vėl važiuoju į Albioną, tai nelabai ką parašysiu šiuose puslapiuose. Gal kitą savaitę, kai parsibelsniu atgal. O dabar, kad užpildyti spragą:

Algirdukas tvarkė kažkokius senus sandėliukus ir atnešė man pažaidimui ir sulaužymui senovišką raritetą ir ekskliuzyvą- Panasonic M40 VHS camcorder. T.y dyyyydelė kamera į kurią kišasis VHS kasetės.

Panasonic M40
Continue reading →

Atmazkė

Šiuo metu biški programuoju, o savaitgalyje dalivausim “gudručiu žaidime” Palangoje, tai tikrai nebus kada rašyti straipsniuką. Todėl, kad kažkas visdėlto pasirodytu mėnesio pirmą dieną, parašysiu tokį foto straipsnį. O kompiuteris automatiškai jį įpostins.

Mūsų kontora nusipirko kiektai analoginės televizijos. Tiksliau senų TV siųstuvų gabalus. Šiaip tai labai neįdomi masyvi technika. Bet šiaip gal bus įdomu.

Seni siųstuvai aišku lempiniai, o lempom reikia daug voltų ir daug amperų. Gaunasi toks gigantiškas reikalas. Įtampa gaminama paprastais trifaziais trafukais, išlyginamas didžiulėm batarėjom paprastų diodų (jokios egzotikos, tik daug daug mišriai sujungtu diodų), o pulsacijos slopinamos kondikais. Paprastučiais tokiais:

Kondikai
Kad suprasti kokio dydžio kai kurie kondikai, šalia nufotkinau ir savo kojytę, su dulkinu, 45 dydžio bateliu.
Continue reading →

Darbinis įrankis

Apie Z ašį jau pašnekėjom. Prie jos galima tvirtinti įvairius instrumentus- kokius nors klijų pistoletus, drėlytes “ala dremel“, tušinukus, repitografus, flamasterius ar savadarbius instrumentus.
Kadangi turimas grąžtelis Hobby Drill dažnau naudojamas kaip rankinis instrumentas, tai nutariau pasidaryti savo frezavimo įrankį. Pirmiausia reikia pagalvoti kokios jėgos veikia frezą tokiose CNC staklytėse- gana stipriai stumiamas į šoną ir dar neturi vaikščioti aukštyn žemyn.

motoriukai
Continue reading →

Z-ašis

Pabandysiu paaiškinti, kaip aš dariau savo staklytes. Kadangi dariau be brėžinių, tai nelabai yra ką parodyti. Todėl biški papaišiau tokių “IKEA” stiliaus paveiklsiukų.
Iškarto pasakau, kad tai pirmas blynas ir konstrukcija turi rimtų trukūmų. Bandysiu tas problemas aprašyti eigoje.
Taigis, Z ašis. Šios ašies eiga mano prietaise minimali- gal kokie 5 cm. Ilginant eiga atsiras stabilumo ir tvirtumo problemos.
Surinkti šią detalę geriausia ant “U” profilio, tačiau tokio man tinkamo nebuvo, todėl surinkau iš dviejų “L” profilių.

Z-axis
(pasididinti IKEA tipo instrukcijas)

Continue reading →