Odin D. Mlađi referent za automatizaciju samoupravljanja
Član broj: 37292 Poruke: 2549
|
Za siklosi-ja:
Koliko sam mogao zakljuciti iz tvog pitanja, pretpostavljam da se nalazis na samom startu bavljenja mikrokontrolerima, pa cu prema tome da dam svoj odgovor.
Skoro da je svejedno koju ces marku mikrokontrolera odluciti da proucavas. Ono sto ce u datom momentu da prevagne je cena, dostupnost chipova, dostupnost primera ili neka druga osobina koja nije u direktnoj vezi sa znanjem koje nastojis (ili bi trebalo) da steknes.
A ako se nekad budes time profesionalno bavio, najcesce ces dolaziti u situacije da ti
poslodavac, narucilac projekta ili neko treci diktira marku mikrokontrolera koja ce se
koristiti, a oni ce pak o tome donositi odluku s obzirom na cenu, dostupnost, vreme
razvoja i sl.
Svi mikrokontroleri su spolja gledano slicni jedni drugima: to je chip sa odredjenim
brojem elektricnih izvoda (pinova). Neki pinovi su ulazni (preko kojih mikrokontroler cita
podatke), neki su izlazni (preko njih "izbacuje" podatke u spoljni svet), neki mogu biti i
ulazni i izlazni i sl. Neki mikrokontroleri u sebi imaju ugradjene razne druge uredjaje
(AD i DA konvertore, serijske i paralelne interfejse, itd.). Mikrokontroler radi prema
programu koji u njega upises. U zavisnosti od konkretnog primera biras koji mikrokontroler ces da iskoristis.
Medjutim, ono sto je bitnije da naucis je kako da realizujes mikrokontrolerske sisteme
koristeci neki opsti tip mikrokontrolera. Kada to naucis, bice ti svejedno koji chip se
koristi u tvom sistemu - uzeces Data Sheet za dati mikrokontroler, pogledati rhitekturu i instrukcije i raditi bez problema.
E sad, ono sto bi zaista trebao da naucis ako mislis time da se bavis je sledece:
-osnovna kola digitalne elektronike (logicka kola, flip-flopovi, A/D i D/A konvertori, brojaci, timer-i, koderi, dekoderi, multivibratori,...). Ne treba da ucis njihovu unutrasnjost, vec samo funkciju jer su svi manje vise dostupni kao gotove
komponente (uostalom, u danasnje vreme se uglavnom realizuju softverski u programu
mikrokontrolera),
-osnovne stvari o digitalnim signalima: visok nivo, nizak nivo, uzlazne i
opadajuce ivice, margine suma, trajanje, glitch-evi,...
-osnovna obrada digitalnih signala: diferenciranje uzlazne i silazne ivice,
produzenje i skracenje trajanja signala, eliminacija glitch-eva, hardversko i softversko
debaunsiranje,...
-osnovne nacine prenosa podataka: magistrale (adresna magistrala, magistrala
podataka, multipleksirana,...), paralelni prenos, serijski prenos, simplex, poluduplex, duplex veze, sinhroni prenos, asinhroni prenos, kvazisinhroni prenos,...
-memorija, adresiranje,...
-programirani ulaz/izlaz, poliranje i mehanizam prekida,
-interfejsi (serijski, paralelni,...),
-relei, optokapleri, tasteri,
-portovi,
-baferisanje linija za prenos,
-watch-dog-timer i time-out logika,
-i razne druge specificne teme koje se mogu javiti u tvojim projektima (multipleksiranje tastature, LED i LCD displeji, razni enkoderi, mehanizmi merenja brznina, A/D i D/A koverzija itd...)
Kada dobro ovladas ovom materijom (iako izgleda tesko na prvi pogled u sustini uopste
nije, samo ga ima dosta kvantitativno) izbor mikrokontrolera ce ti biti poslednja rupa na svirali.
Sem toga treba da naucis kako da "dobro" projektujes svoje sisteme, a to znaci:
-da obavljaju funkciju za koju su namenjeni,
-da budu pouzdani (otporni na razne smetnje iz okoline i na budalastine korisnika),
-da se lako odrzavaju,
-da se lako nadogradjuju,
-da budu jeftini
-....
E sad, kako sve to postici? Kao sto rekoh mozes da uzmes bilo PIC bilo AVR i neku od tih knjiga iz Microelektronike, cisto da te malo stimulisu u startu. Medjutim, knjiga o PIC-u npr. se bavi nekim jednostavnim primerima kakvi se u praksi retko srecu. To su samo mali parcici koji su u praksi delici delova ozbiljnijih sistema i odatle neces steci kompletnu sliku o cemu se tu radi (odnosno o cemu sve tu moze da se radi). Zato ces morati da potrazis neku uvodnu literaturu u nesto sto se zove EMBEDDED SYSTEMS (pisem na engleskom jer, koliko ja znam, ne postoji nista takvo na srpskom). Bilo bi dobro da ta knjiga ili sta vec nadjes pokriva ono sto sam gore naveo.
A sto se tice PIC-a ili AVR-a oni nisu bas najsretnije resenje, vec vise nuznost jer su
najdostupniji kod nas na trzistu, a eto ima i nesto literature. Medjutim njihova arhitektura je DOSTA losija od npr. mikrokontrolera Texas Instruments-a koji su za klasu ispred njih. Texas Instruments je dosledno postovao sankcije prema nasoj zemlji te su se njihovi kontroleri teze nabavljali, pa su u tom smislu preovladali PIC-ovi i slicni, medjutim sada se TI opet vraca na ovo trziste i nije ih problem nabaviti. U svakom slucaju za prakticne realizacije preporucujem TI. Uz nesto literature koja se mogu skinuti sa njihovog sajta nije problem baciti se na njih, a mislim da je to smislenije uciti nego PIC ili AVR ako bas ocemo nesto da ucimo.
Pozdrav.
|