- Connections for 24LC devices
- ---------------------------------------
- PICkit 2 Pin 24LC Device Pin (DIP)
- (2) Vdd ! 8 Vcc
- (3) GND 4 Vss
- (5) PGC 6 SCL (driven as push-pull)
- (6) AUX 5 SDA (requires pullup)
- 7 WP - disabled (GND)
- 1, 2, 3 Ax pins
- Connect to Vdd or GND per
- datasheet and to set address
- ! 24LC devices may not program properly below 3.6V VDD.
- This is a limitation of the PICkit 2 AUX IO pin.
Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
Hát.... nem boldogulok vele. csatoltam a fájlt, aminek az egyes értékeit szépen sorban egyenként a W-be kellene beolvasni.... az LCD kezelő részt már megoldottam, csak ezt a táblát kéne szépen beolvasni.... van valakinek ötlete? nem nagyon szeretném egyenként átírni retlw 0xXX-re átírni. Előre is köszi a segítséget!
Üdv
Itt egy kiragadott részlet.
Ha visszaolvasol találhatsz még ezzel kapcsolatos hozzászólásokat!
Szia!
Köszönöm, fel kell bontsam 8 bájtokra, vagy hagyhatok 16 értéket egy sorban. 1024 ilyen bájtom van, az egészet 4 részre kell osztanom?, mert a MUTATÓ, nem tud nagyobb lenni 255-nél.... a DT az mit is jelent? DataTable? Idézet: „fel kell bontsam 8 bájtokra, vagy hagyhatok 16 értéket egy sorban” Bármennyi lehet egy sorban, amennyit a szerkesztő elbír. Igen, azért kell felbontanod. A DT(nem emlékszem minek a rövidítése, de valami olyasmi!) gyakorlatilag egy csomó RETLW-vel pakolja le a bájtokat a program memóriába(8 bitet felhasználva a 14-ből). Ez a direktíva a fordítónak szól.
OK, Köszi, megyeget... küzdök vele még kicsit Ezt a DT dolgot még sehol nem láttam...enélkül, bele se merek gondolni....
Köszönöm újfent a segítségedet, már 2 sörrel jövök Üdv!
Szia!
A 18F4423, 18F4523 -ban a belső A/D 12 bites, és lábkompatibilis a 16F877-tel ill. 16F887-tel... Szia
Szia!
A szerkesztő miatt kell felbontanod, nem tudod az 1024 adatot egy sorban leírni neki. A mutatót két byte-osra kell definiálni: MUTATOL, MUTATOH, az adatokat pedig egy kezdőcímtől folyamatosan definiálhatod: A hívás a 0. lapról:
A hívás utáni bit állításokat a hívást tartalmazó lap sorszáma szerint kell beállítani, használható a pagesel makró is:
A táblázat kezelése:
A táblázat:
Ha használsz megszakítást, a kiszolgáló rutinnak a PCLATH regisztert is mentenie, visszaállítania kell... Szia
Ha retlw-s táblázatot akarnál csinálni belőle, akkor írj elé dt-t, az pont ezt csinálja: a felsorolt konstansokból retlw-ket gyárt. Más megoldás nincs, hacsak az adott PIC nem tudja olvasni a saját flash-ét a programból. A flash olvasására az adatlapban szoktak lenni példák.
Köszi,a jó tanácsot.
Bevallom én soha nem használtam 16F-et ekkora táblára(sőt 1 lapnál nagyobb 16F-et, nem is használok.), ezért ez nekem szóba se került, és nem is fog. 18F-eknél az élet sokkal egyszerűbb a táblapointerek miatt. Reméljük The_Saint-nak hasznos lesz!
Mindenkinek köszönöm a segítséget, végül meglett az lcd progi hibája. A BUSY kiolvasásánál átállítottam az RDWD t de a sikeres kiolvasás után mikor visszatértem a nem állítottam vissza . Ezt javítva minden ok.
Szia!
Tudom, hogy van 17-es család, csak nem írta a pontos típust, azért füstölögtem! Steve
A típus alapján az MPLAB a képen láthatót adja!
Steve
Lenne egy amatőr kérdésem:
Játszadozok egy GLCD-vel és szeretnék képet megjeleníteni rajta. Tudnátok javasolni olyan (ingyenes) progit, ami letölthető és mondjuk egy ff bmp-ből készít file-t? Ezt viszont egy 24LC256-ban tárolnám le. Hogyan lehet ezt könnyen gyorsan megoldani? Előre köszi!
Szia!
Hát én is pont most ezzel bajlódok. sajnos linket nem tudok de 2 progi is jól működik: LCDAssistant bmp2asm mindkettő jó! nekem személy szerint az LCDAssistant jobban tetszik...asm-hez használhatóbb fájlt készít! Nem tudom itt lehet belinkelnem...ha kell és nem tilos, szívesen megosztom veled! Üdv The_saint
LCDAssistant
LCD Assistant is a free tool for converting monochromatic bitmaps to data arrays for easy use with programs for embedded systems with microcontrollers and graphics monochromatic LCD displays like a T6963C, KS0108, SED1335 etc
Köszönöm mindenkinek a hozzászólást! Ez a DT dolog volt ismeretlen számomra...de már megyeget a dolog! Hp41c, amit írtál az kicsit zavaros...illetve nem teljesen látom át a dolgot...de ha eleakadok még kérdezek!
Köszi még 1x! Üdv The_Saint
Igen! Közben már ki is próbáltam. Köszi! Vajon találok a neten leírást, hogy 24LC256-ba hogyan todom belegyömöszölni PK2-vel? Még a PIC-es cucc nélkül?
A 18F2520-as PIC belső A/D átalakítóját használom és az a baj, hogy hatalmasakat ugrál a mért érték. A nyák természetesen rendesen van huzalozva, és külső referenciát használok. A mérendő jel és a referencia műszerrel mérve gyönyörű, nem ugrál.
Mi lehet a gond? Az A/D konfigurációjában kellene állítani valamit? Érdekes, hogy korábban nem ugrált így, aztán ahogy fejlődött a program egyszer csak megjelent ez a probléma. Az A/D így van beállítva:
Az EZT követő jónéhány hozzászólásban az AD-ről esik szó, érdemes elolvasni a kritikus időkre vonatkozó hozzászólásokat.
Leginkább a PICkit2 README-ben...
Köszönöm a linket!
Icserny ITT ezt írta: Idézet: „Van egy adatgyűjtési idő , ami hőmérséklettől függően Tacq = 1,4 - 2,4 us Van egy konverziós idő, ami beállítástól függően bitenként Tad = 0,7-25 us (a pontos méréshez a minimumhoz közeli értéket célszerű választani!). A 10 bites ADC-hez ennek a 11-12-szerese szükséges. Van aztán egy min. 0,2 us körüli kisütési idő, de ez a fentiekhez képest bagatell...” Nálam 4MHz-en megy a PIC a belső oszcillátoráról. A Tad tehát Fosc/4-nek kellene lennie hogy 1us legyen? Icserny azt írta hogy 0,7us és 25us közt kell lennie és minél kisebb legyen. Ha Fosc/2 lenne az túl kevés, tehát az Fosc/4 a legkisebb tartományon belüli érték. Jól gondolom a számítást? A Tad tehát akkor 1us. A Tacq-nak akkor 2TAD-nak kellene lennie hogy 1,4 és 2,4us közt legyen. Könnyen lehet persze hogy rosszul értettem valamit.
PicKit2 saját szoftverével megoldható az biztos, de a leírás elég szűkszavú. Konkrétan a PicKit2 User's guide-ban találtam róla néhány sort, a 3.7-es alfejezetben. Ez hivatkozik a Help>Readme filera, amelyben valóban le is van írva a bekötés, de ennél többet sajnos nem mond.
Nem csináltam még ilyet, de a README megadja a bekötést, a többi meg a PICkit2 kezelőprogramja alapján egyértelműnek tűnik:
A PICkit2 kezelőprogramjában kiválasztható a Device Family, ami esetünkben EEPROMS/24LC. Ezután kiválasztható a konkrét típus: Device=24LC256. A jobb felső sarokban A0,A1, A2 állítható be. Gondolom, pipa=1, nincs pipa=0 (ha nem így van, akkor én leszek pipa!). A fenti beállítások után az Import Hex, Write, Read, Verify, Erase bizonyára ugyanúgy használandó, mint a PIC programmemória esetén.
Jól számoltad. Tad értékét azonban érdemesebb Tosc egységekben számolni (Tosc=1/Fosc), mert az adatlapban így van megadva. PIC18F mikrovezérlő esetén a 4Tosc (ami frekvenciában Fosc/4, ahogy Te írtad) max. 5,71 MH-ig jó, tehát a 4 MHz-es belső órajelhez tökéletes.
Érdekes megjegyezni, hogy a PIC18LF sorozatnál lassabban zajlik a konverzió, ott az adatlap szerint Tad = 8 Tosc kellene ugyanehhez a Fosc = 4 MHz-es órajelhez!
Ha nem csillapodna a beállítás után, javaslom cseréld ki a 100n-s kondikat 470n...1µF-ra a bemeneten.
Hello!
Köszönöm a válaszokat! Bekötöttem egy 74LS06-os IC-t a kábel és a PIC közé. Annyi gondom van vele, hogy amikor letesztelem a lábakat miközben a PIC-re rá van kötve akkor max 0,16 V jön ki bekapcsolt állapotban. (A vonalak invertálva vannak és van felhúzó ellenállás is.) Ha az IC nincs rákötve a PIC-re akkor, Kb. 5,2 V van a lábon ( gondolom a felhúzó ellenállás miatt ). Ebből gondolom, hogy az IC-nek lehet valami baj. Lehetséges, hogy az IC megsérült? Csak az a furcsa, hogy már használtam egyszer egy programozó áramkörbe és már akkor sem működött tökéletesen. Eddig még nem sikerült vele az adatokat rendesen kiolvasni. Lehetséges, hogy az LPT port nem ad elég áramot? A programban egyébként amikor váltom a vonalakat akkor a változás a bement jelzésnél is megjelenik de ha a PIC típusát szeretném ellenőrizni akkor vagy 0x0000-át vagy pedig 0x3FFF-et kapok. (Attól függően, hogy a bemenet invertálva van e vagy nem) Bye!
Köszönöm a válaszokat! Így sem tökéletes, de már sokkal jobb. Néha-néha ha rájön akkor alámér, de használható tulajdonképpen.
Én a múltkor építettem egy nagyon egyszerű oszcilloszkóp szerűséget 18F4550-es PIC-vel és nekem nem tűnt fel, hogy lettek volna ilyen problémák pedig én negyed ennyire sem néztem meg a pontos számításokat, sőt.
Ráadásul közbe még egy LCD kijelzőre ki is rajzoltam, hogy milyen a hullámforma. Szerintem az lehet nálad a gond, hogy túl gyorsan akarod mérni. Tudom, hogy az adatlap leírja, hogy pontosan mennyit kell rászámolni, hogy rendben mennyen de szerintem akkor is hagyj rá egy picit. Csak egy pár ciklusos késleltetés kell mondjuk úgy 100-200 órajelnyi már elég lenne szerintem. Ha gondolod próbáld ki, hátha jó lenne. Bye! |
Bejelentkezés
Hirdetés |