Kazalo po Svet elektronike forumu Svet elektronike
Revija za prave elektronike
 
AlbumAlbum   Pomoč pogostih vprašanjPomoč pogostih vprašanj   IščiIšči   Seznam članovSeznam članov   Skupine uporabnikovSkupine uporabnikov   Registriraj seRegistriraj se 
 Tvoj profilTvoj profil   Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil   PrijavaPrijava 

Kdo-kako
Pojdi na stran 1, 2, 3, 4  Naslednja
 
Objavi novo temo   Odgovori na to temo    Kazalo po Svet elektronike forumu -> Za začetnike
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
komuna32
Profesionalec


Pridružen/-a: Pet Sep 2006 8:49
Prispevkov: 54
Kraj: Pragersko

PrispevekObjavljeno: Tor Apr 10, 2007 12:04 pm    Naslov sporočila: Kdo-kako Odgovori s citatom

Pozdravljeni

Zanima me, če sploh kdo programira v uVison-ovem orodju in
to z LPC9xx-ji.
Jaz pač mislim, da sem sam v tem svetu, ker mi noče nihče odgovarjati.
Zanima me predvsem kako začeti.
Kako napisati program, da mi bo Led utripnila.....
Katere ukaze lahko uporabim, skratka začetek.
Ker sem upazil, da se mojstrom ne ljubi ponovno razlagat začetke, samo
vi ste tudi tako začeli, kot jaz.
Se pač oproščam, če sem se rodil v napačnem času.

LP
Aleš

P.S.
Vem da sem že tečen.

_________________
Pogumen je tisti, ki
prizna da ga je strah.
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
Gustav
Profesionalec


Pridružen/-a: Pon Jun 2005 17:19
Prispevkov: 768

PrispevekObjavljeno: Tor Apr 10, 2007 12:43 pm    Naslov sporočila: Re: Kdo-kako Odgovori s citatom

komuna32 je napisal/a:
Jaz pač mislim, da sem sam v tem svetu, ker mi noče nihče odgovarjati.


Ker ne napises nobenega smiselnega (konkretnega) vprasanja, ne mores dobiti nobenega smiselnega (konkretnega) odgovora. Digitalna elektronika je - tako kot racunalnistvo - precej eksaktna zadeva in nekaj tako ohlapno opisanega, kot je "da mi bo Led utripnila", je mozno narediti na mnogo nacinov.

Citiram:
Zanima me predvsem kako začeti.


Sedi pred racunalnik in pozeni uVision.

Citiram:
Kako napisati program, da mi bo Led utripnila.....


S tipkovnico gre najlazje.

Citiram:
Katere ukaze lahko uporabim, skratka začetek.


Tiste, katere pozna mikrokontroler (assembler) oz. prevajalnik (ce uporabljas C). Njihov seznam najdes v prilozeni literaturi (datasheet in User Manual za izbrani MCU ter C51 User Guide in C51 Library Functions).

Uporabi visjenivojskega jezika navkljub se ni mogoce izogniti natancnemu poznavanju arhitekture in izbranega MCUja; ti si ocitno zacel na povsem napacnem koncu (= nimas pojma o MCUju, katerega zelis uporabiti, niti nimas konkretne izvedbe aplikacije/HW, rad pa bi napisal program, ki bi poganjal tebi nerazumljivo neobstojeco napravo). Najprej preberi User Manual in datasheet, potem premisli kaj je potrebno narediti, da sploh lahko dosezes svoj cilj (torej kako prizigati in ugasati LEDico), potem si zamisli HW in ko bos vse to imel, je pisanje programa relativno preprosto, ne glede na izbiro orodja in jezika.
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
komuna32
Profesionalec


Pridružen/-a: Pet Sep 2006 8:49
Prispevkov: 54
Kraj: Pragersko

PrispevekObjavljeno: Tor Apr 10, 2007 1:43 pm    Naslov sporočila: Odgovori s citatom

Saj sem že programiral v Bascomu.
Ampak uVision orodje je povsem drugačno.

Rad bi sprogramiral, da bi na LCD-ju napisalo "Hello".

V Bascomu je zgledalo takole:
LCD "Hello"

LP
Aleš

_________________
Pogumen je tisti, ki
prizna da ga je strah.
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
Jure
Urednik


Pridružen/-a: Pon Jan 2004 12:51
Prispevkov: 2132
Kraj: Ljubljana

PrispevekObjavljeno: Tor Apr 10, 2007 2:02 pm    Naslov sporočila: Odgovori s citatom

Aleš,

če se prav spomnim je o tem bilo nekaj napisanega v seriji člankov:

http://www.svet-el.si/cgi-bin/art.cgi?keyword=delimar&action=I%9A%E8i

Članke najdeš tukaj:

http://www.svet-el.si/revija/index.php

in v iskalnik vtipkaj ARM

Lp
Jure
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
komuna32
Profesionalec


Pridružen/-a: Pet Sep 2006 8:49
Prispevkov: 54
Kraj: Pragersko

PrispevekObjavljeno: Tor Apr 10, 2007 2:07 pm    Naslov sporočila: Odgovori s citatom

Samo jaz imam LPC936
in ta je družine LPC900 in ne ARM.

Aleš

_________________
Pogumen je tisti, ki
prizna da ga je strah.
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
Jure
Urednik


Pridružen/-a: Pon Jan 2004 12:51
Prispevkov: 2132
Kraj: Ljubljana

PrispevekObjavljeno: Tor Apr 10, 2007 2:38 pm    Naslov sporočila: Odgovori s citatom

komuna32 je napisal/a:
Samo jaz imam LPC936
in ta je družine LPC900 in ne ARM.

Aleš


Ups... sem spregledal tisto 9 v številki... nekaj je bilo apsanega tudi o teh LPC-jih. Vtipkaj v iskalnike LPC. Drugače pa lahko tega LPC-ja programiraš v Bascomu, če nisi vedel...

Lp
Jure
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
Gustav
Profesionalec


Pridružen/-a: Pon Jun 2005 17:19
Prispevkov: 768

PrispevekObjavljeno: Tor Apr 10, 2007 2:41 pm    Naslov sporočila: Odgovori s citatom

V uVisionu pa moras uporabiti/napisati ustrezno proceduro za izpis na LCD (ta del ti Bascom prikrije), jo recimo poimenujes lcdprint() in potem lahko po mili volji delas

lcdprint("Hello");

Za Bascom je tako proceduro avtor ze napisal, v uVisionu bos pa ali moral uporabiti eno tistih, ki so jih napisali drugi (skupaj z vsemi omejitvami) ali pa napisati svojo.
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
komuna32
Profesionalec


Pridružen/-a: Pet Sep 2006 8:49
Prispevkov: 54
Kraj: Pragersko

PrispevekObjavljeno: Tor Apr 10, 2007 3:48 pm    Naslov sporočila: Odgovori s citatom

Zanima me še kje jo najdem.

Znam samo napisati osnove, če so pravilne

Led.c
#include <reg936>
void main ()
{

P2M1 = 0X01
P2M1 = 0X02
.
.
.

}

Kaj pa če želim, da se med prvim in drugim ukazom počaka 1sek.
Npr. v Bascomu je to ukaz wait1.

_________________
Pogumen je tisti, ki
prizna da ga je strah.
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
Gustav
Profesionalec


Pridružen/-a: Pon Jun 2005 17:19
Prispevkov: 768

PrispevekObjavljeno: Tor Apr 10, 2007 5:56 pm    Naslov sporočila: Odgovori s citatom

Tukaj pa napises svojo proceduro, ki ji lahko konec koncev reces tudi wait() in jo klices z

wait(1);

Kako bo zeljeno procedura dosegla, je stvar tvoje izvedbe (doticni MCU ima vec virov casa, s katerimi je mogoce tako stvar narediti, nekaj timerjev in nekaksen RTC, ki tudi uporablja sistemski clock za referenco).

Jaz imam najraje timer v autoreload nacinu, ker ni nobene potrebe po kompenzaciji stevila ciklov, njegov ISR pa skrbi za stanje stevcev (en stevec steje osnovne enote, en milisekunde in en sekunde). Taka procedura pri ob klicu prebere stanje stevca in pocaka na ustrezno vrednost (ter kompenzira za morebitni overflow).
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
komuna32
Profesionalec


Pridružen/-a: Pet Sep 2006 8:49
Prispevkov: 54
Kraj: Pragersko

PrispevekObjavljeno: Tor Apr 10, 2007 6:38 pm    Naslov sporočila: Odgovori s citatom

Torej če sem prav razumel lahko napišem takole:

Led.c
#include <reg936>
void wait()
{
P2M1 = 0X01
wait(1); ------ali kaj drugega
P2M1 = 0X02
.
.
.
.
}


Aleš

_________________
Pogumen je tisti, ki
prizna da ga je strah.
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
Gustav
Profesionalec


Pridružen/-a: Pon Jun 2005 17:19
Prispevkov: 768

PrispevekObjavljeno: Tor Apr 10, 2007 6:45 pm    Naslov sporočila: Odgovori s citatom

Razumel si narobe. Napisal si rekurzivno proceduro, ki ne pocne nic koristnega in v nekaj iteracijah zapolni cel stack ter prepreci normano delovanje mikrokontrolerja.

napises takole:

void wait(i: unsigned int);
{
... /* tukaj pride telo funkcije, ki pocaka i casovnih enot */
}

in jo uporabis tako, kot si ti napisal nizje, torej

wait(1);
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
komuna32
Profesionalec


Pridružen/-a: Pet Sep 2006 8:49
Prispevkov: 54
Kraj: Pragersko

PrispevekObjavljeno: Tor Apr 10, 2007 7:10 pm    Naslov sporočila: Odgovori s citatom

Nekako takole:

void wait(i: unsigned int);
{
P2 = i;

i = 0X01;
wait(1);
i = 0X02;
wait(1);
}

zanima

_________________
Pogumen je tisti, ki
prizna da ga je strah.
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
VolkD
Profesionalec


Pridružen/-a: Sre Maj 2006 22:34
Prispevkov: 142
Kraj: Divača

PrispevekObjavljeno: Tor Apr 10, 2007 8:18 pm    Naslov sporočila: Odgovori s citatom

Naučiti se moraš jezika C. Ko boš to znal, ti bo vseeno katere mikrokontrolerje programiraš. Seveda, boš moral spoznati specifike dotičnega mikrokontrolerja, a to je že druga stvar.

V reviji SE je do sedaj izšlo že kar nekaj mojih nadaljevanj o jeziku C in delu z mikrokontrolerji. Vem, da ti ne bo všeč, a pisani so okrog AVR-jev. Glede na to, da so članki pisani prav za začetnike, torej take, ki začno od nile dalje, ti vseeno priporočam, da se jih lotiš in stvari, ki so tam tudi narediš.

Obljubim ti vso pomoč. Lahko dobiš tudi slike filmov, če boš izdeloval tiskana vezja.

Darko.

_________________
Preden zaspiš zapri oči. Preden zapreš oči, ustavi avto.
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
komuna32
Profesionalec


Pridružen/-a: Pet Sep 2006 8:49
Prispevkov: 54
Kraj: Pragersko

PrispevekObjavljeno: Tor Apr 10, 2007 8:20 pm    Naslov sporočila: Odgovori s citatom

Pa še to če mora biti podpišje na koncu


void wait(i: unsigned int);

ko pa zbrišem podpišje pa napiše

error C141: syntax error near ':', expected ')'

kaj je tega vzrok.

Aleš

_________________
Pogumen je tisti, ki
prizna da ga je strah.
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
komuna32
Profesionalec


Pridružen/-a: Pet Sep 2006 8:49
Prispevkov: 54
Kraj: Pragersko

PrispevekObjavljeno: Tor Apr 10, 2007 8:43 pm    Naslov sporočila: Odgovori s citatom

Gospod Darko Volk

Saj se poskušam naučiti programskega jezika C, toda
katero literaturo mi priporočate.

Ali za AVR-je veljajo isti ukazi kot za LPC-je(v uVision).

Hvala za ponudbo filmov sem jih že videl, so zelo poučni, ampak jaz raje
jedkam kar v navadni posodi.

Imam malo znanja iz Bascoma (samo osnove).

Aleš

_________________
Pogumen je tisti, ki
prizna da ga je strah.
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo    Kazalo po Svet elektronike forumu -> Za začetnike Časovni pas GMT + 1 ura, srednjeevropski - zimski čas
Pojdi na stran 1, 2, 3, 4  Naslednja
Stran 1 od 4

 
Pojdi na:  
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
You cannot attach files in this forum
You cannot download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group