 |
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
crashednburnt Član

Pridružen-a: Tor 16 Nov 2010 19:45 Prispevkov: 23 Aktiv.: 0.13 Kraj: Goriška
|
Objavljeno: Tor Nov 16, 2010 7:53 pm Naslov sporočila: FRI-SMS (ARM9) |
|
|
Pozdravljeni!
Zanima me, kako pristopit k programiranju te zadeve. Na faxu (FRI) smo sicer programirali v assemblerju, vendar je bil poudarek bolj na arhitekturi in delovanju samega procesorja, na vhodno/izhodnih napravah pa smo delali bore malo. Glede na to, da kolegi na Š-ARMu programirajo v Cju, me zanima, kako s tem začeti na FRI-SMS. Skratka, za npr. utripanje lučke ne bi rad več pisal 50 vrstic kode, bolj mi je pri srcu led_init() ipd. zadeve. Obstaja kakšna pametna dokumentacija, kakšne knjižnice za te zadeve? Kje izvedeti kaj več o samih vhodih/izhodih te zadeve, za priklop kakšne tipke/senzorja/LCDja na tole?
Za odgovore se vam že vnaprej zahvaljujem! |
|
Nazaj na vrh |
|
 |
matevzp Neznanec

Pridružen-a: Tor 03 Nov 2009 12:33 Prispevkov: 2 Aktiv.: 0.01 Kraj: Ljubljana
|
Objavljeno: Sob Jan 15, 2011 2:25 pm Naslov sporočila: |
|
|
začneš lahko z workspace-om helloworld, ki je bil včasih na ars2 spletni strani. sedaj, ko je ni več, je najbolje, da greš do šonca(LAPS laboratorij) in ga prosiš, če lahko to objavi. On kr obvlada te zadeve in ima več ali manj to čez(spletne strani in ostalo). Dejansko je na naših platicah z winideo še lažje delat kot na šarmih(da ne omenjam neprimerljive veličine naše platice ).
Kako začneš?
vse je skrito v header fajlu, kjer imaš naslove vsega(med drugim tudi naslovov do ledic in podobnega). veliko libov maš na arm91.com samo ne direktno vzet tistega in probat pognat, ker se zadeve razlikujejo, kot npr. printf morš sam spisat(ni problema, ker maš v hello world že spisan printk kar je dejansko naš okrnjen printf).
če si dosti poslušal na vajah, ti ne bo problem potem delat gor kar koli pač želiš. vse, kar hočeš potem "handlat" v Cju, boš pač spisal svoje funkcije, ki bodo delale željena dela. Načeloma ni tok različno od assemblija, če si se kej poglabljal(še vedno moraš na določenem naslovu v določen register kaj vpisat) in se ti bo mogoče na trenutke zdelo, da bi bilo clo lažje spisat v assembliju. Ampak vse naslove maš tukaj že podane v header fajlih.
Tvoj priročnik naj bo 12.5mb velik reference book ki ga najdeš na laps.fri.uni-lj.si/fri-sms v linku "listine". tm notri piše VSE kar potrebuješ za handlanje pio, sdcard slota, usbja ... dejansko vse. Potem ti ostane samo ena stopnja više: razumevanje protokolov, ki se uporabljajo za usb, sdcard reader itd. To je pa dejansko "neodvisno" od platforme, ker moraš pač samo sam spisat osnovne funkcije in potem povezat zadevo skupaj v nek delujoč program.
sicer ne vem, če si imel to v mislih glede tega, kar bi delal ti na tej platici, ampak hope it helps  |
|
Nazaj na vrh |
|
 |
71GA Član


Pridružen-a: Tor 16 Jun 2009 18:53 Prispevkov: 391 Aktiv.: 2.00 Kraj: Ljubljana
|
Objavljeno: Ned Jan 30, 2011 9:43 am Naslov sporočila: |
|
|
Predlagam, da se najprej odločiš ali boš delal bare metal programe (brez operacijskega sistema) ali pa programe z operacijskim sistemom. Jaz se učim bare metal trenutno in zadeva ni enostavna, ker je popolnoma premalo literature. V katerem operacijskem sistemu pa bi rad delal. Predlagam Windows za lažje delo in Linux, če se hočeš bolj detajlno naučiti vse skupaj. |
|
Nazaj na vrh |
|
 |
MarkoSan Član

Pridružen-a: Pon 11 Dec 2006 12:20 Prispevkov: 123 Aktiv.: 0.54 Kraj: Ljubljana
|
Objavljeno: Ned Dec 04, 2011 1:48 pm Naslov sporočila: |
|
|
Jaz bi pa nekaj vprasal glede SMS-FRI razvojne plosce. Namrec, nalozim workspace (projekt) in ga buildam. Zbuilda se lepo, brez napak, nato se downloada na plosco. Do tu je vse ok (obcasno se mi pojavi Verify Error, tudi to mi ni jasno, niti asistentu, ki je zadolzen za plosco), vendar moje mnenje je, da zbuildan elf file ni enak tistemu, ki ga nalozi v plosco, ker v nekaterih vrsticah ne morem postaviti breakpointa (naprimer: v vrstici "while(1);" na koncu funkcije main), drugje jo pa lahko postavimo na cudnem mestu (prazna vrstica). Kako bi to lahko saniral?
S spostovanjem in vnaprej se zahvaljujem za nasvete,
M. |
|
Nazaj na vrh |
|
 |
71GA Član


Pridružen-a: Tor 16 Jun 2009 18:53 Prispevkov: 391 Aktiv.: 2.00 Kraj: Ljubljana
|
Objavljeno: Ned Dec 04, 2011 2:15 pm Naslov sporočila: |
|
|
Čudno, da v MCU nalagaš .elf datoteko. Jaz sem pri prevajanju dobil vedno .elf datoteko, katere pa prek USB še nisem mogel naložiti v MCU. Sem moral to isto dateko še pripraviti na USB nalaganje za kar sem uporabil najprej orodje v razvojni verigi GCC, ki se imenuje "objcopy". S tem orodjem sem format "elf32-littlearm" prevedel v binarni format, kateremu sem nato pripel še CRC header.
Čudno mi je tole tvoje...a maš tole ARM7-tdmi procesor??? i ti namreč pove, da ma procesor notri EmbeddedICE makro celico, ki omogoča razhroščevanje. Ker če tega nima pol ne moreš nič  |
|
Nazaj na vrh |
|
 |
MarkoSan Član

Pridružen-a: Pon 11 Dec 2006 12:20 Prispevkov: 123 Aktiv.: 0.54 Kraj: Ljubljana
|
Objavljeno: Ned Dec 04, 2011 2:58 pm Naslov sporočila: |
|
|
71GA je napisal/a: |
Čudno, da v MCU nalagaš .elf datoteko. Jaz sem pri prevajanju dobil vedno .elf datoteko, katere pa prek USB še nisem mogel naložiti v MCU. Sem moral to isto dateko še pripraviti na USB nalaganje za kar sem uporabil najprej orodje v razvojni verigi GCC, ki se imenuje "objcopy". S tem orodjem sem format "elf32-littlearm" prevedel v binarni format, kateremu sem nato pripel še CRC header.
Čudno mi je tole tvoje...a maš tole ARM7-tdmi procesor??? i ti namreč pove, da ma procesor notri EmbeddedICE makro celico, ki omogoča razhroščevanje. Ker če tega nima pol ne moreš nič  |
Imam ARM9, ampak asistenst na faksu mi je dal prazen, sestavljen projekt tocno za FRI-SMS plosco in nikakor mi noce delovati! Ja, WinIDEa zgenerira .elf file, ki ga nato downloadam na plosco! Imas kako idejo, kako bi primerjal vsebini v pomnilniku in v .elf datoteki, ki ga zgenerira WinIDEa? |
|
Nazaj na vrh |
|
 |
71GA Član


Pridružen-a: Tor 16 Jun 2009 18:53 Prispevkov: 391 Aktiv.: 2.00 Kraj: Ljubljana
|
Objavljeno: Ned Dec 04, 2011 5:57 pm Naslov sporočila: |
|
|
Ti si to delal preko grafičnega vmesnika? V kolikor DA, ti predlagam, da se naučiš uporabe WinIDEa v konzolnem načinu, kjer boš imel dodatne možnosti za ukaze, katere mogoče sploh ne veš, da obstajajo... |
|
Nazaj na vrh |
|
 |
MarkoSan Član

Pridružen-a: Pon 11 Dec 2006 12:20 Prispevkov: 123 Aktiv.: 0.54 Kraj: Ljubljana
|
Objavljeno: Ned Dec 04, 2011 9:31 pm Naslov sporočila: |
|
|
71GA je napisal/a: |
Ti si to delal preko grafičnega vmesnika? V kolikor DA, ti predlagam, da se naučiš uporabe WinIDEa v konzolnem načinu, kjer boš imel dodatne možnosti za ukaze, katere mogoče sploh ne veš, da obstajajo... |
Aha, naj pogluglam ali mi bos dal za napotek kaki link ali pdf?  |
|
Nazaj na vrh |
|
 |
71GA Član


Pridružen-a: Tor 16 Jun 2009 18:53 Prispevkov: 391 Aktiv.: 2.00 Kraj: Ljubljana
|
Objavljeno: Ned Dec 04, 2011 11:55 pm Naslov sporočila: |
|
|
Tega tvojega programa ne poznam, tako da imaš najbrž več možnosti če pogooglaš. |
|
Nazaj na vrh |
|
 |
MarkoSan Član

Pridružen-a: Pon 11 Dec 2006 12:20 Prispevkov: 123 Aktiv.: 0.54 Kraj: Ljubljana
|
Objavljeno: Tor Dec 06, 2011 11:57 pm Naslov sporočila: |
|
|
71GA je napisal/a: |
Tega tvojega programa ne poznam, tako da imaš najbrž več možnosti če pogooglaš. |
Ok, nekako se mi je usrackalo, da teh problemov ni vec (zaenkrat). Sedaj pa imam drugi problem: Namrec, na procesorrjev Port B (na FRI SMS plosci) sem priklopil LCD ekrancek DEM16216, ki bi ga rad krmilil preko omenjenega porta. Gledavsi dokumentacijo procesorja se z vpisom v register PIO_PER (register je write only) vpise, kateri pini bodo krmiljeni z procesorjem in kateri ne. Vrednost PIO_PER, ker je register write only, beremo z registrom PIO_PSR in tu naletim na problem, saj sledeca koda:
Koda: |
void initPIO_Port(const AT91PS_PIO port)
{
if(port==0)
return;
port->PIO_PER=0xffffffff;
port->PIO_OER=0xffffffff;
} // initPIO_Port |
ne deluje, kakor bi morala!!! Po vpisu samih enic v PIO_PER bi morala vsebina PIO_PSR biti 0xffffffff, vendar ni! Kako je to mogoce???
Lp,
M.[/code] |
|
Nazaj na vrh |
|
 |
71GA Član


Pridružen-a: Tor 16 Jun 2009 18:53 Prispevkov: 391 Aktiv.: 2.00 Kraj: Ljubljana
|
Objavljeno: Sre Dec 07, 2011 9:27 am Naslov sporočila: |
|
|
V "user manualu" za svoj mikroprocesor si poglej IOCONFIG modul, pa tisto naštudiraj in bo šlo. |
|
Nazaj na vrh |
|
 |
MarkoSan Član

Pridružen-a: Pon 11 Dec 2006 12:20 Prispevkov: 123 Aktiv.: 0.54 Kraj: Ljubljana
|
Objavljeno: Sre Dec 07, 2011 9:29 am Naslov sporočila: |
|
|
71GA je napisal/a: |
V "user manualu" za svoj mikroprocesor si poglej IOCONFIG modul, pa tisto naštudiraj in bo šlo. |
No tega modula ni v manualu, ampak vseeno hvala za napotke, si mislil na Parallel Input/Output Controller (PIOA, PIOB, PIOC). Mislim, da nisem prej nastimal Clock-a za Peripheral Controller in sedaj se ubadam s tem ... |
|
Nazaj na vrh |
|
 |
71GA Član


Pridružen-a: Tor 16 Jun 2009 18:53 Prispevkov: 391 Aktiv.: 2.00 Kraj: Ljubljana
|
Objavljeno: Sre Dec 07, 2011 11:22 am Naslov sporočila: |
|
|
No v glavnem ne vem kako se to v tvojem procesorju imenuje ampak ja to sem mislil . S clockom pa veliko sreče, kot vem je CGU kar zahteven modul  |
|
Nazaj na vrh |
|
 |
MarkoSan Član

Pridružen-a: Pon 11 Dec 2006 12:20 Prispevkov: 123 Aktiv.: 0.54 Kraj: Ljubljana
|
Objavljeno: Sre Dec 07, 2011 11:49 am Naslov sporočila: |
|
|
71GA je napisal/a: |
No v glavnem ne vem kako se to v tvojem procesorju imenuje ampak ja to sem mislil . S clockom pa veliko sreče, kot vem je CGU kar zahteven modul  |
No saj te nisem mislil kritizirati, misljeno je bilo, ce bo se kdo to rabil, da ne bo iskal po manualu kot norec.  |
|
Nazaj na vrh |
|
 |
Mbili Član

Pridružen-a: Tor 03 Jan 2012 20:14 Prispevkov: 34 Aktiv.: 0.21 Kraj: Ljubljana
|
Objavljeno: Tor Jan 03, 2012 8:33 pm Naslov sporočila: Re: FRI-SMS (ARM9) |
|
|
crashednburnt je napisal/a: |
Pozdravljeni!
Zanima me, kako pristopit k programiranju te zadeve. Na faxu (FRI) smo sicer programirali v assemblerju, vendar je bil poudarek bolj na arhitekturi in delovanju samega procesorja, na vhodno/izhodnih napravah pa smo delali bore malo. Glede na to, da kolegi na Š-ARMu programirajo v Cju, me zanima, kako s tem začeti na FRI-SMS. Skratka, za npr. utripanje lučke ne bi rad več pisal 50 vrstic kode, bolj mi je pri srcu led_init() ipd. zadeve. Obstaja kakšna pametna dokumentacija, kakšne knjižnice za te zadeve? Kje izvedeti kaj več o samih vhodih/izhodih te zadeve, za priklop kakšne tipke/senzorja/LCDja na tole?
Za odgovore se vam že vnaprej zahvaljujem! |
Na spletni strani FRI-SMS je objavljena projektna datoteka za okolje WINIDEA, ki omogoča pisanje samostojnih aplikacij (brez OS) v jeziku C in izkorišča 64 MB DRAM pomnilnika, ki je na voljo v FRI-SMS. V projektu je krajša knjižnjica C funkcij za delo z V/I napravami v AT91SAM9260. Celotna knjižnica raznih funkcij je brezplačno na voljo na spletni strani podjetja Atmel. |
|
Nazaj na vrh |
|
 |
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu Ne, ne moreš pripeti datotek v tem forumu Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 5 dni
Powered by phpBB © 2001, 2005 phpBB Group
|