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


Pridružen-a: Čet 18 Mar 2004 10:16 Prispevkov: 510 Aktiv.: 2.15 Kraj: Trbovlje
|
Objavljeno: Ned Jan 22, 2006 1:39 pm Naslov sporočila: |
|
|
LP
LST datoteko.
P
Opis: |
|
 Download |
Ime datoteke: |
Prvi.doc |
Velikost datoteke: |
272.91 KB |
Downloadano: |
15 krat |
|
|
Nazaj na vrh |
|
 |
Highlag Član


Pridružen-a: Pet 23 Jan 2004 20:42 Prispevkov: 4034 Aktiv.: 17.03 Kraj: Črnuče
|
Objavljeno: Ned Jan 22, 2006 1:41 pm Naslov sporočila: |
|
|
Če se ne motim bi moral C prevajalnik na koncu narediti HEX datoteko, ki se jo nato prenese v mikrokontroler.
To HEX datoteko lahko v MpLab-u prevedeš v ASM datoteko.
_________________ If at first you don't succeed, destroy all evidence that you tried. |
|
Nazaj na vrh |
|
 |
Sokrat Član


Pridružen-a: Čet 25 Avg 2005 11:00 Prispevkov: 5584 Aktiv.: 23.57
|
Objavljeno: Ned Jan 22, 2006 2:03 pm Naslov sporočila: |
|
|
Highlag, .hex-a ne bo sel nihce pregledovati in preverjati ali se koda, napisana v C-ju sploh pravilno prevede, ce je na voljo (precej bolj berljiv) assembly listing,
|
|
Nazaj na vrh |
|
 |
NeoTO Član


Pridružen-a: Pon 28 Mar 2005 19:19 Prispevkov: 2752 Aktiv.: 11.62 Kraj: Trzic
|
Objavljeno: Ned Jan 22, 2006 2:03 pm Naslov sporočila: |
|
|
Saj tole je isto. Še boljše je, ker vidiš zraven C stavke...
V tejle kodi zgleda vse čisto v redu. Čudno...
|
|
Nazaj na vrh |
|
 |
saso Član


Pridružen-a: Čet 18 Mar 2004 10:16 Prispevkov: 510 Aktiv.: 2.15 Kraj: Trbovlje
|
Objavljeno: Ned Jan 22, 2006 6:26 pm Naslov sporočila: |
|
|
LP
Ali res ni nihče v C-ju priklapljav LCD-ja na pine, ki jih je sam določil.
Če je kdo nej napiše prosem kako se to naredi, ker men že zmankuje idej.
Sem se v dobri veri vrgu na C, češ da je lažje kot v asemblerj. Pa pred leti ko sem se lotil assemblerja nisem imel toliko težav.
LP
|
|
Nazaj na vrh |
|
 |
NeoTO Član


Pridružen-a: Pon 28 Mar 2005 19:19 Prispevkov: 2752 Aktiv.: 11.62 Kraj: Trzic
|
Objavljeno: Ned Jan 22, 2006 7:37 pm Naslov sporočila: |
|
|
Če želiš svojo vezavo LCD-ja, zakaj potem ne napišeš svojih procedur za krmiljenje? Saj ni tak problem.
|
|
Nazaj na vrh |
|
 |
saso Član


Pridružen-a: Čet 18 Mar 2004 10:16 Prispevkov: 510 Aktiv.: 2.15 Kraj: Trbovlje
|
Objavljeno: Ned Jan 22, 2006 7:56 pm Naslov sporočila: |
|
|
lp
NeoTO prav o tem sem že razmišljal in hotel tudi to naredit, pa sem poskusu še eno stvar pa je zadeva stekla.
Nevem kaka "glupa" fora je to, da sem mogel v projekt vključit še vse ostale funkcije, ki jih uporablja ta XLCD, kot so Busy XLCD, OpenXLCD, putcXLCD..., še kar nekaj jih je.
Upam, pa da je sedaj ta problem rešen in se vsem zahvaljujem za pomoč.
Upam, da pri drugih funkcijah ne bio takih problemov, kot pri tej, zdaj ko vem kaj vse je potrebno vključit v projekt.
Hvala še enkrat.
LP
|
|
Nazaj na vrh |
|
 |
LoLek Član

Pridružen-a: Sre 25 Feb 2004 12:46 Prispevkov: 343 Aktiv.: 1.45
|
Objavljeno: Pon Jan 23, 2006 12:15 pm Naslov sporočila: |
|
|
OpenXLCD pa ja moraš poklicati, če sploh hočeš incializirati LCD. Ali ne?
Sicer je pa zelo enostavno napisati svoje procedure za LCD. Samo poiskati moraš datasheet od krmilnika na LCD-ju.
|
|
Nazaj na vrh |
|
 |
saso Član


Pridružen-a: Čet 18 Mar 2004 10:16 Prispevkov: 510 Aktiv.: 2.15 Kraj: Trbovlje
|
Objavljeno: Pon Jan 23, 2006 12:23 pm Naslov sporočila: |
|
|
LP
Jasno, da ga moraš poklicat če želiš inicializirat displej, ni pa ga potrebno vklučit v projekt, če uporabljaš originalno razporeditev pinov za lcd (kot je v originalu definirano v MCC18-).
Če pa želiš definirat svoje pine za lcd pa je potrebno vse funkcije v zvezi z lcd-jem vključit v projekt, da jih potem prevajalnik ponovno prevede.
Tega prej nisem vedel.
LP
|
|
Nazaj na vrh |
|
 |
kekec Član

Pridružen-a: Pon 22 Dec 2003 12:17 Prispevkov: 41 Aktiv.: 0.17 Kraj: koroška
|
Objavljeno: Sob Jul 28, 2007 9:44 pm Naslov sporočila: |
|
|
LP
Pred parimi dnevi sem se malo spravil zraven prvič malo programirati PIC-e, ker sem porabil vse avr-je, pic-e pa sem že nekaj časa nazaj dobil kot sample.
Pri priklapljanju LCD-ja pa sem naletel na podobno težavo kot Saso, ki sem jo odpravil tako kot je napisal v svojem predzadnjem postu, torej v projekt sem vključil vse knjižnice za lcd. Težava pa nastopi, ko poizkusim projekt build-at javi:
C:\Elektronika\PIC uC\Programi\PIC_LCD\putrsxlcd.c:17:Error [1109] type mismatch in redeclaration of 'putrsXLCD'
Nekaj se mi sicer svita kaj je narobe, samo ne znam pa tega odpraviti.
In še vsebina putrsxlcd knjižnice:
Koda: |
#include <p18cxxx.h>
#include <xlcd.h>
void putrsXLCD(const rom char *buffer)
{
while(*buffer) // Write data to LCD up to null
{
while(BusyXLCD()); // Wait while LCD is busy
WriteDataXLCD(*buffer); // Write character to LCD
buffer++; // Increment buffer
}
return;
}
Ja in še del mojega programa, ki je direktno iz MCC18 libraries:
while(1)
{
char mybuff [20];
putrsXLCD("Hello World");
putsXLCD( mybuff );
Delay1KTCYx(50);
}
|
Če torej kdo ve kje sem ga polomil bi bil zelo hvaležen da napiše kako in kaj
lp, ožbi
_________________ Kar je najvažnejše je da se zavedamo obstoja! |
|
Nazaj na vrh |
|
 |
Sokrat Član


Pridružen-a: Čet 25 Avg 2005 11:00 Prispevkov: 5584 Aktiv.: 23.57
|
Objavljeno: Sob Jul 28, 2007 10:27 pm Naslov sporočila: |
|
|
Ena napaka, ki nima veze s tem sporocilom, jo je pa vseeno potrebno odpraviti, je, da niz znakov ni terminiran z \0.
A je koda pravilno skopirana ? Sprasujem zaradi tega, ker nima 17 vrstic.
_________________ Ka ti bo pa torba ce si kupu kolo ? |
|
Nazaj na vrh |
|
 |
kekec Član

Pridružen-a: Pon 22 Dec 2003 12:17 Prispevkov: 41 Aktiv.: 0.17 Kraj: koroška
|
Objavljeno: Ned Jul 29, 2007 12:26 am Naslov sporočila: |
|
|
Kodo sem prilepil brez komentarja knjižnice, v bistvu mi ni jasno kaj točno pomeni type mismatch in redeclaration of 'putrsXLCD'.
_________________ Kar je najvažnejše je da se zavedamo obstoja! |
|
Nazaj na vrh |
|
 |
Sokrat Član


Pridružen-a: Čet 25 Avg 2005 11:00 Prispevkov: 5584 Aktiv.: 23.57
|
Objavljeno: Ned Jul 29, 2007 9:40 am Naslov sporočila: |
|
|
Kur*ev reconnect na 24 ur ... napisal sem tri odstavke odgovora, ki je zaradi tega sel po gobe
V glavnem, ce je program prepisan tocno tako, kot je napisan, potem se ne bo nikoli prevedel, saj niso vkljuceni headerji z deklaracijami funkcij putrsXLCD(), putsXLCD() in Delay1KTCYx(), pa tudi ce bi se, ne bi deloval pravilno (ze prej omenjen bug).
_________________ Ka ti bo pa torba ce si kupu kolo ? |
|
Nazaj na vrh |
|
 |
bungee Član


Pridružen-a: Pon 07 Mar 2005 18:49 Prispevkov: 1479 Aktiv.: 6.24 Kraj: Ljubljana
|
Objavljeno: Ned Jul 29, 2007 12:57 pm Naslov sporočila: |
|
|
Saso kje definiraš port za LCD. Sicer uporabljam CCS, ki ima tudi knjižnice in če želim zamenjat port moram pred #include napisat še
#define DATA_PORT PORTC
#define TRIS_DATA_PORT TRISC
in potem zadeve delujejo OK. Načeloma lahko to popraviš tudi v header datoteki.
|
|
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: 493 dni
Powered by phpBB © 2001, 2005 phpBB Group
|