[ kova1 @ 18.01.2010. 00:54 ] @
Pozdrav

Programiranje PIC mikrokotrolera mi deluje zanimljivo, pa bi hteo da naucim nesto o njima i da napravim poneki jednostavniju uredjaj sa nijima.Sto se tice programiranja C,Pascal znam (programer sam po struci),ali za desktop programiranje.A sto se tice elektronike imam pomoc jednog elektricara/elekronicara.E sad koji PIC preporucujete za pocetak ucenja?
Nabavio sam delove potrebne za AllPIC programator i to cu sastaviti u skorije vreme.

Unapred hvala
[ bogdan.kecman @ 18.01.2010. 06:20 ] @
PIC18F23K20 ili 18f2550 u kombinaciji sa microchip C18 C kompajlerom. ako bas oces pascal www.mikroe.com ima odlican pascal compiler al nije dzaba

sve zavisi sta hoces da testiras

p.s. i nemoj da gubis vreme sa allpic programerom, kupi/sastavi pickit2 - imas ga za 20E a radi sa svim mogucim picovim i radi kao icsp i radi na usb-u
[ korak @ 18.01.2010. 10:32 ] @
Ni jedan.
[ ZZIKA @ 18.01.2010. 11:15 ] @

Za početak uzmi 16F84 ili 16F628.

Za njih imaš mnogo već urađenih početničkih projekata na NETu, a i velik broj primera i uvoda u programiranje PIC mikrokontrolera počinje baš sa njima.

Možda nije loše da za početak uradiš nešto u PIC BASICu - čisto da dobiješ malo samopouzdanja u programiranju i da stekneš malo više znanja o PICevima. Kasnije pređi na C, a na Pascal zaboravi - neće ti biti od velike koristi - bar što se PICeva tiče.

AllPIC ti preporučujem kao prvi programator, jer je jednostavan i ne može da omane (ukoliko ga napraviš kako treba i ukoliko koristiš napajanje od nekih preko 15V (15 do 24 je OK).

Obavezno pročitaj neku knjigu o osnovama rada sa PICevima. Upoznaj se sa podacima (skineš PDF) za određeni PIC koji želiš da programiraš i to je to.

Polako kreni - bez megalomanskih očekivanja i polako usvajaj znanje. I ne odustaj kod prve prepreke. Upornost se uvek isplati.

Ti si po tvom postu tanak po pitanju hardvera i tu ćeš imati dosta problema. Ali ... rekao si da imaš pomoć nekog elektroničara, pa će ti u početku ona mnogo značiti - ukoliko je čovek kompetentan i poznaje tematiku. U protivnom - zaboravi na programiranje mikrokontrolera.

[ kova1 @ 18.01.2010. 13:39 ] @
Hvala svima na odgovorima.
Sho se tice hardvera elektrotehnicar sam pa znam teoriju oko eletronskih komponenti koliko mi je ostalo u secanju iz srednje skole(nisam paravio nikakve elektronske uredjaje),ali otkad sam upisao fax nisam se zanimao za elektroniku ali drug zna dosta pa ce mi pomoci.

Jos jednoh hvala.
[ branko_g @ 18.01.2010. 13:44 ] @
korak wrote:
Citat:
Ni jedan.


Ja bih ipak preformulisao troje pitanje "Koji mikrokontroler za početak?".
PIC je samo jedan od mogućih odgovora, sve zavisi od od tvojih potreba i koliko
ozbiljno misliš da se baviš mikrokontrolerima.

[ ZZIKA @ 18.01.2010. 14:01 ] @

Manite se ljudi filozofije - čovek hoće da uđe u svet mikrokontrolera i za sada mu je jedina potreba da uđe u svet mikrokontrolera i nauči nešto novo. Bar sam ja to tako shvatio.

A kada nauči - lako će se on preorjentisati na ono za čim tada bude imao potrebe.

Neka krene sa malim, jednostavnim i jeftinim, pa ako shvati da nije on za to - nije se previše ni istrošio, ni previše vremena izgubio. Ukoliko se opredeli da nastavi sa mikrokontrolerima - već će imati neko osnovno znanje da i sam zaključi šta mu je potrebno za dalji rad.
[ kova1 @ 18.01.2010. 14:08 ] @
Pa citao sam ranije i o PIC i AMR kontrolerima i o intelovim 8051 kontrolerima,pa sam zakljucio da je lakse kod nas naci stvari vezane za PIC(ispravite me ako gresim).

Za sada da mi to bude hobi (nije mi primarna profesija) ali ako budem imao vremena mozda i nesto vise.
Hteo sam da pravim neke jednostavne robote,nista veliko samo osnovno pa da mu kontroloer bude mali mozak(opet kazem osnovno,nikakvi veliki projekti).

@ZZIKA hvala ti i upravu si ja sam samo citao i ne znam kakve su razlike izmedju mikrokontrolera razlicitih proizvodjaca a ponajmanje koji mikrokotntroler je za sta.
Kad i ako napravim jednostavne seme za naprimer merenje temperature ili nesto slicno videcemo dalje.

Hvala svima.
[ bogdan.kecman @ 18.01.2010. 14:10 ] @
da je pitao koji mikrokontroler, ja bi mu savetovao MSP430F249 ili TMS470A256 ili AT91SAM7A2 (mada su ova dva arm-a nezgodna ako nikad nije radio sa uC-om)... ako pocinje, bolje odma da se baci na nesto kvalitetno ... nikako ne bi preporucio da krece sa 16F smecem bez obzira koliko ima literature ... ima i za 386+win3.0 mnogo vise literature nego za danasnje masine pa nikome ne preporucujete da "pocne da se bavi racunarima sa 386 masinom na 16MHz i 1M RAM-a"
[ bogdan.kecman @ 18.01.2010. 14:26 ] @
Citat:
kova1:  zakljucio da je lakse kod nas naci stvari vezane za PIC(ispravite me ako gresim).


kod nas (a i inace u hobi krugovima) su ATMEL i PIC prilicno identicno zastupljeni i identicno moze da se nadje i resursa na netu i opreme u lokalu i ljudi koji nesto znaju / oce da pomognu. primera i za jedne i za druge imas koliko oces.

iz nekog nepoznatog razloga, postoji neki amiga vs pc like rat izmedju ljudi koji trose pic i ljudi koji trose atmel, ovi sto trose atmel tvrde da je pic igracka, a ovi sto trose pic tvrde da je pic "bolji" ...

ja kada sam kretao krenuo sam sa pic-om zato sto mi je bilo jasnije po imenu kontrolera sta je koji (10F, 12F, 16F, 18F, 24F, dsPic, 30F, 32MX ..) i imao sam neki DLP usb kontroler (ft232 + 16f877a) i to je prelomilo ... sada mi je taaaako svejedno, uzmem onaj koji imam u fioci ili onaj koji mi se ucini ok za posao za koji mi treba ... a u medjuvremenu sam skontao (uopste nije bilo tesko) i nomenklaturu atmel-a .. tako da .. da sad moram da opet odlucim dal bi pic ili atmel - ko zna sta bi odlucio .. (a ovi sto navijaju, samo neka nastave da navijaju :D ) .. hardware u oba je prilicno drugaciji no realno, za "jednostavne projekte" u "malo komada" - bas te briga ... programiras u visokom jeziku, ne zanima te koliko instrukcija, koliko flesha, dal ima 3 ili 33 registra i dal kosta 4 ili 5$ .. pustis kompajler da se brine o tome :) ... ako je sporo - dodas 0.1$ i uzmes brzi model sa vise rama ..

ako oces pic, ja ti savetujem da krenes min sa 18F serijom i odma sa C18 kompajlerom (koji je dz i koji pravi ista firma koja pravi i sam uC), ako oces atmel moj savet za start je ATmega644P. ako oces malo vise od hobi-a, TI MSP430F2xx ...

e sad, ako hoces da se bavis time "profi", da pravis "velike serije", da pravis za "industriju", mani se hobi uC-a i obrati paznju na one "ozbiljne" ... samo za njih ti sve kosta za klasu vise nego za ove hobi ... (ozbiljan C kompajler za motorole kosta bubreg i levo plucno, no vecinu razvoja ces verovatno raditi u asembleru svejedno) i tu dolaze motorole, ti i ostali "veliki igraci" za koje mi hobisti vecma nismo ni culi ... imas ovde par ozbiljnih likova sa ozbiljnim znanjem i iskustvom u induistriji koji ce ti vrlo rado pomoci ... (ja nisam od tih .. ja se drzim hobija)
[ introitus @ 18.01.2010. 16:57 ] @
>
Takodje preporucujem 18F seriju, vise nema potrebe/smisla pocinjati sa 16F.
Sve sto ima na netu, a radjeno je za 16F, lako moze da se prepravi da
radi na 18F ako je to nekome bitno.
Ne koristim C, ali koliko znam 18F su optimizovaniji od 16F za isti tako
da je to razlog vise da se krene sa 18F, a ne sa 16F.

>�ݭ�
[ Darko_zed @ 18.01.2010. 17:22 ] @
Ipak glasam za 16F ,jer sam pocetnik koji je i po nesto naucio ,a takodje kao sto kazete na netu ima puno primera bas sa ovom 16F serijom i zasto ga prepravljati na 18F u samom startu ako jos nije osnovu savladao ,ima vremena za to .Meni je makar ovako lakse bilo jer sam iz brdo primera dosta naucio i prakticno probao ,a tako se uci najbolje .I to 16F628 zbog sasvim solidnog PIC-a za pocetnika a i cene ,a i 12F675 zbog vezbe sa A/D konverzacijom ,a i on nije skup ,ili oba u jednom 16F877 koji kosta koliko ova dva zajedno ali je mocan. Poz to je samo moje misljenje
[ gojnik @ 18.01.2010. 19:05 ] @
PIC 16F84, 16F877 i programiranje u asembleru ako želiš nešto da naučiš za početak.
[ Odin D. @ 18.01.2010. 19:53 ] @
"Brdo primjera" nije nikakav razlog za odabir familije mikrokontrolera.
To je mozda mogao biti neki razlog prije 15 godina, sada ima brda na sve strane.
Uostalom, nece valjda covjek proucavati brda i brda primjera - kad bi zavrsio?!
Potrebno je svega nekoliko kvalitetnih, a ne brda svakakvih. U tom smislu bolje je imati jednu kvalitetnu knjigu nekog renomiranog autora nego se zamajavati morem programcica kojekakvih hobista-amatera ko' i sam sto je.

Kvalitet znanja ovisi o kvalitetu, a ne o kvantitetu materijala iz koga se uci.
[ Darko_zed @ 18.01.2010. 20:46 ] @
Imam i ja brdo knjiga na engleskom svakakvih autora i razlicitih prirucnika sa primerima u njima ali nije bas sve tako kao sto kazes ,i ja sam tako mislio kupim knjigu PROGRAMIRANJE MIKROKONTROLERA ZA POCETNIKE i cepaj bato ali nije to to u njoj sve lepo pise i objasnjeno sa primerima ali ipak ako si apsolutni pocetnik treba malo i konkretnih primera i nekoga ko ce ti objasnjavati procese korak po korak .Nije stvar samo u pisanju programa nego i poznavanju same strukture PIC to sam video iz svog iskustva i svojih primera koliko nisam znao sta je sta dok mi neke stvari nije objasnio Sinisa .Poz.
[ korak @ 19.01.2010. 13:51 ] @
Ima razlicitih pocetnika:

1. Pocetnik koji je kao pao sa Marsa i nema pojma o nicemu
2. Pocetnik koji prvi put pocinje da radi sa mikrokontrolerom ali je kao hobista naucio nesto o digitalnoj elektronici i zna osnove strukture mikroprocesora
3. Pocetnik koji je fakultetski obrazovan na elektrotehnickom ili elektronskom fakultetu, ali nije nikada radio prakticno sa mikrokontrolerima

Ovaj prvi mora da dostigne nivo drugog, pa tek onda da razmislja o mikrokontroleru sa kojim ce da radi. Onda mu ne treba brdo primera sa interneta, najbolje je da za 2 do 3 familija izabere reprezentativne tipove mikrokontrolera i da se opredeli na osnovu datasheet-a proizvodjaca. To je sva mudrost

Za trece je sramota da su u dilemi, oni sami treba da su u stanju da izvrse izbor.

[ bogdan.kecman @ 19.01.2010. 14:19 ] @
Citat:
korak: Ima razlicitih pocetnika:

1. Pocetnik koji je kao pao sa Marsa i nema pojma o nicemu
2. Pocetnik koji prvi put pocinje da radi sa mikrokontrolerom ali je kao hobista naucio nesto o digitalnoj elektronici i zna osnove strukture mikroprocesora
3. Pocetnik koji je fakultetski obrazovan na elektrotehnickom ili elektronskom fakultetu, ali nije nikada radio prakticno sa mikrokontrolerima

Ovaj prvi mora da dostigne nivo drugog, pa tek onda da razmislja o mikrokontroleru sa kojim ce da radi. Onda mu ne treba brdo primera sa interneta, najbolje je da za 2 do 3 familija izabere reprezentativne tipove mikrokontrolera i da se opredeli na osnovu datasheet-a proizvodjaca. To je sva mudrost

Za trece je sramota da su u dilemi, oni sami treba da su u stanju da izvrse izbor.


AMIN!!!

inace za ove koji misle da moras da znas kako radi xt i da poznajes asembler za 8086/8088 da bi mogao da programiras desktop aplikaciju na windows7 i xeonu .... razmislite jos jednom ..
[ korak @ 19.01.2010. 14:43 ] @
Mislio sam da se podrazumeva,
mislim samo na 8-o bitne mikrokontrolere.
[ Darko_zed @ 19.01.2010. 15:24 ] @
Nazalost trecih je najvise ,imam par drugara koji su zavrsili fax i znaju oni sve ,pricu sloze mislis da je doktor nauka a kada treba nesto u praksi da se prenese iz prica eto njuh kuc kuc na vratima ili vidis ovakva pitanja po forumima .Druze poceo sam ja da padam sa marsa odavno i nikako da se prizemljim ali usput i naucih po nesto:):)Pozdrav
[ korak @ 19.01.2010. 16:05 ] @
Pa i ja sam taj "marsovac".

Diplomirao sam elektroniku - telekomunikacije, a magistrirao tako sto sam napravio bit-slajs 16-to bitni racunar za graficku simulaciju u realnom vremenu. Dakle, na telekomunikacijama sam samo fakultativno nesto mogao da se informisem o racunarima, a sve ostalo sam naucio kroz rad.

Nasa profesija je takva da se stalno uci, i sada ucim. Ali nikada nisam nista gotovo skinuo sa interneta, sve sam radio na osnovu datasheet-a. Cak i USB za mikrokontroler sam tako uradio. Kako, uostalom, da izvuces maksimum iz svog mikrokontrolera ako ga ne poznajes dobro. ES je pun pitanja tipa skinuo sam kod od negde, ne rad i sta sad?

Koliko vremena utrosis da proradi neki skinuti kod, ako proradi kazes odlicno, ali nisi nista naucio. Ako ga napises sam, mozda ces utrosti vise vremena od onog skinutog u slucaju kada ne radi odmah, ali ces dobro nauciti, recimo serijsku komunikaciju. Onda, posto si je savladao, mozes da je menjas i prilagodjavas raznim aplikacijama.

Nikada nisam bio hobista, ali te ljude zamisljam kao fanatike koji zele da sto vise saznaju i u nedostatku nekih znanja mnogo eksperimentisu. Mnogi od njih su postali majstori za mikrokontrolere, ali vidim da na ES, zahvaljujuci internetu, ima sve manje takvih hobista. Zapazio sam jedan broj ljudi na ES, da im ne pominjem imena, koji zaista znaju sve o mikrokontrolerima, ali stvarno ih je malo.

Kada neko pita: pocetnik sam, sa kojim PIC-om da pocnem, na takvo pitanje nema pametnog odgovora. Pre 20 god pocinjalo se sa 8031 pa nadalje kako su se vremenom pojavljivali drugi mikrokontroleri pocinjalo se sa onim koji su najsavremeniji. Danas poceti sa PIC-om je vrlo problematicno. Bilo bi dobro da neko da performanse za nekoliko mikrokontrolera i na osnovu toga da se pocetnici opredeljuju. To bi bio jedini ispravan put.
[ Darko_zed @ 19.01.2010. 17:26 ] @
Pa gde si ti "vanzemljaku" sto se ne javljas ja mislio da sam sam:):)doduse i iz komsiluka smo Aleksinac.Mikrokontrolerima sam poceo tek od skoro da se bavim konkretno pisanjem programa ustvari jos ucim ali sam vec neke stvari lepo savladao i napravio par zanimljivih stvari sam samcijat i lepo sve to radi mada ima tu jos toga da se nauci i procita itd.Nisam zavrsio fakultet vec srednju skolu elektrotehnicku i krenuo na specijalizacuju autoelektronike sto me je i skroz povuklo u drugom smeru kako sam dublje zalazio u svet elektronike mada me je to privlacilo mislim od rodjenja.Prvo pojacalo sam napravio sa 15 god.,toki voki ,popravljao autokasetofone koliko sam znao u to vreme ,motao trafoe,pravio pcb plocice itd itd. znaci jos i srednju skolu nisam zavrsio(96'god) a vec skupljao brdo literature raznih knjiga elektronike ,elektrotehnike i cak imam sve strucne knjige i vezbe elektronskog fakulteta za sve god(i danas se ne mogu pomiriti sa tim sto nisam zavrsio fakultet ,ali mladost ludost pogresno drustvo i odose god,i sta ces sada idem tezim putem sve ucim bez ikakve osnove ali uspesno).
Meni su konkretno primeri bili dovoljni da vidim postupke ,fore programiranja i tako to a ne da bukvalno kopiram ceo projekat nekoga pa da se zezam sa tim.Drugar mi je pisao programe uglavnom kada bi mi nesto trebalo da resim u vezi automatike ,kracim i laksim putem sa mikrokontrolerom ali on radi sa Atmelom ,a meni se vise svidja pic iz neobjasnjivih razloga a znam skoro sve o atmelu strukturu samog procesora.Nadam se da cu ga za par god izuciti bas ono da kazem ja "znam" pic do detalja ali otom potom ,za ovako kratko vreme sam zadovoljan koliko sam uspeo da predjem gradivo i nesto od toga da prakticno realizujem uspesno,naravno uz pomoc ljudi ovde sa foruma koji me usmeravaju na pravom putu kada zalutam i zahvalan sam im za to.poz
[ korak @ 19.01.2010. 18:18 ] @
Nemoj da zalis sto nisi zavrsio fakultet. Tamo se ionako malo posvecuje paznja mikrokontrolerima, a od predavanja o programskim jezicima nema neke koristi jer i sam to mozes da naucis. Tamo se ne dobija sustinsko znanje jer nema prakticnih predavanja, a i kako bi ih bilo, cak i da su opremljeni, nema profesora za takvu vrstu predavanja.

Nemoj da budes pesimista, kakve 3-4 godine da savladas PIC. Za to vreme ce se mnogo sto sta promeniti u oblasti mikrokontrolera. Moras da naucis nekoliko stvari koje su opste za sve mikrokontrolere, i onda ce ti svi biti jednaki:

1. Struktura racunara, za kontrolere to je struktura koja povezuje CPU, RAM i Flash i kako ona funkcionise.
2. Struktura i funkcija tipicnih internih modula mikrokontrolera: tajmer, ADC, SPI, SCI, IIC.
3. Specificne strukture koje se redje koriste: USB, CAN, LCD drajver i t. d. Ovo vec nije neophodno da bi se smatrao odlicnim poznavaocem mikrokontrolera.
4. Set instrukcija i tehnike programiranja za konkretan mikrokontroler.

Dakle, vazne su ti 1,2 i 4, dok ovo pod 3, kada dodje na red, nece biti problem.

Tehnike programiranja uz malo predznanje se sticu rutinom. Tako, na primer za kopiranje niza bajtova jedna tehnika se koristi kod jednih mikrokontrolera, a druga kod drugih, sto zavisi od seta instrukcija i nacina adresiranja koje te instrukcije koriste. Recimo, AVR ima tri indeksna registra koja se u tu svrhu koriste, kod PIC-a je indirektno adresiranje reseno drukcije, kod MC9S08 se koristi indeksno indirektno adresiranje i t. d.
[ veselinovic @ 19.01.2010. 18:43 ] @
Citat:
korak: Nemoj da zalis sto nisi zavrsio fakultet.


Samo malo offa. Ti nemoj da zalis , ali svi vi koji ste na pocetku zalite ako ne zavrsite fakultet.



Citat:
Tamo se ionako malo posvecuje paznja mikrokontrolerima, a od predavanja o programskim jezicima nema neke koristi jer i sam to mozes da naucis. Tamo se ne dobija sustinsko znanje jer nema prakticnih predavanja, a i kako bi ih bilo, cak i da su opremljeni, nema profesora za takvu vrstu predavanja.


Jel i Tebi Stojcev predavao?
Eh, sad, nema koristi od doticnog programskog jezika. To je ( skoro ) samo skup instrukcija, ali logika programiranja i uopsteno logickog i analiticko/sintetickog razmisljanja....
Poz.
[ kova1 @ 19.01.2010. 19:45 ] @
Sto se tice pocetnika rekao bi da sam pod 2 jel sam elektrotenicar,poznajem digitalnu i analognu ekektroniku nisam bas pao sa marsa.Fax jos nisam zavrsio i nema veze sa hardverom nego samo sa softverom(doduse imao projektovanje digitalnih i projektovanje racunarski sistema ali se to svodi na pisanje VHDL koda).

Kupicu oba i 16F i 18F pa cu probati i sa jednim i sa drugim pa cu videti,a ako me bude jos vise zainterosovalo proucicu i AMTEL mikrokontrolere.

Sto se tice copy/paste coda to nikad nisam radio ni u standardnom programiranju.Ako i potrazim neko resenje na netu uvek pokusavam da skontam zasto je to tako da bi sledeci put znao da napisem sam.



Hvala svima na savetima.
[ Darko_zed @ 19.01.2010. 20:33 ] @
Citat:
Sto se tice copy/paste coda to nikad nisam radio ni u standardnom programiranju.Ako i potrazim neko resenje na netu uvek pokusavam da skontam zasto je to tako da bi sledeci put znao da napisem sam.

bas o tome govorim i meni zato sluze primeri, e onda krenem analizu tog programa koji je neko napisao i gde zapne pokusavam da shvatim zasto je to tako da bih kasnije znao bas to da primenim i sam da napisem za moje potrebe ,a mislim da se tako i dosta dobro i brzo uci i shvataju mnoge stvari.poz
[ korak @ 20.01.2010. 11:41 ] @
Stojcev mi nije predavao, ali smo prijatelji.

On je "ljubitelj" Intela, pa ti je sve jasno.

Kada mi nesto nije jasno, a treba sebi da razjasnim, poslednje sredstvo mi je da proucavam tudji primer. Problem sa tudjim primerima je taj sto moram da razmisljam kao onaj koji je pisao taj primer. Cesto ispadne da sam izgubio puno vremena, a da sam saznao nesto sto sam vec procitao u datasheet-u. Problem sa datasheet-ovima je sto je tu sve napisano, ali toliko kondenzovano da mora da se polako cita i istovremeno i da se razmislja o onome sto je napisano.

Do sada sam koristio samo sajt Freescale i sve informacije otuda sam crpeo. Na sajtu se mogu postaviti i pitanja na koja obavezno odgovaraju za dan dva. Nazalost oni koji daju odgovore nisu bas dovoljno strucni, i odgovor se uglavnom sastoji u tome da vas upute na neki dokument koji postoji na sajtu. Ako to nije slucaj, onda prosledjuju pitanje nekome koji je u materiji sa vasim problemom, ali njegov odgovor se ceka malo duze. Sve u svemu funkcionise.
[ Darko_zed @ 20.01.2010. 14:22 ] @
Citat:
Problem sa datasheet-ovima je sto je tu sve napisano, ali toliko kondenzovano da mora da se polako cita i istovremeno i da se razmislja o onome sto je napisano

E tu si u pravu ,a mene ponekad mrzi da bas detaljno i polako procitam pa uvek nesto bitno preskocim i tek tada nastaje konfuzija u glavi ,a u stvari sve tu pise ,samo malo kondenzovano kao sto kazes ,mada u zadanje vreme detaljno citam.poz