Fórum témák

» Több friss téma
Fórum » PIC - Miértek, hogyanok haladóknak
Lapozás: OK   302 / 1319
(#) icserny válasza Lozsa hozzászólására (») Szept 30, 2008 /
 
Nálam a CODE-tól bevadult a fordító.
Ha az első CODE helyére org 0x00, a második CODE helyére org 0x20 (vagy amit akarsz) került, akkor simán lefordult.

A watch ablakban ettől függetlenül mindig működött az Add Symbol.

Egyébként MPLAB 8.14 van nálam.
(#) icserny válasza ciw hozzászólására (») Szept 30, 2008 /
 
Idézet:
„Csak miért nem szerepel egy mintapéldában sem ?”

Valószínűleg azért, mert más lábat és más UART egységet használtak.

Egyébként a 0xFFFF kicsit túlzás, mert nincs is ennyi analóg vonal (pláne a 28 lábúban!), de mindegy, fő hogy működik végre.
(#) szilva hozzászólása Szept 30, 2008 /
 
Egy VGA kártyára tennénk RAM-hűtést a fiammal, mert úgy tűnik, hogy attól szemetel időnként, hogy a RAM nagyon felmelegszik. Egy régi P1-es bordát szétvagdostunk, és jobb híján kétoldalas ragasztóval felraktuk a chipekre a szeleteket (a vékony fajta ragasztó, nem a "húsos"). Amúgy így is majdnem "megfoghatatlanra" melegszenek ezek a kicsi bordák, szóval biztos, hogy kellenek.

Tudnátok javasolni valami jobb módszert, vagy ragasztót, esetleg olyan (élő) topicot, ahol ilyenekkel foglalkoznak? Én próbáltam keresni, de nemigen sikerült...
(#) watt válasza Lozsa hozzászólására (») Szept 30, 2008 /
 
Nekem is szürke lett a regiszter fül, mert nem tudta lefordítani. Én is kidobtam a CODE-t, nincs értelme LINK-et használni! Csatoltam a módosított asm-ot.

(#) watt válasza icserny hozzászólására (») Szept 30, 2008 /
 
Ha megnézed, akkor az egy 16bites regiszter, még akkor is, ha nincs mindegyik bit használva(2 nincs a 16-ból!). Bajt nem okoz és nem kell gondolkodni!

Azt írtam, hogy az AD kikapcsolása szerepel a példákban, csak hibásan! A példa sem működik pont e miatt!
(#) icserny válasza Lozsa hozzászólására (») Szept 30, 2008 /
 
Idézet:
„A Ram helyét hogyan lehet meghatározni? Jól gondolom, hogy 000h-tól 07fh-ig van?”


A konkrét adatlap alapján 0-tól kezdődik a RAM, tehát CDATA 0x0 is jó kell, hogy legyen (ellentétben a PIC 16F típusokkal, ahol előre pakolják az SFR tartományt, s utána jön az általános célú RAM).

(#) googa válasza potyo hozzászólására (») Szept 30, 2008 /
 
Roger That! Értettem!
(#) icserny válasza watt hozzászólására (») Szept 30, 2008 /
 
Idézet:
„Ha megnézed, akkor az egy 16bites regiszter, még akkor is, ha nincs mindegyik bit használva(2 nincs a 16-ból!).”


Igazad van, nem okoz semmi gondot a többi bit 1-be állítása. Nem is akartam ebből vitát nyitni, csupán arra céloztam az előző hozzászólásban, hogy a 28 lábú változatban csak 10 analóg bemenet van.


Idézet:
„Azt írtam, hogy az AD kikapcsolása szerepel a példákban, csak hibásan! A példa sem működik pont e miatt!”


Valóban rosszul írták a nevet, de nem lehet, hogy azért nem vették észre, mert véletlenül olyan lábakat használtak (RP8, RP9), ami nem analóg bemenet? S abban a konfigurációban véletlenül működött a program?
(#) watt válasza icserny hozzászólására (») Szept 30, 2008 /
 
Igazad van, tényleg azok nem AD bementek! Akkor ezért nem vette észre senki az elírást!
Én azt hittem, hogy Lozsa nem változtatott semmit a példán, de ezek szerint átírta a RP-ket a saját hardveréhez, ezért bukott ki a hiba.
(#) icserny válasza googa hozzászólására (») Szept 30, 2008 /
 
Idézet:
„Tudnátok ajánlani valami közkedvelt basic fejlesztőt PIC-hez, vagy hozzá tartotó linket?”


Ha a "hozzátartozó linket" tágan értelmezzük, akkor a
  1. <ol><li>GO TO [color=blue]Google[/color]
  2. <li>USE [color=red]PIC +basic +free[/color]

megadása is elegendő.

Konkrétabb linkek:

XCSB struktúrált PIC BASIC

Great Cow BASIC

Megjegyzem: egyiket sem használtam még, s megígérem, hogy nem is fogom.

(#) watt válasza icserny hozzászólására (») Szept 30, 2008 /
 
Idézet:
„Megjegyzem: egyiket sem használtam még, s megígérem, hogy nem is fogom.”

Próbálom értelmezni más szemszögből googa-nak:
Ha olyan fordítót használ egy kezdő, amit nem nagyon használnak mások, akkor bekövetkezhet, hogy nem lesz senki aki segítsen, mikor elakad. :yes:
Ugyanez a helyzet a nem gyári fordítókkal is.
(#) mrfencer hozzászólása Szept 30, 2008 /
 
A PIC16F877 ese RB7, RB6 os lábát használja az ICD2-ő ugye? Arra ne tervezzek semmit ha még menet közben programozni akarom a PIC-emet?
Köcce
(#) m.joco hozzászólása Szept 30, 2008 /
 
Hello
PIC16f628-ban az A portnak azt a 2 bitjét, amelyikre kell kötni a kvarcot, nem is lehet másra használni? Szóval nem lehet pl. kimenet vagy bemenet?
Üdv.
(#) trudnai válasza m.joco hozzászólására (») Okt 1, 2008 /
 
Dehogynem, ha nincs rakotve kristaly (mert pl belso orarol megy) akkor hasznalhatod. Ez vonatkozik az FOSC-ra is (RA6 es RA7) es a TIMER1 -hez hasznalhato bemenetekre is (RB6 es RB7).
(#) trudnai válasza mrfencer hozzászólására (») Okt 1, 2008 /
 
Tervezhetsz ra, csak gondoskodni kell a megflelo levalasztasrol. Sok esetben elegendo egy ellenallas oda, maskor bonyolultabb levalaszto aramkoroket vagy akar jumpereket is lehet alkalmazni. A lenyeg, hogy az ICD2-t ne erje nagy terheles azokon a vonalakon, es ne legyen tul nagy kapacitas vagy akar induktivitas ami karosna befolyasolhatna az adatfolyamot (vagy barmi modon karosithatna a programozo aramkort...).
(#) m.joco hozzászólása Okt 1, 2008 /
 
Lehetséges az, hogy a pic16f628 B portjának az 0. bitje rossz? Mert nem működik, az odakapcsolt LED-m nem világít, és nem a LED a rossz, van előtét ellenállás is.
Üdv.
(#) trudnai válasza m.joco hozzászólására (») Okt 1, 2008 /
 
Elofordulhat, de lehet egy egyszeru szoftveres hiba az ok. En epp most huzok aludni, de ha beirod a kodot akkor legalabb azt meg tudnank nezni szoftveres hiba-e a dolog vagy esetleg mashol keresendo a bibi.
(#) brato válasza Tys23 hozzászólására (») Okt 1, 2008 /
 
A programnak igazából nincs sok köze a gép méretéhez.
Általában az egy egységre eső elmozdulást vagy a motor lépésszámát és a menet emelkedését kell megadni a programnak.
(#) watt válasza mrfencer hozzászólására (») Okt 1, 2008 /
 
Ha debuggolni is szeretnél, és a rá tervezett, elektronikailag helyesen illesztett áramköri részed nem befolyásolja az egész áramkör együttműködését a programoddal, akkor lehet mást is rákötni. (pl. két LED nem fog gondot okozni rajta, max. össze vissza világít debuggolás közben, de egy oda tervezett megszakítás jel igen.)
Ha csak programozni akarod, akkor egyszerűbb a helyzet, mert csak elektronikailag kell helyesen illesztened, ahogy trudnai már elmondta.
Legjobb, ha nem tervezel oda semmit, ha elég a többi láb a feladatra.
Szerencsére az újabb PIC-eken több programozó port is van, érdemes ezeket használni, mert van alternatíva. Nekem nem tetszett soha, hogy a Bportot "szétszakították", főleg, ha egy 8bites külső eszközt párhuzamosan akartam beolvasni. Ilyenkor lehetett összerakosgatni darabokból a bájtot és ez sebességben sokat számít. Egyéb más alkalmazásban semmi nyűgöt nem okoz.
(#) m.joco válasza trudnai hozzászólására (») Okt 1, 2008 /
 
Hello
A forráskód így néz ki, mikropascalban lett írva.
Üdv.
(#) icserny válasza m.joco hozzászólására (») Okt 1, 2008 /
 
A magasszintű programnyelvekben az a szép, hogy fogalmunk sincs, hogy mit csinál a program a háttérben.

Érdemes lenne megnézni a lefordított programot is (általában .lst kiterjesztésű), ellenőrizni kellene a LED-et is, s ha az rendben van, akkor szimulátorban is meglehetne nézni a programot.

Ha már a LED-nél tartunk: azt ugye, megnézted, hogy a B0 (9. láb) be van-e kötve rendesen, vagy nem ment mellé a foglalatnak?
(#) Lozsa válasza watt hozzászólására (») Okt 1, 2008 /
 
Na kipróbáltam a te asm forrásoddal. Azzal sem jó ((
.err fájl üres, forditás közben nincs warning, tut a progi mégis szürke az add symbol fül...

Talán új projectet kéne kezdenem?
Amúgy 8.10 -es MPLAB
(#) watt válasza m.joco hozzászólására (») Okt 1, 2008 /
 
Ebben a fejlesztői környezetben nem kell megadni a PIC konfigurációját? Mert ez a programrész csak a logikai folyamatot írja le, némi port beállítással. Szimulációban ettől még jól fog működni, de ha nincs felkonfigolva a PIC, akkor a valóságban soha.
(#) watt válasza Lozsa hozzászólására (») Okt 1, 2008 /
 
Igen! Az MPLAB-ot teljesen meghülyíti az előző projected(fogalmam nincs miért!). Indítsd újra, dobd ki a projectet, és egy újat indíts, amibe bemásolod az asm-ot. Nekem is 8.1 van fenn.
(#) SzervízMacska válasza icserny hozzászólására (») Okt 1, 2008 /
 
Hát... Ez egyszerű, mint a faék. Ha ez nem fut le a 628 B portján, szerintem cseréld ki a kontrollert! ( Mintha a saját első programomat látnám viszont, csak az basicban volt. Egyébként ez a megoldás nem túl elegáns, 8-10 sorban meg lehetne írni. Pl egy táblázatban eltárolod a port növekvő értékeit, majd utána csak szép sorban elő kell szedegetni őket. )
(#) ciw válasza Lozsa hozzászólására (») Okt 1, 2008 /
 
Az mplab-ban beállítottad a config biteket?
Kiválasztottad a kontroller típusát?
Mert az a kódrész nem tertelmazza ezeket az információkat. :yes:
(#) watt válasza ciw hozzászólására (») Okt 1, 2008 /
 
Egyelőre még az a gond, hogy szürke marad a regiszterfül a Watch ablakban.
Amiről írsz, az majd akkor fog gondot okzni, ha beleégeti a PIC-be, és nem megy...
(#) watt válasza SzervízMacska hozzászólására (») Okt 1, 2008 /
 
Biztosan icserny-nek akartál válaszolni?
(#) ciw válasza watt hozzászólására (») Okt 1, 2008 /
 
Ja, hogymég bele sem volt égetve?

Akkor a teljes projektet fel kéne linkelni és akkor meg tudnánk nézni, hogy mi lehet a gond, mert, lehet, hogy az mplabbal van valami gáz.
(#) watt válasza ciw hozzászólására (») Okt 1, 2008 /
 
Először lefordítottam azt az asm-ot(teljes projectet csatolt egyébként), amit Lozsa csatolt. Nekem is szürke lett a regiszter fül. Aztán hiába javítottam ki és fordítottam le, nem akart aktívvá válni.
Ekkor kidobtam a projectet, újraindítottam az MPLAB-ot és egy szűz projectbe beletettem a módosított asm-ot. Rögtön jó lett. Kerestem az eltérést a másik project között, de nem nagyon találtam.
Igazából mindegy is, ha a friss project-tel jó lesz neki!
Következő: »»   302 / 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