Fórum témák
» Több friss téma |
Sziasztok! Egy hőmérő IC adatait szeretném feldolgozni, de az adatlap vagy hibás vagy én nem értek valamit. 0 fok felett már megy a kijelzés, viszont minusz értékeket nem tudom hogyan vegyem, 1-es vagy 2 es komplemenssel számolva. Csatoltam az adatlap részletet. A -10 fok bináris értéke egyes komplemenssel számolva stimmel az adatlap szerintihez, de a -25 fok feletti értékek, már 2-es komplemenssel számolva stimmelnek... Elírás lehet vajon, vagy elkerüli valami a figyelmem?
A hozzászólás módosítva: Jan 28, 2015
Közben rájöttem, hogy a tized jelző félbájt csordulásokkal nem számoltam...
Ha elshifteled 4 bittel jobbra, akkor teljesen tisztan 0.0625C/LSB, es kettes komplemens. De, ha nem shifteled el, akkor is vegig kettes komplemens, csak akkor 0.00390625C/LSB.
Van egy negyedik út is: Csak az LCD jár 5V -ról, a többi mehet a 3.3V -ról.
Az XJ2004A adatlapján az szerepel, hogy a minimális magas szint a vezérlő jeleken és adat vonalakon 2.0V. Csak arra kell ügyelni, hogy ne olvassunk az LCD -ből. A hozzászólás módosítva: Jan 28, 2015
Elvileg a 4bit-es használatnál nem olvasunk csak írunk rá.
Elég sok módon kipróbáltam, de nem ad életjelet a kijelző.. Ellenállás, dióda, 3v + 5v együttes használata, külön külön, és simán 3v-ról is, időzítés növelése, de semmi. A másik baj az, hogy ha a kijelzőt 5v-on hajtom, akkor valamiért a vezérlő RS,RW lábakon is megjelenik ez a feszültség ami gondolom nem tesz jót a PIC-nek. A másik, hogy valamiért abban a pillanatban, hogy D5 kijelző láb vezérlést kap abban a pillanatban leülteti a PIC-et. Mint, ha leszívná a tápot és ezáltal leáll az egész (műszerrel rámértem és leesik a táp 1-1.5v-ra), vagy csak leakasztja, nem tudom... Mindegy, mivel 5v-os PIC-ekkből van még bőven, inkább valami szint illesztést kellene kitalálni ami megbirkózik a fentebb leírtakkal. (SPI ~1MHz) A hozzászólás módosítva: Jan 28, 2015
Idézet: „Elvileg a 4bit-es használatnál nem olvasunk csak írunk rá.” A 4 bites üzemmódban is lehet olvasni ( de nem néztem a konkrét kódot, de azért figyelj rá! ) !
Vannak 5 V-ot elviselő lábak, azokat kell használni bemenetként.
Sziasztok!
Még mindig a shift registerrel vagyok elakadva. Sajnos Proteusban nem találtam meg az általam használni kívántat, de mint tanácsoltátok, másik hasonlóval próbálkoztam. A működését már nagyjából értem is, viszont azt, hogy kellene kódba ezt átfordítani, abban teljesen tanácstalan vagyok. Tudtok segíteni egy mintával, amiből kiindulhatok és illeszthetem az időzítőmhöz? Közben az eredeti időzítő kapcsoláshoz hozzárajzoltam a kijelző részt is.. Köszi és üdv: spgabor
3 és 5V-tal nem is fog menni, max 4,5 lehet ha 3V-t használsz.
Szerintem elsőnek csinálj egy megszakítást ami 1mp-es időközönként nővel egy változót.
Ezt a részt még a PIC beállításához tatozik. (ennek eredményét majd élesben is kell tesztelned mert a szimulátor nem mindig modellezi jól le, főleg, ha egy gyengébb gépen fut) Aztán ne felejtsd el beállítani a kristályod értékét, majd a PIC-et is be kell állítanod. 2szer kell az elemre rákattintani. Gondolom 4MHz-es kristályod lesz, így azzal nem lesz nehéz beállítanod a timert. Azt hiszem timer2-vel menni fog. A jó beállítások 628-hoz: (4MHz)
A megszakítás pedig valahogy így:
Aztán ez pedig a digitek:
A hozzászólás módosítva: Jan 28, 2015
Ezt nem nekem szántad !?
A hozzászólás módosítva: Jan 28, 2015
Igen, ez a része meg is van, még te segítettél benne még talán karácsony előtt. Az óta kicsit ült a dolog és most akartam befejezni, a kijelzővel, hogy az időzítő áramköröm teljes legyen.
Az eredeti kódom a következő:
Ehhez még megy egy makró függvény:
Aztán még megy egy rutin ami a shiftregiszterbe küldi ki az adatot:
A használata pedig majd így lesz: (0-9-ig írhatod a számokat)
Nem 100%, hogy egyből jó lesz, főképpen azért nem mert itt nem kezeljük azt hogy neked 4 kijelződ van és azok sem egymás után hanem 2-4,1-3 kiosztásba ha jól emlékszem. És azt hiszem ez 74HC595-re írtam anno szóval az enable lábat biztosan fordítanod kell. Nekem a definíciókban így van megadva:
Ez utóbbit csak, ha nem értenéd, hogy mi mért van.. Szerintem ez több mint elegendő, hogy elindulj és talán meg is tudd írni A hozzászólás módosítva: Jan 28, 2015
Egy pár észrevétel:
Idézet: „TRISB = 1; // Port magas szinten” A TRISx regiszter a prot ki vagy bementet állítja nem a szintjét. Tehát neked most a B port 1-es bitje vagy is 0b00000001 (hexában 0x01) bemeneten van a többi kimeneten. Ha ezek megvannak és jól működnek akkor a digites rész kell neked, bejegyzésembe azt is megtalálod.. A hozzászólás módosítva: Jan 28, 2015
Igen, diódával és ellenállásokkal is próbáltam kicsit a feszültségeket csökkenteni.
Nem hozott eredményt. Marad a szintillesztés, csak ebben kevés még az infóm..
Köszönöm a segítséget, jelentkezem, ha elakadnék megint.
Sziasztok, nemrégiben elővettem újra a PICkit 2-őm (eredeti) , kb 2 hónapos állás után.
Először egy 16f505-öt próbáltam programozni vele, majd egy 16f723A-t, mindkettőnél ugyanaz a probléma, nem látja a PICkit2 a chippeket. Ha manuálisan írok bele, akkor beírja, de kiolvasni már nem tudja(szóval gondolom nem írja be ténylegesen, mert el sem indul a chip) . Átfrissítettem a PICkit2-őt a v2.32.00-ra. Én rontok el valamit, vagy tönkre ment a PICkit2? Köszönöm a segítséget!
Kis piros felirat Code protect vagy Data protect, esetleg All protect nem jelenik meg?
Egy kép kellene a hibáról.
Szia, közben szenvedésemben sikerült valahogy életrekeltetem, beleírta a programot, és tényleg benne is van., viszont még mindíg csak manuálisban látja a picet. Se code, se data protectes felirat nincs.
A 16F505 nem rendelkezik típusazonosítóval (device id), így automatikusan nem ismerhető fel. A kiválasztásához kézi kiválasztába ment a program. Valószínüleg így léptél ki belőle és az ismételt indításoknál mindig erre a módra áll be. Programmer / Manual device select....
Amúgy a továbbiakra nézve az automatikus felismertetés nem lesz perspektivikus... De ezt már többször leíram.
Használt már valaki PIC-hez ilyen szint illesztést? (3v-5v és 5v-3v)
állítólag ez oda vissza megoldja a szint illesztést és árban is barátságos lenne, bár kicsit nagy lenne a helyigénye... Csatoltam a képet.. Szerintetek működhet? BSS138 FET van a kapcsolásba..
Szia! Optocsatolós szint illesztésen nem gondolkoztál?
Annal dragabbat es nagyobbat erre a feladatra nem is talalhatna. Raadasul egy altalanos opto ide meg lassu is. Egy 74HCTxx IC-vel meg lehet oldani a problemat. A HCT bemenete 0.8V alatt L, 2.0V folott H, de a kimenete 5 voltos. Pl. 74HCT245. A HC nem jo, mert annak 0.7V * Vdd a Vihmin-je.
Az a FET-es megoldas jo, bar a 10k-s felhuzokkal nagyobb bemeno kapacitasok mellett lehetnek problemak, tul magas frekvencian nem lesz jo.
Ez még jó is lehet, de ha jól látom akkor ez csak 1 csatornás.
Vagy is annyi ilyen IC-ét kellene használnom amennyi vezetéket szint illeszteni akarok. Akkor mér inkább ezt nem? SN74LVC14 Balagemann2031: ezt nem ismerem, de gyanítom itt is olyan probléma lehet mint a 74LVC1T45-nél illetve, nagy is... killbill: Én még ezt is nézegettem, tudom HC, de azt hittem jó lehet: 74HC573, adatlap SPI vonalakat kellene elvinnie a FET-es megoldásnak, ahogyan nézem sokan ezt ajánlják és mint ha ebay-on és egyéb más oldalon is árulnak pontosan ilyen felépítésű modulokat. Az SPI 1MHz körül fog járni, annál nem hiszem, hogy szükség lenne nagyobb sebességre.. Nézegettem 2 tranzisztoros megoldásokat is az ida vissza illesztés miatt, de azt már a sok alkatrész miatt elvetettem. Ez a FET-es megoldás oda vissza tud elvileg így illeszteni..
Na készen van az égetőm.
Viszont azt nem értem hogy az a külső 10kohm os ellenállás most a PIC vdd és a PIC mclr lába közé kell, vagy a PIC vdd és az égető mclr lába közé kell-e a céláramkörben... Itt a fórumon felül olvastam hogy : "Az MCLR lábat, 10kohm-mal fel kell húzni a Vdd tápfeszültségre." ebből arra következtetek hogy a PIC vdd és mclr lábát kell összekötni vele, viszont a kapcsolási rajzon a szöveg eléggé félreérthető.
Na igen ez a 74LVC8T245 tényleg jó lenne, de elég drága...
Köszi amúgy..., nem kerestem típuson belül.. 74HCT245 szimpatikusabb árban.. (killbill linkelte), csak itt ügye nincs duál suply.. A hozzászólás módosítva: Jan 29, 2015
Nyomkövetést végzel az égetőddel?
Ha igen, a 10k a Vdd és a MCLR/Vpp közé kell. Ha nem, akkor a 10k a MCLR/Vpp és a Vss közé kell.
Nos igen. Az ár nem mindegy, de az sem hova kell belenyúlni. A legegyszerűbb icserny javaslata lenne, egy inverting charge pump a kontrasztra,pl egy ICL7660, de az nem versenyezhet a 90 Ft-os meghajtóval.
|
Bejelentkezés
Hirdetés |