Fórum témák

» Több friss téma
Fórum » PIC - Miértek, hogyanok haladóknak
Lapozás: OK   862 / 1319
(#) tardis válasza erdoszoli hozzászólására (») Dec 17, 2010 /
 
1. Az nem lehet, hogy a const char kavar be? Én egyelőre kiremelném a putst fv törzsét.

2. Tuti, hogy a hívások előtt van definiálva, vagy deklarálva legalább? Én mindig ki szoktam szedni header-ekbe a deklarációkat. Biztos, ami biztos.
(#) icserny válasza erdoszoli hozzászólására (») Dec 17, 2010 /
 
Én C18-ban dolgozom, ami az MPLAB-ban nincs benne, hanem külön kell telepíteni. Ennek köszönhetően első használat előtt az útvonalakat is be kell állítani! Én a Program Files/Microchip/MCC18-ba telepítettem, az általam közzétett kész projektek is ehhez vannak igazítva.
(#) erdoszoli válasza tardis hozzászólására (») Dec 17, 2010 /
 
A const char előtag a hitech manualban volt leirva hogy így kell használni, hittem neki.. Nem tudom az kavar e be..
2: én is így szoktam... ott van minden fv deklarálás , majd később a fv törzse.
(#) icserny válasza tardis hozzászólására (») Dec 17, 2010 /
 
Idézet:
„Az nem lehet, hogy a const char kavar be?”
Nem. Az előre megadott karakterfüzéreket a programmemóriában kell tárolni, ezért a karakterfüzért kiírató eljárásnak olyan mutatót kell megadni, ami a programmemóriába mutat. Ehhez kell a const char *str deklaráció.
(#) erdoszoli válasza icserny hozzászólására (») Dec 17, 2010 /
 
Okos kérdés : Ez megfelelő C18 ugye?
MPLAB C for PIC18 v3.37 Upgrade Version
(#) erdoszoli válasza erdoszoli hozzászólására (») Dec 17, 2010 /
 
Persze előbb a student verzio is felkerülne...
(#) icserny válasza erdoszoli hozzászólására (») Dec 17, 2010 /
 
Bőven elég a student verzió, az upgrade tudtommal nem ad hozzá semmit. Az upgrade telepítésnek csak akkor van értelme, ha már volt telepítve full verzió (vagy valami full verziónak látszó tárgy...) és azt akarod frissíteni az újabb full verzióra.
(#) Attila86 hozzászólása Dec 17, 2010 /
 
Találkoztatok már ilyen hibával? Egy PIC18F4520-ra rákötöttem egy 4x20-as LCD-t. A hiba, hogy maximum három karaktert tudok rá kiíratni! Amint a negyediket elküldöm, a kijelzés megszűnik!
Elképzelésem sincs mi baja lehet...

Szerk.:
Van hogy már a harmadik karakternél elszáll. Ez bolond...
(#) trudnai válasza Attila86 hozzászólására (») Dec 17, 2010 /
 
Valamit nyilvan nem jol csinalsz, de ha nem linkeled be a programot akkor nehez segiteni...
(#) Attila86 válasza trudnai hozzászólására (») Dec 17, 2010 /
 
Teljesen ugyan azt az LCD kezelő rutint használom amit eddig a PIC-es panelmérőmben. Tulajdonképpen annak írtam át kicsit a programját (lebutítottam) és egy másik PIC-be égettem bele, no meg 2x16-os helyett 4x20-ast használok.
(#) trudnai válasza Attila86 hozzászólására (») Dec 18, 2010 /
 
Kb negy lehetseges uton indulnek el elso korben:

1. Van-e elegendo idozites az LCD rutiban? Mert nem minden kijelzo ugyanaz, van amelyik mukodik kisebb idozitesekkel, van amelyik nem...

2. Lebutitasnak koszonhetoen nem kerult-e valami hiba be a rutinba?

3. Konfig beallitasok jok-e, azzal a sbesseggel ketyeg-e a PIC-ed mint amivel szamoltad az idozitest?

4. Elektromos problema, zajos jelvezetekek, kapacitiv vagy induktiv mellekhatasok, szakadas, zarlat stb...

Latatlanban kb ennyit tudtam segiteni, remelem sikerul megoldani a problemat!
(#) bankimajki hozzászólása Dec 19, 2010 /
 
Sziasztok, én most kezdtem el játszani az LCD kezeléssel. 2*10 karakteres HD44780-as vezérlővel. De nem nagyon boldogulok vele. Kb. eddig annyira jöttem rá, hogy az elején konfigolni kell valahogy. Az enable bitet magasba állítom és az RS bitet pedig 0-n hagyom. (Az R/W az pedig a 0-n van.) Na mármost akkor hogy is kell elkezdeni? Ha így konfigolva vannak a bitek, akkor az adatvonalra tegyem ki a megfelelő értéket? pl. dec. 60-at. (Ez azt jel. hogy: 8 bit mode ON, 2 lines, 5*10 font) És készen is van a konfig? Vagy még kell mást is csinálni? Illetve van valami késleltetéses dolog is. Az sem teljesen tiszta, hogy minek meg hogyan. Egy idő után magamtól is rájövök, de ha valaki segít akkor az nagy ugrás lenne. Esetleg az adatküldések között le kell futtatni egy delay rutint? (Ha igen, akkor milyen hosszú legyen az?)
(#) bankimajki válasza bankimajki hozzászólására (») Dec 19, 2010 /
 
Már rájöttem a konfigolásra. Mondjuk a késleltetéses kérdésem még áll.
(#) bankimajki hozzászólása Dec 19, 2010 /
 
Eddig szenvedtem vele és nem akar működni.
Csatoltam a forráskódom. Légy szíves ha ebben van a hiba jelezzétek. Mert én már nem is tudom. A szimulátorban működik, itt meg nem. A kódot kommenteztem, amiből az is kiderül hogy mit hova kötöttem. (De egyébként a C port első 3 bitje az E, R/W, és RS, míg a teljes D port a 8 bites adatbusz.

LCD.ASM
    
(#) brato válasza bankimajki hozzászólására (») Dec 19, 2010 /
 
Üdv!

Csatoltam egy 8 bitest, ez nekem működik szimulátorban is (ISIS,PICSIMULATOR IDE) és beégetve is.
Hasonlítsd össze.

LCD 8 BIT.ASM
    
(#) nedudgi válasza bankimajki hozzászólására (») Dec 19, 2010 /
 
Szerintem a PORTC-re kiadott bsf/bcf utasításokkal lehet gond. A port bit állításakor a portot, és nem az output latch állapotát olvassa be a kontroller, végrehajtja a bit állítását, majd visszaírja. Így elképzelhető, hogy fals érték jelenik meg a kimeneten.
(#) trudnai válasza bankimajki hozzászólására (») Dec 19, 2010 /
 
Szia, 'ORG 3' miert van ott? 'ORG 0'-nak kellene lennie.
(#) bankimajki válasza trudnai hozzászólására (») Dec 19, 2010 /
 
Szia ORG 0-val sem megy. Ezért úgy csináltam, mint a suliban. (Igaz ott az első pár címen volt egy ugró utasítás ezért kellett az ORG 3, de mindegy, mert nem az a baja.) De visszaállítottam 0-ra.
nedudginak: A PORTC-t jól állítja, mivel megnöveltem a delay-t és rátettem egy-egy LED-et. Ami jól működött. (Én már a kijelzőre gyanakodom hogy nem működik.) Az adatvonalon is megjelennek az értékek. De még megpróbálom brato programját is. (Hátha azzal elindul.)
(#) bankimajki válasza brato hozzászólására (») Dec 19, 2010 /
 
Szia, ugye a PORTD az adat 8 biten és a PORTB0 az RS, PB1 az R/W, és PB2 az E bit? Ha igen akkor jól kötöttem be, de így sem működik. Lehet kicserélem a kijelzőt egy 2*16 karakteresre. Hátha azzal működik.
(#) bankimajki hozzászólása Dec 19, 2010 /
 
Na jó még annyi kérdésem van, hogy ha ki van vezetve a V5-ös port a kijelzőn, és azt ha +5V-ra kötöm akkor jó, ez így igaz?
(#) ndavid87 hozzászólása Dec 19, 2010 /
 
Sziasztok!

A segítségeteket szeretném kérni a következő problémára:

Pic16f877a mikrovezérlővel szeretnék kommunikálni
W25X64 flash memóriával.
A memória nem ad semmilyen életjelet, a status regisztert olvasva mindig más (össze-vissza) adatot kapok. Olyan, mint ha 'lógna' a do lába.
Három példánnyal próbálkoztam, mind ugyan ezt produkálja.

A pic hardveres spi modulját használom, már kipróbáltam az összes módot, de nincs változás.
Többször is átnéztem a bekötést is, de nem találtam benne hibát (16 lábú soic tokos kivitel).
1./hold (H)
2.Vcc (3.3V)
3.-
4.-
5.-
6.-
7./cs (pic+felhúzó ellenállás)
8.Do
9./wp (fixen vcc-re kötve)
10.Gnd
11.-
12.-
13.-
14.-
15.Di
16.Clk
(Ellenállásos feszosztót használok.)

Összeollóztam a programomat, ami most
annyit csinál, hogy elküldi a write enable (06H), majd a read status register (05H) parancsokat, a választ pedig kirakja portb-re.
25LC640-nél tökéletesen működik, a másiknál viszont nem.

Mi lehet a gond?

w25test.asm
    
(#) brato válasza bankimajki hozzászólására (») Dec 19, 2010 /
 
A kijelző kontrasztját beállítottad egy trimmer potival?
Mert ha nem akkor nem fogsz látni sokat rajta.
(#) bankimajki válasza brato hozzászólására (») Dec 19, 2010 /
 
Nem állítottam be. A trimmer közepe gondolom a V5 az egyik oldala a GND a másik pedig a +5V? Mert az adatlapban kevernek valamit a -5V-tal is. De az nekem nem tiszta, hogy mit és miért.
(#) brato válasza bankimajki hozzászólására (») Dec 19, 2010 /
 
Igen. A két vége +5 és GND, a közepe meg megy az LCD kontraszt lábára.
(#) bankimajki hozzászólása Dec 19, 2010 /
 
Nagyon király köszi a segítséget. Már kiírta hogy Sza? Ez már fejlődés.
(#) brato válasza bankimajki hozzászólására (») Dec 19, 2010 /
 
Ha hibásan ír ki vagy kihagy betűket, akkor az időzítésekkel lehet még gond.
(#) Hp41C válasza ndavid87 hozzászólására (») Dec 19, 2010 /
 
Szia!

Egy kis segítség...
(#) bankimajki válasza brato hozzászólására (») Dec 19, 2010 /
 
Igen, azzal volt a gond, de ki kísérleteztem. Már jól működik. Kiírattam pár hülyeséget vele. (És már hogy tudom hogy működik, így totál egyszerűnek tűnik.)
(#) brato válasza bankimajki hozzászólására (») Dec 19, 2010 /
 
Akkor jöhet a 4 bites adatbusz...
(#) icserny válasza ndavid87 hozzászólására (») Dec 19, 2010 /
 
A HOLD bemenettel mit csináltál? Azt is fel kell húzni az adatlap szerint (mert ha alacsony szinten van, akkor lebegni fog a DO kimenet).
Következő: »»   862 / 1319
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem