Fórum témák

» Több friss téma
Fórum » PIC - Miértek, hogyanok haladóknak
Lapozás: OK   687 / 1320
(#) szilva válasza dudzsi hozzászólására (») Feb 25, 2010 /
 
Szerintem egy aktívan működő komplett mikroszámítógéptől nem olyan sok az a 2mA. Én még ahhoz vagyok szokva, hogy egy 2.5MHz-es Z80 CPU 100mA nagyságrendű áramokat evett meg, és akkor még hol volt a memória és a többi járulékos kiszolgáló alkatrész...

Az órakvarcok ritka kivételektől eltekintve 32768Hz-esek, én is olyat használok.
(#) dudzsi válasza Hp41C hozzászólására (») Feb 25, 2010 /
 
Köszi. Majd probálkozok aztán ha elakadok akkor vissza térek.
(#) dudzsi válasza szilva hozzászólására (») Feb 25, 2010 /
 
Látszik nem értek a lóvakhoz. Köszi azért. Kisérletezgetek majd.
(#) petXYZW válasza potyo hozzászólására (») Feb 25, 2010 /
 
Köszi. Működik.

clrf ANSELH
(#) Magashegyi hozzászólása Feb 25, 2010 /
 
Üdv mindenkinek.

A grafikus kijelzőmnek az adatait a PIC-em (18F4620) memóriájában tárolom a gyorsabb futás érdekében. Ugy gondoltam hogy jó lenne összefogni egy structúrába az adatokat és azt hogy melyik page-re írtam és hogy volt-e a legutolsó kiíratás óta változás.
Ez így nézne ki:
  1. #pragma udata buffer_scn
  2. static unsigned char glcdDataArray[1024];
  3. #pragma udata
  4. unsigned char * glcdDataArray_ptr = &glcdDataArray[0];
  5.  
  6. struct
  7. {
  8.     unsigned char position_x;
  9.     unsigned char position_y;
  10.     unsigned char fresh:1;
  11.     unsigned char pageChanged[8];
  12.     unsigned char *data;
  13. }GLCD;
  14.  
  15.  GLCD.data = glcdDataArray_ptr;


De a structúra mutatóját nem tudom áttállítni, tehát a GLCD.data = glcdDataArray_ptr; sorra syntax errort dob a C18-as fórdító . A kérdésem hogy meg lehet-e ezt így oldani valamilyen úton?
(#) Tilinkó Gábor válasza Hp41C hozzászólására (») Feb 25, 2010 /
 
Szia!
Köszönöm hogy időt szakitottál az én problémámra is.
Nagyon jó megoldásnak tünik.
Ideje lesz megismerkednem a 18F-es családdal.
A programozásuk sokban eltér a16F-töl?
(#) Hp41C válasza Tilinkó Gábor hozzászólására (») Feb 25, 2010 /
 
Szia!

Van néhány lényeges eltérés, figyelmesen el kell olvasni az adatlapokat (a 18F2420 és a 18F2423 adatlapjait). A programtár címzése bytos, az utasítás 1 vagy két szavas <-> kiszámított goto. A közös adatmemória helyett a 18F-en az access bank van, az utasítások paraméterében meg lehet mondani, hogy az access bankot vagy a bsr-ben megadott bankot használják. Az utasítás készletet kibővítették, nagyon sok jól használható lehetőséggel, de az utasítások egy része nem ugyanúgy kezeli a státusz biteket (incf, decf állítja a C-t, stb...). Sajnos a 18F-en elég sok hiba van, az erratakat el kell olvasni. (Pont most mértém ki, hogy a 18F252 adatlapján leírt megszakítási rutinbeli visszaállítás nem működik jól a nálam levő példányon - movff reg,STATUS kerülendő).

Szia
(#) icserny válasza Tilinkó Gábor hozzászólására (») Feb 25, 2010 /
 
Idézet:
„Ideje lesz megismerkednem a 18F-es családdal. A programozásuk sokban eltér a16F-töl?”

Nézd meg a Piccolo project c. honlapomat! Az első fejezetek leírják a PIC18 felépítését, utasításkészletét. Az egyszerű mintaprogramok MPLAB szimulátorban futtathatók, nem kell hozzá hardver (majd csak a kísérleti áramkör című fejezettől kezdődően, de az a rész még embrionális állapotban van).
(#) Attila86 válasza Tilinkó Gábor hozzászólására (») Feb 25, 2010 /
 
Hogyne! Van egy csomó nagyon jó utasításuk amik a 16F-eknek nincs. Én például ezeket használtam eddig amik nagyon jól jöttek és a 16F-ek nem tudják: movff, tstfsz, cpfseq, cpfsgt, cpfslt, addwfc, subwfcb, incfsz, decfsz, infsnz, dcfsnz. Szóval van pár.
(#) geri12 hozzászólása Feb 26, 2010 /
 
Üdv mindenkinek!

Adott egy 4X20CH kijelzős ébresztőóra, ami PIC16F876A-t használ. Azt nem tudom eldönteni, hogy érdemes lenne-e egy i2c-s RTC-vel megtoldani az áramkört. Maga az óra, ami a 876-ba lett megírva elég pontos. Ezt leszámítva célszerű a használata?

Köszi előre is!
(#) potyo válasza geri12 hozzászólására (») Feb 26, 2010 /
 
Ezt mi nemnagyon tudjuk megmondani helyetted. Ha kevésnek találod az elem élettartamát, akkor érdemes lehet.
(#) The_Saint válasza kissi hozzászólására (») Feb 26, 2010 /
 
Kedves kissi/Steve!

Először is bocs, hogy ilyen későn reagálok, de egész nap nem voltam gép közelben, de...
Én meg nem értem, hogy mit nem értesz. A tények a következők: A szenzor DS18B20, köztudottan a one-wire családba tartozik és mint ilyen egy olyan hasznos tulajdonsággal bír, hogy 1 vezetéken kommunikál, sőt ennek a tulajdonságának köszönhetően, jónéhány szenzort lehet arra a vezetékre ráakasztani. Hát, tulajdonképpen ez is lenne a rendszer lényege, hogy mondjuk 100 db szenzorhoz ne kelljen 100 db portláb, hanem 1 elég kell legyen. Addig nincs is semmi gond amig ismered az összes szenzor egyedi azonosítóját (matchrom command). De ha nem? na ott vannak a bajok. (persze csak nálam)
Természetesen nem vagyok annyira bolond, hogy az RB0-ra és az RB1-re kötött 2 db szenzoron ne igazodnék el, de vegyük a konkrét esetemet! Amire a 2 db szenzort kötném az 12F629 névre hallgat. 5 db normál I/O portja van, meg még ugye 1 ami az én esetemben éppen pont a MCLR funkciót kénytelen ellátni. Hidd el, a többi láb totál foglalt, azt most nem fejtem ki, hogy miért... lényeg, hogy 1 láb van 2 szenzorra. ami nem is lenne gond a DS18B20 esetében.
1-10 esetig mondjuk működhetne a korábban tárgyalt, kiolvasom a rom kódot és utána használom verzió.... de itt szerencsére 1000-es nagyságrendről van szó. Szóval nem tudok fölvenni egy betanított munkást 1 hónapra, hogy több ezer szenzor rom kódját olvassa ki és tolja bele a 12f629-ekbe 2-tesével.
De még mindig nem oldottam meg a dolgot, úghyog ha Te vágod a Search ROM parancs működését kérlek osszd meg velem. Tényleg sokat segítenél!
előre is köszi!

The_Saint
(#) potyo válasza The_Saint hozzászólására (») Feb 26, 2010 /
 
Elmondom, hogy mit nem ért

Van a két szenzorod rákötve a PIC-re. Gondolom a két szenzorod nem egymás mellett vannak, hanem egyik pl. belső hőmérsékletet mér, a másik pedig külsőt, vagyis nem ugyanazt méred mindkettővel. Namost a search ROM algoritmus ha lefut, akkor megtudod a két szenzor ROM kódját, de azt már nem, hogy most melyik kód melyik szenzorhoz tartozik. Ezt mi alapján fogod kideríteni? Mert ha ráraksz egy RTC-t és egy hőmérőt, akkor azoknak eltér a family kódjuk, vagyis a ROM kódok ismerete után egyértelmű, hogy melyik kód melyik chiphez tartozik. Vagy a keresés idejére pl. beledugod egyik szenzort nulla fokos vízbe, és a kiolvasott hőmérséklet alapján fogod tudni, hogy melyik melyik?
(#) The_Saint válasza potyo hozzászólására (») Feb 26, 2010 /
 
Szia!

Ááááá...szóval ezt nem értette? Tényleg nem értettem, hogy mit nem ért....Hát most nem tudom az egészet kifejteni töviről hegyire, de a szoftver több szenzort kezel mint 2, de mondjuk jobbára párosával vannak. Egyéb azonosítási eljárások után a szoftver konfigurálható, hogy melyik hőmérséklet éppen mihez tartozik. Nem fog gondot okozni a hőmérséklet alapján eldönteni, hogy melyik szezor hol is van fizikailag. Nem kell hideg vízbe dugni )

Üdv
The_Saint
(#) The_Saint válasza kissi hozzászólására (») Feb 26, 2010 /
 
Hoppá...
Azt hiszem tartozok egy elnézés kéréssel.. De legyen mentségem, hogy egy undorító, koszos, büdös helyen kénytelen voltam ingyen 220-as villanyszereléssel tölteni az egész napot és onnan hazavezetni 150km-ert, szinte étlen szomjan. Szóval, kicsit benéztem valamit, így hajnalban, abban amit írtál és ez hozta ki belőlem a kissé cinikus hangnemet. A 'pontokon' szót portok-nak olvastam először.

Szóval, elnézésedet kérem!!

Üdv
The_saint
(#) treffort hozzászólása Feb 26, 2010 /
 
Sziasztok! Szükségem lenne a watt áltl készített egyszerű Lpt égető nyáktervére. estsleg meg van valakinek? (mert én elkezdtem egy nyáktervet, de nem tudom, hogy jó-e, sőt........)
Segítségeteket köszönöm előre is.
(#) kissi válasza The_Saint hozzászólására (») Feb 26, 2010 /
 
OK, semmi baj, látom Potyo megmagyarázta a problémát... De gondoljuk tovább: én úgy emlékszem, hogy max. 256 eszköz fűzhető fel egy ágra, nézz utána ( de szerintem idáig sem fogsz eljutni, mert a kapacitások gondot fognak okozni a kiolvasásnál!) !
A többezer eszközből mennyi jut egy PIC-re ( hogy ne a világegyetem számára készítendő összes készüléket vegyük számításba egy lábon <-- ne vedd a lelkedre, csak nem tudtam kihagyni!) !

Jó munkát!

Steve>
(#) The_Saint válasza kissi hozzászólására (») Feb 26, 2010 /
 
Szia!

Hát általában 2, de a legtöbb 3 szezor 1 lábon... a többi az máshogy azonosítódik. Szóval max 3 szenzort kellene beazonosítani 1 lábon!

Üdv
The_Saint
(#) kissi válasza The_Saint hozzászólására (») Feb 26, 2010 /
 
Akkor mi a baj ? Megjegyzed a 64 bitből hanyadiknál van ütközés, legközelebb azon a "bit útvonalon" mész és ott ellenkező bitet adsz ki! 3-nál ez nem okozhat akkora problémát!?

Steve
(#) watt válasza treffort hozzászólására (») Feb 26, 2010 /
 
Az "egyszerű" LPT égetőnek nincs nyákterve, ezért egyszerű(össze lehet lógatni 15perc alatt).
Ha nyákos tervet akarsz, építs bonyolultabb LPT-s égetőt, fenn találsz az oldalamon és még egy csomó helyen.
(#) kissi válasza kissi hozzászólására (») Feb 26, 2010 /
 
Kicsit bővebben: kiadod a ROM keresést ( ez az F0H !). Erre a felfűzött eszközök kiadják saját azonosító bitjüket, majd annak az invertáltját. Ezután a kontroller kiadja, hogy kiét fogadja el, a többiek ettől kezdve csöndben vannak! Így mennek végig az összes biten. Abból lehet tudni, hogy még több eszköz van fenn a lekérdezésnél, hogy az adott bit olvasásánál ponált és negált alakban is 0-t olvasol!

Az adatlapban szerintem jó a folyamatábra!

Steve
(#) treffort válasza watt hozzászólására (») Feb 26, 2010 /
 
Persze néztem azokat is, de nekem még ez az "egyszerű" is bonyolultnak tűnik. Na mindegy, akkor nem ezzel kezdem az elektonikával kapcsolatos ismerkedésem Azért köszönöm.
(#) The_Saint válasza kissi hozzászólására (») Feb 26, 2010 /
 
Huuu... valami nagy baj lehet velem. De én ezt nem értem. Szóval:
Kiadom a parancsot...OK
meg nézem, hogy mi jön vissza.. OK
aztén megint megnézem.... na itt vesztem el valahol
Ha mindkét esetben 0 akkor még van eszköz a dróton...ezt írtad! Ne haragudj, de tényleg nem értem
Mondjuk először visszajön 1, ez mit jelent? hogy az első bit, valamennyi eszköznél 1?
Ha 0 jön vissza 1. bitként akkor valamennyi eszköz 1. bitje 0? és mi van a komplemensel?
Talán egy értelmes kérdés :
Melyik az a pont ahol biztosan ismerem már az eltárolható bitet?

Üdv
The_Saint
(#) treffort válasza treffort hozzászólására (») Feb 26, 2010 /
 
A PIC-et hova kell majd beraknom? Mert nem látom a helyét. Teljesen laikus vagyok
(#) kissi válasza The_Saint hozzászólására (») Feb 26, 2010 /
 
Kiadod a parancsot, az eszközök visszaadják az első bitet, mondjuk A eszköz 1 és B eszköz is 1. A következő szeletben A=0 és B=0 (maguktól! ). Akkor a proc azt mondja, hogy akinek az előző bitje 1-es, az folytathatja!
Következő bit A=1 B=0 --> érzékelni 0-t lehet, invertálás után érzékelni szintén 0-t lehet --> proc tudja, hogy legalább 2 eszköz ütközik, ezért megjegyzi, hogy a 2. bitnél ütközés volt és kiküldi, hogy pl. a 2.bit=0 folytathatja és így tovább... A 64 bit után, ha észlelt ütközést,akkor az ütközési pontig lejátsza a bitsort az ütközésnél pedig a másik ágon megy tovább!
2-3 eszköznél ez elmegy, sok eszköznél figyelni kell rendesen!!

Remélem érthető voltam ?!

Jó munkát!

Steve
(#) The_Saint válasza kissi hozzászólására (») Feb 26, 2010 /
 
Köszönöm, így már kezd derengeni a fény az alagút végén. Deeee... még lehet, hogy kell majd kérdezzek.

Üdv

The_Saint
(#) icserny válasza treffort hozzászólására (») Feb 26, 2010 /
 
Idézet:
„A PIC-et hova kell majd beraknom?”

Azt egy külön áramkörbe, ahol majd használni akarod. Csak a programozás idejére csatlakoztasd a programozóhoz. WATT honlapján nézegesd az ICSP (In Circuit Serial Programming) programozásról szóló részt is.

AZ ICSP arról szól, hogy nem veszed ki az álkalmazói áramkörből a PIC mikrovezérlőt, hanem csatlakoztatod hozzá a programozó készüléket (ennek azért vannak elektronikai követelményei), aztán beleírod a programot.
(#) watt válasza treffort hozzászólására (») Feb 26, 2010 /
 
Kérlek olvasd el az oldalamon az ide vonatkozó cikkeket!
(#) treffort válasza icserny hozzászólására (») Feb 26, 2010 /
 
Köszi a választ. Olvasok, olvasok ...
(#) kistigris hozzászólása Feb 26, 2010 /
 
Sziasztok

Az lenne a kérdésem ,hogy a mellékelt égetőben hova
kellene bekötni a 12f683 pic-t ,hogy égethető legyen

előre is köszönöm a választ

3bmi_pip.gif
    
Következő: »»   687 / 1320
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