Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Arduino - tutorijali, pitanja, primjeri i projekti
El i to mene za*ebavaš? Power OFF! :-))

Ze*am se malo. Nadam se da ti ne smeta šala?
Reply
Ok Macola, bar mi je drago da tvoji razlozi za ne-voljenje spomenutih stvari nisu prvestveno vezani za tehniku i njihove karakteristike/perfomanse nego za neke druge socialne efekte toga oko kojih i ja imam slicno ili isto misljenje!
Reply
@Macola i @mikikg
Zeleo bih samo da dam jedan mali komentar na celu pricu. Primer moze da bude gore pomenuti MODBUS protokol. 90% ljudi ce da trazi gotove biblioteke za MODBUS i koristice ih, a nece ni da se potrudi da procita delic protokola iz specifikacije, a da ne kazem da se pomuci sa implementacijom. Tu dolazi do izrazaja nekoliko stvari za totalno nerazumevanje.
1. UART -> RS485
2. Interapti
3. Sam protokol

Iskusan inzenjer kada pise ovako nesto, nece nikada npr. koristiti interapt od predaje, nego samo interapt od prijema i na taj nacin da implementira kompletan MODBUS protokol. Tu je prvo ulozeno dosta vremena oko analize problema, dekompozicije i na kraju optimalne implementacije.
Koliko god Arduino, HAL itd. bili mocni i olaksavali posao, oni po meni prave pocetnike jos vecim pocetnicima, jer im ne dozvoljavaju da nauce srz, a to je funkcionisanje samog mikrokontrolera. Glavni deo svakom MCU programa je inicijalizacija periferija i to je ono gde se uci kako procesor radi. Naravno da novi ARM procesori imaju 100 registara za svaku periferiju i da je taj posao sada postao izuzetno komplikovan upravo zbog broja (po meni nepotrebnih registara - 32bit-a = 4 bajta. Dva 32-bitna registra i dosta je za periferiju) registara se uvode te biblioteke. Vec ste lepo rekli da izuzetno mocni i iskusni programeri prave te biblioteke. To je u potpunosti tacno, ali ni oni nisu bezgresni. Bolje mi je da ja pogresim, pa da trazim svoju gresku (na kojoj cu nesto i da naucim) nego da potrosim duplo vise vremena i trazim gresku nekog iskusnom programera (ako uopste mogu i da pristupim tome).
Kao sto ce pravi hardveras pri projektovanju nekog sistema (uzecu PLC kao primer, posto se ovde o tome govori) da vodi racuna o svakoj sitnici, tako ce i iskusan firmveras da vodi racuna o svakoj sitnici i da sve drzi pod kontrolom.
Drugi veoma popularan primer ove price je projektovanje DC/DC konvertora. Danas se svi oslanjaju na softvere za proracune parametara nekog konvertora, a niko da se potrudi da napise jednacine i da na osnovu tih jednacina vidi kako kolo radi i kako da ga proracuna. Ovakvih situacija ima milion i u danasnje vreme, na zalost papir i olovka, kao i stari dobri nacin ucenja i razumevanja sustine stvari su zaboravljeni (u velikom procentu).
Reply
Sve se slazem i potpuno si u pravu, ali imamo i mi dusu, pa ovaj STM32 mi je jedno 17. jubilarna platforma koju gazim : )
I ovih ARM-ova ima koliko hoces, ne jedan proizvodjac nego svi zivi to prave sad, cak i Microchip, svaki sa svojim stvarima, svaki sa svojim adresama, modulima, vektorima, ovim-onim kombinacijama pinova, boli glava od toga posle nekog vremena.
Ajd i ovi muceni programeri koji pisu te biblioteka, pa sta da radis kad sam MCU ima bugove, pa to svaki sad ima celu listu Silicon Errata i to ako ne procitas i pratis u jos vecem si problemu ...

Sve sam ja to prosao X puta, ne mogu vise, umorio sam se, sve znam sta treba, treba mi TO-TO-i-TO, par interapta, parm FRAM memoriskih adresa i nista vise ... Ako me razumes Wink

Iskreno malo mi i dosadilo da provaljujem jedno isto, pa UART sam za svaki MCU morao posebno da gazim, pa dokle vise, UART je UART majka mu stara, treba mi "samo" RX i TX, evo sad na ARM opet iz pocetka ... Smile
Reply
Mogu samo da kazem da sam radio u mnogo velikim i ozbiljnim timovima SW developera, nemate predstavu koliko je to slozen proces, ovo sto se mi solo kuci igramo je zafrkancija, znate kakvu tamo kontrolu software-a prolaze, koje se metodologije primenjuju, paterne, scrum obavezan, potpuno vodjenje dokumentacije i evidencije za svaku najsitniju stvar koju uradis, version contro, ehh ... kad bi moglo to tek tako sve da se replicira u kucnim uslovima, ne moze, moras da imas ljude i ljude oko sebe da bi mogao da izguras ozbiljnu pricu, ne moze jedan covek i da pise software i da ga testira to pod jedan pa posle toga sve zivo ostalo.
Reply
Software poput CubeMX samo za neke druge stvari, isto tako izklikces sta hoces i on ti izgenerise sve fajlove koji su medjusobno povezani i rade, pravio pre jedno 20 godina, kada o tim stvarima retko ko je razmisljao, zvali smo ga "kockatore" i izgenerisao je toliko korisnog code-a da smo od toga posle napravili i dobar posao.

Recimo neka se javi neko ko ima funkcije u svom STM32 poput ove, da ti u terminalu seriske komuniacije izdumpuje interne registre ali ne u HEX ili nekom necitljivom obliku nego da ti grune ceo C++ objektni code za koji posle samo uradis copy/paste u drugi MCU program? Nije vam ni palo napamet da takve stvari radite, glupost, a to tako zavrsava posao da je to milina Smile

Hocu da kazem da na takve neke stvari trebamo malo da se skoncetrisemo i efektivno iskoristijmo svoje utroseno vreme a ovi registri po MCU ce da dodju i odu, danas su jedni, sutra drugi, nista novo, ali ove cake ostaju!

Macola i Vojin znaju, ECM i te godine, ja sam tada Zoranu mom ocu pricao da trebaju umesto 8052 i 80535 mikrokontrolera da predju na PC racunare za PLC-ove, pojavili su se tada single board racunari, ali nisam dobio podrsku za tu ideju tada, iz raznih razloga ne mogu ni da se setim, ali evo koliko godina kasnije je ta tehnika ipak zavrsila tu.
Pojavio se PIC pa je nekako taj jaz generacija i tehnika premostio ali je i tada bilo ocigledno da ce ta tahnika veoma brzo da se razvija i da mora da se pametno odluci zasta da se uhvatis, ulaze se puno vremena, mora to da se isplati i mora da bude odrzivo na duzi vremenski period sto je sada sve teze.
Linux, C++, i te neke stvari ce uvek da postoje i to ga se treba drzati, HW je totalno podlozan modifikaciji (mislim na CPU i MCU) i sve ce vise i brze da se u buducnosti menja.

Cak to sam vam vec pricao, mnogo kosta novaca/vremena kada se ulozi u neku CPU/MCU platformu, to ide dotle da se dan danas prave moderni hibridni kontroleri (soft-core u FPGA) koji imaju u sebi 8052 jezgro, gde mozete da pokrenete svoj firmware od pre 30 i kusur godina bez modifikacije ili neke minimalne, ne isplati se tim ljudima drugacije i sto bi, napisali dobar SW i to njima potpuno zavrsava posao, ne pipaju ga, samo su sad to obogatili novim komunikacionim periferijama i vozi Misko ...
https://opencores.org/project,t51

Features

- All peripherals/interrupts implemented
- Single cycle per byte fetch
- Supports synchronous RAM/ROM
- Single cycle MOVX (8052)
- Optional second DPTR
- Technology independent
- Three stage pipeline
Reply
Miki, u svemu sto si napisao si 100% u pravu, osim u jednoj stvari koji stalno zaboravljas. Ja ne osudjujem CubeMX ako si pre toga pregazio dosta kontrolera i znas sta je kontroler i kako radi. Vec sam napisao da mi je krajnje debilno sto novi proizvodjaci prave za nove ARM-ove oko 100 registara samo za UART. Kao sto si rekao, znam tacno sta je UART i kako radi, i ne treba mi 100 32-bitnih registara. Ja pricam o mladjima koji uporno zele da pocnu sa ARM-ovima, a preskacu sve one lepe arhitekture koje se jos uvek koriste i koje ce jos dugo godina da se koriste. 8051 ima najbolju arhitekturu za ucenje. Posle njega ide PIC i/ili AVR, XMEGA itd., pa tek onda ARM.
Ako se u startu krene sa Arduinom i oslanja se samo na njegove biblioteke, kako taj covek nesto da nauci.
Poenta cele elektronike je da naucis kako nesto radi i onda da ga upotrebis.
Spomenuo si Zokija i ECM. Da li neko ovde zna (osim Mikija i Macole) za stari PLC2000, koji se zasnivao na Z80 procesoru. Sada pokojni cika Zoki je tada napravio programski jezik za PLC, a sve naredbe i interpreter su pisani u ASM. Da li je to mogao neko da radi ko nije razumeo logiku rada MCU-a!!!!
PLC uredjaji su izuzetno komplesni uredjaji i nije samo poenta da se napravi hardver koji je imun na smetnje. Tu mora BAS BAS BAS da se poznaje sve. Nemam nista protiv da Macola projektuje PLC sa nekim modulom kupljenim zasnovanim na arduino ili STM32 ili ti sto pravis sa raspberry-jem, ali ima protiv da neko ko prvi put krece u tu pricu, projektuje nesto na bazi tih plocica. Ne treba niko tebi ili Macoli da govori sta je totem-pole, a sta open drain itd. To je pregazeno milion puta. Seti se samo kako te je Zoran terao da gazis ASM. E, zbog svega toga sada komotno mozes HAL da koristis jer tacno znas sta se iza njega desava. To je poenta moje price. Naravno da treba da se prate novi trendovi razvoja okruzenja, ali moraju prvo da se razumeju osnovni komcepti. Tu si jedino pogresio kada si branio nove tokove.
Moje misljenje je da MORA prvo da se razume nesto da bi se koristilo. Ako nekome smeta ovaj stav, koji je mozda malo vise radikalan, izvinjavam se, ali tako je. Bez razumevanja sustine funkcionisanja, nema ni projektovanja, vec samo kopiranja.
Reply
Vojče,

Eto baš to sam hteo reći u prethodnim postovima. Iskusni će se nekako izboriti i uštedeti vreme sa tim predloženim "kockatore" sistemima, dok će početnik imati dosta niske motive da zagazi dublje (bar većina početnika).
Naravno, postoje i takvi poput našeg @Progster, koji je inicijalno radoznao i inventivan tip čoveka, koga interesuje sama srž stvari. Takve ljude neće sprečiti "lego" ponuda da zađu u suštinu.

Inače Vojče, savršeno delim mišljenje sa tobom da moderni ARM imaju gomilčinu registara za periferije, po meni mnogo toga bez posebno bitnog razloga.

Opet ću to uporediti sa modernim telefonima. Milion opcija je nabijeno u jednu napravu. Čitav jedan ozbiljan računar.
Izuzetno je redak korisnik koji upotrebi više od 10% opcija koje nude ovi novi telefoni.

Takav je i ARM. Umesto da naprave 20-tak pod grana specijalizovanih MCU, prema tipičnim oblastima (a to su upravo očekivane grupe periferija za upotrebu), oni su strpali sve u jedno i u startu napravili čitav mali haos, jer korišćenje jedne grupe periferija inače onemogućava neke druge (pa onda uzmeš Cube MX da bi video šta sve od preostalih mogućnosti neće da ti radi :-).

Pristup sa hw predisponiranim MCU bi jako pojednostavio njihovu upotrebu (imali bi nužno dovoljan broj registara po periferiji), a verujem da bi proizvođači za dve generacije MCU uspeli da razvrstaju tipične česte potrebe i determinisali specifikacije takvih pod grupa.

Nego, jedno povlači drugo i tako ukrug, kao što način čitanja ubrzo za sobom povlači i sličan način pisanja...

Pozz
Reply
Ovi rade mnogo toga za vojsku i ni malo nisu blesavi što i dalje guraju ovako nešto, upravo bazirano na staroj dobroj 8051/2 strukturi.

http://www.silabs.com/products/mcu/8-bit
Reply
Miki, i ja se slažem sa tobom, ali moram i da se složim sa Vojinom. Ja, kao neko ko praktično nikad nije programirao neki MCU, sad kad sam krenuo da radim sa STM32 krenuo da koristim njihove HAL biblioteke i CubeMX, prošao neke stvari (osnovni gpio, EXTI, SysTick, itd.), ali sam onda shvatio da sam ja naterao taj EXTI da radi, a da ja u suštini pojma nemam ni sam kako. Recimo podesim EXTI na nekom pinu, on generiše kod, ja samo popunim, a nemam pojma kako to funkcioniše, tek kad sam zakopao po EXTI i GPIO registrima sam razumeo kako to funkcioniše. A evo već pet dana se zanimam sa tim, a stigao sam do tajmera (trenutno se zanimam sa input capture), da sam koristio HAL verovatno bih sad već 5 periferija prešao. Big Grin
Slažem se sa tobom i da nema smisla učiti sve registre (ja otvorim reference manual pa vidim šta mi treba), a u ovom STM32 ih ima previše, svakako mi se čini da nije dobar za početnike, ali ti već znaš kako funkcioniše taj I2C, UART itd. U najgorem slučaju treba da pogledaš reference manual da vidiš kako su oni to realizovali, a ne moraš ni to, pošto i ako koristiš HAL opet znaš kako to funkcioniše, a ja kad mi napiše GPIO_Init(GPIOA, pin1), nisam imao pojma šta to radi. Nije neka mudrost, ali nisam znao šta to radi "ispod haube". Smile

EDIT: A i sa gospodinom Macolom moram da se složim, mišljenje se ukalupljava, i u analognoj, a u digitalnoj elektronici pogotovo. Bavio sam se malo projektovanjem digitalnih integrisanih kola u 180nm (na nivou maski), i sasvim je logično da mikroprocesor neće projektovati tako, pošto je i kolo sa cca 1000 tranzistora teško nacrtati, a o milionima i milijardama da ne pričamo, ali ljudi su se toliko oslonili na HDL, da im je dovoljno da napišu kod za funkcionisanje tajmera, i da ih boli uvo kako to izgleda, bukvalno ne moraš da znaš ni kako taj MOS tranzistor funkcioniše, on sam generiše layout.
Reply
(07-18-2017, 09:32 PM)vojinilic Wrote: Koliko god Arduino, HAL itd. bili mocni i olaksavali posao, oni po meni prave pocetnike jos vecim pocetnicima, jer im ne dozvoljavaju da nauce srz, a to je funkcionisanje samog mikrokontrolera.

Smile
Reply
I jedna i druga strana je u pravu. "Starim profesionalcima", koji su svoje kontrolere ili procesore poznavali do najzabačenijeg ćoška, nikako se ne sviđa novi lego-sistem programiranja. Novim korisnicima (koji će verovatno postati takođe profesionalci, ali novijeg tipa) nedostaje vremena za tako detaljno ulaženje u problematiku novih uređaja, koji se praktično pojavljuju svakog dana. Njima je bitno da što pre dobiju proizvod koji daje rezultat, a ako je to sporo, neće sesti za asembler da ga ubrzaju, već će mesec dana sačekati novi i bolji proizvod koji će, sam po sebi, ubrzati proces do željene granice i dati ono što se u startu od programera i očekivalo. Njima je bitno da je taj lego-program kompatibilan sa novim proizvodom, te da se prebacivanje na novu platformu završi danas do ručka. Ako UART ne brlja pri tome, neće ni pogledati koliko tu ima registara, niti šta lego tu radi. To je pomalo politika "black boxa" gde autor zna samo početak i kraj, a šta se dešava u sredini nemaju pojma. Ali ako to radi kao što je očekivano (testiraju se većina očekivanih slučajeva), prelazi se na novi posao.
Pre 20+ godina sam programirao nešto za potrebe firme u kojoj sam tad radio. Za mesec dana rada izbacio sam prvu verziju koja je posao završavala za, recimo, 5 minuta. Došao sam do zaključka da je to nezgodno za krajnjeg korisnika, jer šta da radi tih 5 minuta dok čeka rezultat (a program se koristi počesto u fazi određivanja optimalne armature u betonskom preseku). Da ide po kafu, može. Ali će samo stići da je spremi, ne i da popije, za to će mu trebati još 10-15 minuta. Ako će na puš-pauzu, ista situacija. U oba slučaja, neplanirani trošak vremena od 15 minuta i izlazak iz toka misli - počinje da se razmišlja o drugim stvarima u međuvremenu. Sve ovo se dešava na Zapadu, ne u Srbiji (ako se neko čudi kome je problem što je 5-6 puta po 15 izgubljenih minuta nekome problem). Onda odlučim da priđem problemu na drugačiji način (da probam da koristim pamet umesto grube sile - uzeo sam veći čekić (:-) ), pa sam nakon 2 meseca rada uspeo da problem spustim na, recimo, pola minuta. Bio sam mnogo ponosan na sebe tih mesec dana sve dok se nije pojavio Pentium (razvoj je rađen na 486) i novu verziju sveo na desetak sekundi, a staru verziju na željenih pola minuta! Da se Pentium pojavio 2 meseca ranije, ne bi ni bilo potrebe za poboljšavanjem, a imao bih 2 meseca da se bavim nečim pametnijim...

Napredak nije uvek pozitivan u svemu, ali u većini stvari ipak je korak napred...

Još krajem prošlog milenijuma, negde sam natrčao na izjavu, da l' Denisa Ričija, da l' Brajana Kernigena (ili možda nekog trećeg iz te branše) u stilu:
... sve što sam u životu radio i sanjao, bilo je da upotrebu računara pojednostavim toliko da upotreba računara bude poput upotrebe telefona. Sad vidim da mi se san ostvario. Više nisam u stanju da jednostavno koristim telefon...
Reply
Evo reda radi da se i ja malo javim iako sa programiranjem nisam imao ikada previše doticaja.
Prijatelj i ja radimo na jednom malom projektiću di on razvija softver a ja hardver. Krenuli smo negdje prošle zime. On je stvarno odličan programer koji radi na održavanju i unaprijeđenju svega što ima veze sa kompjuterima,PLCima i sl. u rafineriji u Sisku znači zadaci su mu blago rečeno dovesti u red bilo kakav nered(kojeg ima na tone) vezan za bilo što informatičko u rafineriji od visokih razina do veoma niskih razina programiranja.

Da se vratim na naš projekt. Za početak smo tražili nekakvu platformu na sa kojom ćemo pokretati hardver. Bilo je svega i svačega i odlučili smo se za LinkIT,ali kod programiranja je naravno bilo problema samo takvih. Nema programskog alata koji bi to isprogramirao, trebalo je baš pisati program u C++, pa optimizacija.Također činjenica da ipak nismo mogli vrtiti web stranicu na LinkITu zato jer se nakon nekih 100njak paljenja i gašenja softver zblesirao, unatoč tome što bi u teoriji moglo da radi,pa smo od toga odustali. Sve u svemu za to je mom prijatelju uz redovit posao i rad na fakultetu trebalo preko mjesec dana da to ispegla i radi savršeno.

Prije nekih dva mjeseca je našao Cypress firmu koja ima odličnu razvojnu platformu upravo kao lego kockice,ali puno kvalitetnije odrađenu nego arduino. Također ima i editor koda pa napredni korisnik može da ode na veoma nisku razinu i editira i poboljša sve što smatra da treba. Za sve što mu je trebalo nekih mjesec dana sa LinkITom on je to na Cypressu napravio za tjedan dana gdje je uračunato i vrijeme proučavanja same razvojne pločice,što sve ona ima, kako se sa time upravlja itd...

Inače prijatelju sam rekao za ovaj forum ali za sada nema vremena da jede,a kamoli da aktivno sudjeluje na forumu. Inače on je takav tip koji je počeo sa programiranjem oko 2000 godine i vrlo brzo upija sve što pročita, i uvijek je u potrazi za riješenjima koja smanju vrijeme programiranja ali ne i kvalitetu dotičnoga.
Reply
Da ne sirimo ovu temu previse, ipak je vezana za PLC. Samo cu jos da dodam svoje razmatranje. Korisnik mobilnoh telefona NE MORA da razume kako telefon radi. Po meni korisnik MCU-a MORA da razume kako MCU radi.
Opet, pojednostavljivanje upotrebe racunara je skroz OK, jer racunare treba da koriste siroke narodne mase, a mikrokontrolere treba da koriste oni koji ih razumeju. Ista stvar je i sa tranzistorom. Da li dovoljno da neko zna da kod bipolarnih tranzistora postoje tri terminala oznacena sa B, C i E i dva tipa, tj. NPN i PNP i on koristi tranzistore? Ne on ponavlja necije seme i projekte bez razumevanja onosga sto radi. Pitaj tog coveka da li znaci sta je polarizacija tranzistora i kako se polarizuje tranzistor? 99% strucnjaka ce da kaze dovedes napon od 0.7V izmedju B i E i tranzistor radi. A o struji baze ni reci. Ne mislim da mora da se ide u fiziku poluprovodnika (za inzenjere da, zbog kulture)!!!
Reply
Da rezimiramo onda ovo oko Arduino platforme, Arduino nije za pocetnike nego za profesionalce Big Grin
Reply
Miki, sve se slazemo, kao i uvek. Zato smo tu gde jesmo.
Reply
(07-19-2017, 01:51 PM)mikikg Wrote: Da rezimiramo onda ovo oko Arduino platforme, Arduino nije za pocetnike nego za profesionalce Big Grin

Pratim ovu temu od početka, veoma je ozbiljna i korisna.
Prilično se slažem sa većinom misli vas cenjenih a pritom iskusnih kolega. Da ne dužim previše, mislim da bih u jednoj rečenici mogao da potvrdim moj stav ovim što je Miki rekao na šaljiv način ali nije daleko od isitine Smile
"Da rezimiramo onda ovo oko Arduino platforme, Arduino nije za pocetnike nego za profesionalce"

Veoma je potrebno da mladi ljudi koji kreću da se bave embedded programiranjem, odnosno elektronikom, krenu od što nižeg nivoa. Jer dok su recimo na studijama pod pretpostavkom da imaju dovoljno vremena, savladavanje i koncept rada raznih periferija, registara i samog kodiranja istih će im kasnije omogućiti da to mnogo bolje savladaju i koriste. A sve ostale poštapalice i biblioteke im mogu ponekada biti od koristi da skrate vreme.

Obrnuto je po meni neprirodan proces.

Samo jedan zanimljiv primer je da ako bi prešli kasnije na neki FPGA board, morali bi tu periferiju sami da prave a da bi je napravili moraju da znaju kako radi na low-level nivou Smile

Podržavam @progster-a da pored korišćenja biblioteka kojih ima u izobilju, svakako prouči i dubinski iste.


Što se tiče PLC-a, koliko god da sam se u prošlosti trudio da napravim nešto skroz univerzalno, uvek u narednoj iteraciji mi je trebalo nešto malo drugačije ili dodatna neka sitnica. Toliko od univerzalnosti. Ako se čovek sam-sa-sobom ne dogovori šta mu konkretno treba odnosno trebaće i tek onda krene u izradu univerzalne ploče, mislim da je slaba vajda. Iskreno, nisam više siguran da li je moguće napraviti baš baš univerzalan PLC. Modularnost je svakako neophodna, pa onda čemu jedan univerzalni PLC.

Biću slobodan da ovu temu preporučim nekim mladim ljudima koji su mi trenutno u firmi na praksi i imaju ambiciju da nauče ove naše embedded nauke, smatram da je jako poučna...

Poz...
Reply
Evo neki pokušaj šeme, samo izlaza, tako sam nekako zamislio po Macolinim savjetima koje je dijelio još davno za IN/OUT.


@mikikg
Crtao sam u Proteus-u, jer sam za njega našao model Arduina, ako imaš neku preporuku da ubacim model Arduina u LTspice, da bude gotova pločica Arduino Nano, da ne postavljam samo ATmega MCU pa da onda dodajem osnovne elemente oko njega (kristal, kondenzatore i otpornike i ostalo)?
Reply
Nastavi crtanje u Proteus, LTspice i one moje sheme su samo tacke linije i slova, nisu modeli i biblioteke, vise su skica neko prava shema.

Tvoja shema je OK, samo moras da sklonis izlaze sa PD0 i PD1 jer su to pinovi za UART RX i TX, oni idu preko USB i sluze za programiranje chipa, ne mogu da se koristisi za druge stvari (mogu sa komplikacijama nekim, ne treba ti to).

Inpute nemas, nikakve, start/stop/error? Sta bi sa LCD, nisi planirao za ovu verziju?
Reply
Pratio sam i ja ovu temu koliko sam mogao od pocetka, i cenim sve ovo sto ste napisali jer iz svega o cemu se ovde na forumu diskutuje vidi se da zaista znate posao kojim se bavite, ali ne bih se slozio s par stvari kao neko ko je pocetnik u ovome.

Naime, puno vas pominje da treba da se krene od same srzi, ponekad je to pocetnicima dosta tesko, previse informacija i previse novih stvari odjednom ume da bude veoma odbojno i da obeshrabri nekog da nastavi dalje, pototovu ako se ne radi o nekom ko je mladji i ko ima nema puno slobodnog vremena, i ko mora da i te low level stvari uci sam. Naravno, nije nemoguce, ali je dosta teze.

Ja sam se do pre godinu dana bavio samo programiranjem, mislim, i dalje se bavim time, ovo je za mene samo hobi i dalje, i znam da nikad necu biti profesionalac sto se HW-a tice, ali kada sam pocinjao (a mislim da sam imao koliko toliko solidnu osnovu bar sto se teorije tice), i kad sam krenuo da istrazujem i biram u kom smeru da ucim, izbor je bio za mene tad klot PIC programiranje (PICKit3 i MPLAB), arduino (Nano \ Uno etc. i Arduino IDE) ili RPi.Odlucio sam se za Arduino iz prostog razloga, programiranje istog mi je delovalo poprilicno jednostavno za stvari koje su me zanimale, cena je bila ok, i za proste stvari ne bi bio overkill za razliku od RPi-a. Nakon par manjih projekta na breadboard-u poceo sam da ceprkam dublje i da izdvajam i analiziram minimum (barebone arduino), pa onda da uporedjujem atmega328 i sl. njegove "rodjake" po potrebi za ove moje home brewed projektcice itd.

Ono sto hocu da kazem je da ja mislim da je to neki prirodni sled kad se pocetnik upusti u igru sa ovako necim, da se ide u dubinu sloj po sloj i da ne mora da se izmislja topla voda, bar za vecinu DIY projektcica.

(07-19-2017, 02:59 PM)npejcic Wrote: Veoma je potrebno da mladi ljudi koji kreću da se bave embedded programiranjem, odnosno elektronikom, krenu od što nižeg nivoa. Jer dok su recimo na studijama pod pretpostavkom da imaju dovoljno vremena, savladavanje i koncept rada raznih periferija, registara i samog kodiranja istih će im kasnije omogućiti da to mnogo bolje savladaju i koriste. A sve ostale poštapalice i biblioteke im mogu ponekada biti od koristi da skrate vreme.

Za nekog ko zeli da bude profesionalac, pretpostavljam da je metodologija drugacija, i da vise treba da prati ovaj skolski pristup koji pominjete.

Jbg, zavisi iz kog ugla se gleda Smile
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)