[ Lazoman @ 05.04.2014. 19:56 ] @
Pozdrav svima kao sto i sami vidite naziv teme diplomski rad, posto sam zavrsna godina radim alarmni sistem sa ovom razvojnom plocom (profesorova ideja), pa mi treba vase misljenje, kao i odakle poceti sa ovim razvojnim okruzenjem, uzimajuci u obzir da sam totalni pocetnik za ARM Cortex M4 arhitekturu, ukoliko neko ima neke literature ako je koristio i radio na M4, neka postuje ovde, jer stvarno ne znam da li datasheet ove ploce od 11 strana moze mnogo stvari da mi razjasni, radio sam na PIC-u, pa mi mozda nece biti toliko tesko shvatiti kako i ovo cudo funkcionise. Cekam na vase odgovore. Hvala

[ ZAS011 @ 05.04.2014. 20:08 ] @
Da li si "na picu" koristio C?
Ako nisi, podosta ćeš vremena potrošiti dok ga naučiš.
[ bogdan.kecman @ 05.04.2014. 21:15 ] @
ne treba ti datasheet za tu plocu vec za taj mcu na toj ploci a na ST sajtu imas da skines ST biblioteke i primere

razvojno okruzenje, skini keil demo verziju trebalo bi da je dovoljno za alarmni sistem osim ako neces da ludujes sa nekom grafikom
[ Lazoman @ 06.04.2014. 02:08 ] @
Posto ima taj touch LCD, radio bi neki prost interfejs za komunikaciju sa korisnikom. U PIC-u sam radio i asm i C, tako da ne bi trebalo da imam problema sa ovim.
[ ZAS011 @ 06.04.2014. 09:10 ] @
Asembler ti neće nešto pomoći, STM ima potpuno drugačiji set instrukcija i arhitekturu
Poskidaj biblioteke za tu ploču, primere, ... i dobro ih prostudiraj. Taj ARM PIConje jede za užinu.
[ lestrigonac @ 07.04.2014. 13:55 ] @
Da li moze sa ovom plocom da se igra na Linux operativnom sistemu (koji kompajler, IDE...)? :)

Koliko vidim, Keil radi samo na Windows operativinim sistemima. Da budem iskren, nisam dovoljno googlovao, nije mi to trenutno prioritet (vise neki plan), a rekoh kada se vec pojavila tema, da pitam. :) Izvinjavam se na offtopic.

Pozdrav,
Lestrigonac
[ bogdan.kecman @ 07.04.2014. 14:19 ] @
pa codesourcery++ ga podrzava ali to je samo kompajler (gcc) nema ide ..
sad mozes sam da napravis ide oko eclipse-a ili radis direkt sa
makefile-ovima .. i to radi lepo, problem je sa bibliotekama koje dolaze
uz tu plocku (kao i ostale discovery plocke) mora malo da se budznu da
bi radile na lindzi ok (case sensitivity, putanje / i slicno ..)
[ bogdan.kecman @ 07.04.2014. 14:20 ] @
imas i onaj arm-eabi ili tako nekako, i on radi ok no nisam ga terao
[ lestrigonac @ 07.04.2014. 15:44 ] @
Hvala Bogdane, brz i precizan kao i uvek! :)

IDE mi i nije toliko bitan, ako ima funkcionalan kompajler, dosta je. Kompajler + makefile je ok.

Pogledacu ove sto si naveo. A dobro je i znati to za biblioteke.

Srdacan pozdrav,
Lestrigonac
[ mikikg @ 08.04.2014. 00:24 ] @
Plocka je super, bice zanimljivo sa njom u svakom slucaju. Keil je tu najugodniji za rad ali je limitiran, mislim da sa grafikom tesko moze da prodje free verzija C/C++ prevodioca.
Ostale platforme i debuger koji je tu jako bitan u nekoj gnu varijanti ima, sa make fajlovima moze i ostalim stvarima i libovima podeseni za prevodjenje, upload, debug …

Ima tu jos nekoliko platformi, konkretno ST daje primere za 4 IDE-a, pogledaj sta ostali nude.
To je ARM platforma, moze da se osposobi prevodilac u raznim varijantama, caka je sto mora da se poznaje taj MCU mnogo detaljnije jer ima krsh modula i opcija u njemu, od NVIC/interapta i tajmera, memorije, pa periferije jedno 20+, pa ako hoces RTOS ili klot, bas dosta opcija i svaka sa svojom nekom cakom.

Recimo primeri za komande u dokumentaciji su u C/C++ i prakticno su iste ili slicne kao asembleske naredbe tako da je to prakticno ista stvar, radi i po brzini i po funkciji isto (slicno). Oni su optimizovali ARM jezgro za rad sa C prevodiocima i tu su napravili odlicnu stvar.

Ovde je snovni ARM-om lib CMSIS Core
http://www.keil.com/pack/doc/CMSIS/Core/html/modules.html

Takodje ima dobrih knjiga na tu temu oko Cortex jezgra, npr ova:
http://ow.ly/vxo7J

BTW: Jedan mladji kolega sa posla je cak poterao ARM Discovery plocku kroz cinimise Visual Studio i .net neki :)

[Ovu poruku je menjao mikikg dana 08.04.2014. u 11:40 GMT+1]
[ Lazoman @ 14.08.2014. 13:33 ] @
Naime, krenuo sam sa Keilom, C mi nije problem, na PIC-u sam radio sa njim, a ovo je toliko nerazumno, da ne znam kako da pocnem, na cega prvo da se osvrnem. Sad trenutno radim to da editujem postojece projekte u svoju korist, mada errora i previse ima, slabo se snalazim u ARM-u i interapt programiranju. Nasao sam gotove biblioteke za 1wire protokol, koji sad koristimo da isprobamo DS18B20, ali ne znam ni kako zapoceti main.c fajl. Takodje imam pitanje koja biblioteka se koristi za programiranje LCD displeja koji se nalazi na njemu?
[ HeYoo @ 14.08.2014. 14:34 ] @
Neces daleko dogurati sa iseci-nalepi programiranjem.
STM32 je dosta komplikovanij od PIC-a ali zato pruza neuporedivo vise. Ako hoces bas da ih savladas moraces neko vreme da posvetis proucavanju arhitekture, periferija. Posle toga mozes uzeti neke primere i krenuti na osnovu njih da pises ono sto tebi treba.

Evo nekih primera:
http://stm32f4-discovery.com/2...32f429-libraries-at-one-place/

I knjiga koja je pedagoski pisana:
http://www.cs.indiana.edu/~geobrown/book.pdf

[ Odin D. @ 14.08.2014. 14:53 ] @
Imaš otprilike tri opcije:

1) Suluda opcija: uzmi datasheet za taj čip, kao i ARM tehnical reference manual (ili nešto sličnog imena) za cortexm4, pa udri mjesec-dva dana do zore dok ne skontaš o čemu se tu radi;

2) Manje suluda opcija: nađi neki dobar IDE/kompajler sa debuggerom i bibliotekom gotovih primjera;
zatim učitaš neki jednostavan primjer, npr. blinking LED, pa kreneš redom kroz debuger step by step da vidiš tačno kojim redom kreće izvršavanje programa na najelementarnijem nivou - šta se tačno u kom trenutku upisuje u koji kontrolni registar, koji bitovi se setuju i resutuju itd...;
onda držiš pored sebe datasheet i u njemu tražiš opis i objašnjenje tih akcija koje posmatraš u debuggeru.
...
Kad npr. savladaš proceduru "uključivanja" mcu-u (oscilatori, pll, watchdog, bus-ovi,...) onda učitavaj ostale primjere jedan po jedan (portovi, periferija ova ona, interruptovi...), pa na isti način prati šta se i kako radi.

3) Najlakša, ali i najplića opcija: zadrži se na najvišem nivou - CMSIS i gotove biblioteke onoga ko je isporučio primjere, koristi ih bez ulaženja u detalje šta se tačno dešava kad pozoveš _nešto_Init()...

Ako nemaš puno vremena, hoćeš samo da završiš projekat i ništa više od toga - preporučujem opciju 3).

Ako imaš vremena, želiš nešto da naučiš ili se čak namjeravaš baviti time i ubuduće - preporučujem opciju 2).

Ako imaš i suviše vremena i ne znaš više šta bi sa sobom u životu (bio si već na Mt. Everestu, skakao u buretu niz Nijagaru...) - može i opcija 1).
[ Lazoman @ 15.08.2014. 09:20 ] @
Hvala vam ljudi! Odine, opcija 2 je ono sto ja zapravo zelim, planiram sa time da se bavim u zivotu, i zeleo bi da naucim ARM-ove jer su neuporedivo mocniji od PIC-ova, sto mi je i sam mentor rekao i savetovao da radim diplomski sa STM-ovom plocom.
[ Risto. @ 15.08.2014. 10:47 ] @
Ako ti je problem Keil, mozda ti ovo pomogne da napravis projekat.

http://www.badprog.com/electronics-keil-creating-a-project-by-copying-a-default-example

Samo pazi to je za F3, ali moci ces da izmenis sigurno za F4
[ Lazoman @ 10.09.2014. 10:30 ] @
Razmisljao sam se dosta i dosao na ideju da diplomski bude demonstracija alarma i to sve preko 1Wire protokola, imao bi 3 detektora pokreta, 2 za detektovanje otvorenih vrata, 1 za pozar, a na izlazu sirenu i gsm modul koji javlja SMS-om da je doslo do provale ili pozara. Da li je moguce izvesti komunikaciju sa svim ovim uredjajima preko 1Wire magistrale?


Bilo bi odlicno ako bi mi neko mogao predloziti za svaku vrstu senzora po jedan, da ce mi odraditi posao za koji mi treba. Unapred zahvalan
[ bogdan.kecman @ 10.09.2014. 10:40 ] @
de nadje 1wire :( ..
naravno da je moguce, samo je 1wire malo drndav na 3V bolje da si uzeo neki 5V device ako si bas hteo 1wire
[ Lazoman @ 10.09.2014. 11:09 ] @
Zdravo, ako bi mogao da pojasnis to drndav na 3V bilo bi dobro? :D Na STM-u imam i 5V i 3.3 izlaz.
[ bogdan.kecman @ 10.09.2014. 11:16 ] @
pa drndav je zato sto treba da savladas Z od te parice i onda na malo vecoj udaljenosti sa 3V to umesto cetvrtke izgleda kao sinus a umesto 3V bude 1V i brzina kojom mozes da radis padne drasticno .. sa druge strane ako koristis neki manchester i simetricnu paricu (CAN, RS485..) na isto 2 zice ( i za 1wire ti treba 2 zice) mozes da pustis mnogo duzi kabl i mnogo brzi signal bez znacajnih smetnji .. jedino ti u ovom slucaju parica treba da bude uvrnuta a za 1wire ne.

sa 5V to izgleda malo bolje .. (znacajno bolje)

za 5V izlaz, koliko ja znam nemas 5V izlaz, imas nekoliko 5V tolerantnih pinova ali nemas pin sa 5V izlazom ..

dalje nisam skontao da li hoces da koristis neke fabricke 1wire senzore ili da ih pravis sam ... ja nsiam video fabricke 1wire senzore (osim ono eeprom, serial id i slicno sto se kaci na par cm do cipa) koji rade na 3V, svi zahtevaju 5V
[ Lazoman @ 10.09.2014. 11:31 ] @
Kako nema 3V i 5V izlaza, sta predstavlaju ovi pinovi ako je glavno napajanje ploce sa USB-a




Pa planirao sam da npr za pokret kacim PIR detektor, da li je to moguce? Senzori bi bili kaceni na 1wire magistralu, video sam da se svasta moze kaciti na nju (analogni digitalni senzori).

[ bogdan.kecman @ 10.09.2014. 11:55 ] @
lepo nema pogledaj datasheed za taj mikrokontroler
1.8-3.6V application supply and I/O/s

to sto ti na ploci imas 5V napajanja ne znaci da IO pin moze da radi sa 5V


pinovi za FT oznakom su 5V tolerantni i to je to, nijedan pin ne moze da
izbaci 5V (nema ni odakle napajanje je max 3.6V preko toga izgori mcu)

[ Lazoman @ 10.09.2014. 15:46 ] @
Aha, skontao sam, u mom slucaju vidim da jedna strana pinova radi do 5V a jedna strana pinova na 3.3V

Takodje sto me zanima, nigde ne mogu da nadjem neko upustvo kako isprogramirati TFT LCD koji se nalazi na ovoj ploci, koji program koristiti ?
[ bogdan.kecman @ 10.09.2014. 15:54 ] @
ne rade pinovi "na 3v", oni svi imaju izlaz od 3v a ulaz jedni mogu da
izdrze do 5v a drugi ne mogu ni da izdrze ulaz (svi koji imaju bilo
kakvu analogiju na sebi ili specifican hw a nisu obicni io pinovi nisu
tolerantni na 5v) .. nisam obracao paznju kako su rasporedjeni na ploci.

taj tft se ne programira, to je glupi ekran, sliku na njemu pravi taj
mikrokontroler, treba da isprogramiras miktrokontroler.
touch screen na tom tft-u je i2c cip zakacen na mikrokontroler pa njega
cimas da pitas gde je korisnik pipnuo
[ ZAS011 @ 10.09.2014. 15:56 ] @
http://www.st.com/st-web-ui/st...ent/user_manual/DM00092920.pdf

Strana 5
Ono što si ti "secnuo" iz slike su pinovi za napajanje.

http://www.st.com/st-web-ui/st...ent/user_manual/DM00093903.pdf

Strane 27 do 33 šema ploče
Primetićeš da se 5V odmah spušta na 3V, strana 28 i preko kratkospojnika Idd (gde može da se meri potrošnja) postaje VDD

Prema tome, 5V izlazi ne postoje, samo 3V I/O. E, sad, da li je neki od I/O pinova 5V tolerantan, pročitaj u datasheet-u.
[ Lazoman @ 10.09.2014. 19:15 ] @
Da li se za programiranje ovog TFT displeja moze koristiti alatka Visual TFT uporedo sa Keilom, iako je Visual TFT proizvod MikroE kompanije?
[ goran_68 @ 10.09.2014. 19:18 ] @
Skini stm32fCubeF4 sa:
http://www.st.com/web/en/catalog/tools/PF259243

Tu imaš gomilu primera. Ima i za TFT LCD koji je na ploči.
Predlažem ti da senzore vežeš bežično. Za to možeš iskoristiti NRF24L01 module koje možeš nači jeftino na ebay.com.
[ Lazoman @ 10.09.2014. 22:29 ] @
Imam Cube skinut i gomilu primera. Pa nista mi drugo ne preostaje nego da ih dobro prostudiram, sto se tice senzora, radio bih bezicno, ali imam toliko loseg iskustva uopste sa kupovinom preko Ebaya, posebno od Kineza i Japanaca, da ko zna kad bi mi stigli senzori, treba mi najkasnije za nedelju do dve, sto je preko Ebaya ne moguce jer je nasa carina haos.
[ ac1bd4 @ 15.09.2014. 10:23 ] @
Za početak dobro prouči tih 10 strana opisa ploče i šemu koju uglavnom možeš da nađeš na STovom sajtu za njihove ploče. Možda zvuči jednostavno ali nije što pokazuje i greška koju si mogao da napraviš sa 5V.

Na kom operativnom sistemu ćeš raditi razvoj, Win XP? Koji OS ćeš da strpaš na ploču? Ja bih ti toplo preporučio da odvojiš malo vremena da nabaciš neki OS tipa FreeRTOS. Trebaće ti par dana za to ali posle su stvari mnogo jednostavnije. Linux na tome nećeš poterati ni u snovima.

Ako misliš da će ti sve stati u besplatne ili probne verzije alata koristi njih, daleko su jednostavnije nego da koristiš gcc ako ne ima tu i tamo po netu kompletnih EABI toolchainova za ARM mada ne znam kakvo je stanje za Win. Nemoj da zaboraviš da često nije uopšte jednostavno portovati nešto sa jednog razvojnog okruženja na drugo tako da dobro odaberi u čemu ćeš da pišeš.

Bogdan je lepo opisao stanje sa STovim bibliotekama ako rešiš njih da koristiš. Ja uglavnom prekopiram fajlove iz njihovih biblioteka u foldere projekta jer ćeš morati da menjaš i deo koda, tu i tamo po neki define, a i izbeći ćeš dosta problema sa putanjama ako znaš šta radiš.
[ Lazoman @ 15.09.2014. 12:18 ] @
Našao sam jedan veoma koristan sajt vezan za bas ovu ploču http://stm32f4-discovery.com/, ali naravno i tu dolazim do malog problema. Na sajtu je objašnjeno lepo korak po korak kako krenuti sa Keilom, i to na http://stm32f4-discovery.com/2014/04/stm32f429-discovery-with-cmsis-library-in-keil/, sve sam odradio i lepo je funkcionisalo, Keil sam aktivirao, tako da ne bi trebalo da imam bilo kakva ograničenja, ono što me muči i što ne znam kako da rešim jeste greška koju dobijam nakon dobro build-ovanog projekta, kada hoću da flešujem ploču a ona je ST-LINK USB communication error. Malo sam tragao po netu, da saznam šta je u pitanju i došao do ovog sajta http://www.keil.com/support/docs/3662.htm i nikako dalje da se pomaknem i da rešim ovaj problem. Koja to normalna da kažem firma omogućava downgrejdovanje firmware-a, uopšte ne znam kako da rešim ovaj problem, 100 kombinacija sam probao i ne ide. Gde uopšte da pronadjem stari firmware?
[ bogdan.kecman @ 15.09.2014. 12:29 ] @
da li vidis stlink iz stlink utility-a?
za keil moras rucno da podesis tamo da koristis stlink v2, da li si to namestao (da li si odradio upgrade za ST-Link Debug driver)?
[ Lazoman @ 15.09.2014. 12:37 ] @
Sve uradjeno, debugger podesen i vidi ga, kada treba da ga flesujem dobijam gore pomenuti ST-LINK USB communication error. Da bi ga debbuger opet vidio moram da restartujem plocu i Keil, ali opet sve u krug kad probam fleš.
[ bogdan.kecman @ 15.09.2014. 12:44 ] @
aj da ponovim pitanje

Citat:

3662.ZIP (829K)
Thursday, July 03, 2014


to si instalirao u keil?

posto ja kada sam to stavio vise nisam imao probleme
[ goran_68 @ 15.09.2014. 12:45 ] @
Probaj da ga flešuješ sa STM32 STLink Utility.
[ bogdan.kecman @ 15.09.2014. 12:50 ] @
to radi ali je smor ne radi ti debager iz keil-a i moras non stop da ides napolje da bi bacio program u mcu .. samo treba da patchne keil sa ovim updateom i sve prosljaka ok

eventualno moras da restartujes komp ako je widoza iskesirao stari dll
[ Lazoman @ 15.09.2014. 13:00 ] @
Load "STM32F429I-Discovery\\STM32F429I-Discovery.axf"
Erase Failed!
Error: Flash Download failed - "Cortex-M4"

Ovo sad dobijem nakon sto sam prekopirao ovaj fajl sto si mi poslao
[ Lazoman @ 15.09.2014. 13:06 ] @
Proraradilo, u pitanju je bilo Flash programming device, nisam ga podesio, ali kada sam to uradio, sve je krenulo da sljaka. :)
[ bogdan.kecman @ 15.09.2014. 13:27 ] @
aha, ti si pronasao onu stranicu koja ti kaze da treba da upgradeujes debuger ali nisi skinuo fajl i upgradeovao debuger :D .. super bitno da sad sljaka
[ Lazoman @ 22.09.2014. 10:24 ] @
Da li bi neko mogao da mi predloži neki dobar a ne preskup GSM modul ? Takođe magnetne senzore za vrata, detektore požara i pokreta?
[ Lazoman @ 25.10.2014. 11:12 ] @
Da li neko zna na koji način povezati magnetni senzor za vrata na mikrokontroler. Postoje samo dve žice, a meni treba još jedna za signalni pin.