Fórum témák

» Több friss téma
Fórum
Keresés
Lapozás: OK   38 / 179
(#) Peticilin hozzászólása Feb 17, 2014
Sziasztok!

Egy kis segítséget kérnék,bár biztos én bénázok valamit. Akarok majd csinálni LM 35-el hőmérőt és az lcd kijelzővel nem bírok. Pontosabban az mitől van,hogy a kijelzett érték az előtte lévő két karaktert is használja,úgy hogy az ott lévő karakterek,ha van írva bele valami,akkor vibrálnak. Pontosabban hiába teszem a megfelelő helyre a karaktert,mégis kettővel el van csúszva. Ez mitől lehet? Mellékelem a progit.
U.i.: Tudom,hogy az lm35-nek csak 0,5 fokos a felbontása,így felesleges a tized fokos kijelzés.
Jelen esetben csak a tizedes kezelésre vagyok kíváncsi lcd kijelzőn.

Segítségeteket előre is köszönöm.

lcdproba.PIC
    
(#) csikosgabi válasza kaqkk hozzászólására (») Feb 11, 2014
Köszönöm mindkettőtöknek.
(#) kaqkk válasza csikosgabi hozzászólására (») Feb 11, 2014
Tessék ...

tarolo.PIC
    
(#) proli007 válasza csikosgabi hozzászólására (») Feb 11, 2014
Hello!
- RS tároló van a modulok között. De amit Te írsz, az nem RS tároló, mert annak két bemenete van, Set-Reset. Azért "RS"..
- Viszont ott van a ZR (Simple Counter) számláló modul, aminek bináris kimenetihez hozzáférsz. Ott a Q0 kimenet pont azt teszi, amit szeretnél.
üdv!
(#) csikosgabi hozzászólása Feb 11, 2014
Üdv. A kérdésem az lenne, hogy lehetséges-e a parsicban olyan RS tároló megvalósítása (vagy olyan egység létrehozása ami ugyanezt csinálja) aminek van trigger bemenete? Tehát egy impulzusra H szintű lenne a kimenet, a következő impulzusra L szintű... Köszönöm előre is.
(#) Isti69 válasza dcsabi hozzászólására (») Feb 5, 2014
Köszi szépen! Már nekem is volt olyan projektem ahol az LCD kijelzésnél nem volt mindegy hogy milyen sorrendbe rakom le a modulokat. Többször át kellett sorszámoztatnom az egész programot. Egyszerűen nem volt hajlandó elfogadni az LCD modult. Még törpölök a progin hátha jön valami ötlet. csao
(#) dcsabi válasza Isti69 hozzászólására (») Feb 5, 2014
A helyzet az, hogy néhány ms alatt el kell végeznie jónéhány műveletet, ami nekünk csak egy két modul behúzása. Nemrég egy programban egy ventilátor fordulatát PWM-el szabályoztam. Az analóg bemenetről vettem hozzá a jelet (hőmérséklet). Nagyon precízre akartam, raktam oda jónéhány matematikai műveletet. Az eredmény hasonló volt mint nálad. A ventilátor fordulat szépen sétát, sőt ugrált is néha. Az analóg bemenetre rátettem egy 4 digites műszert, úgy állt fixen mint a szeg... Azért ne feledkezzünk meg róla, a rajz mindent elbír, sőt a proci végre is hajtja, viszont idő is kell hozzá néha... Az igazi kijelzési ciklus az olyan, hogy adddig a proci nem csinál semmit ez párszáz mikroszekundum, vagy esetleg 1-2ms. Parsicban több mindennel együtt kell működnie ehhez. Ne bánjunk felelőtlenül az eszköztár összes elemével még ha a rajz mindent el is bír. Azért (halkan megjegyzem) egy adott modul mögött álló állomány, más "környezetben egy egész project" vagy legalábbis jelentős része mikrokontrollerre. Éppen ezért ott egy kicsit több idő is szükségeltetik hozzá. Itt meg leteszek 3-4 modult, és kész a progi, ja és a háttérben "valaki megírta már" 3-400 sort. Nekem is időnek kellett eltelnie hozzá míg rájöttem, ez egy nagyon jó lehetőség is, hogy tanuljam vele az "asm-ben" való programozást. Ezért jeleztem, hogy megszakítás kezelés kell az igazi Multiplex kijelzéshez. Most írok egy nagyobb programot egy kicsit nagyobb PIC-be és ott kellett szembesülnöm keményebb dolgokkal 30Kb környékén, asm sor 35.000-nél jár. A projektet nyílván nem, de az ott szerzett tapasztalatokat nyílván megosztom, még minden hibamentes és csak 4Mhz-n járatom a PIC-et. Esetleg gondolkozz el azon, hogy egy feladatot több módon is meg lehet oldani, vagy fogalmazd újra, lehetséges egy másik megoldás eredményesebb lesz. Próbáld meg a fentebb említett BCF INTCON,GIE és "párját" használni. esetleg a 2ms-ot vebb hagyobbra...
A hozzászólás módosítva: Feb 5, 2014
(#) Isti69 válasza dcsabi hozzászólására (») Feb 5, 2014
Köszi a segítséget majd megpróbálom. Amúgy a kijelző rész tökéletesen működik csak az analóg bemeneten csinálja a fent leírt hibát. Ha analóg bemenetre egy potit teszek 0-5V közé akkor a számváltásnál így jelzi ki az értéket. A tápfesz /0-5V/ ugrálása miatt lehet? Bár tettem az analóg bemenetre kondit is szűrésnek. Akkor is ilyen volt.
(#) kaqkk válasza Czindi hozzászólására (») Feb 4, 2014
Én ezt a programot lm35 érzékelővel használtam tökéletes 1c pontossággal
A hozzászólás módosítva: Feb 4, 2014
(#) dcsabi válasza Czindi hozzászólására (») Feb 4, 2014
Értem már. A hőfokszabályozást egyszerű módon egyetlem modullal meg lehet oldani. A fontosabb rész az a hőelem hiteles felerősítése. Én K hőelemet használtam hasonló célra, ahhoz van kompenzált előerősítő SPI busz kimenettel (max 6675). nem akarlak megtéveszteni. csak jelzem a lehetőségeket. A j hőelem táblázat is nyílván megtalálható a neten. Minden hőfok értékhez tartozik egy mV (uV) érték. Egy sima műveleti erősítővel felerősítve az analóg bemenetre juttatva, a már fentebb említett modulokkal korrigálni lehet a görbét. Erősítsd fel, mérd meg multiméterrel. A 300C körüli érték legyen egyenlő 5V-al. Ez csak egy példa...Vagy éppen 512C legyen 5V ez könnyen kezelhető..stb
(#) Czindi válasza dcsabi hozzászólására (») Feb 4, 2014
A ds18b20-t már néztem én is csak az a baj hogy mindössze 125 fokig jó. sütőbe lenne a hőfokszabályzó, a J hőelem az megvan már. Az erősítés részén gondolkodom még, meg persze a pic programon. Sajnos még nem vagyok annyira profi a parsicban, kijelzőkezelés és ennél bonyolultabbakat még nem csináltam. Pár programot már csináltam vele, működött is beégetve. Mintáknak illetve magyarázatoknak is nagyon örülnék.
(#) dcsabi válasza Czindi hozzászólására (») Feb 4, 2014
Ha igazán pontos hőmérőt akarsz, akkor használj ds18B20-t. Létezik 1-2-3-5m-es vezetékes "vízhatlan kivitel" ez Pl 0,0625 felbontású. (ha van időd kivárni a szállítást, free shipping 3$...stb) Kb 2 hét:Érzékelő_beszerzés Ha van rá igény majd publikussá teszem az INC fájlokat egy példa keretében.
(#) kaqkk válasza Czindi hozzászólására (») Feb 4, 2014
Tessék 0-100c
A hozzászólás módosítva: Feb 4, 2014

king2.PIC
    
(#) Czindi válasza dcsabi hozzászólására (») Feb 3, 2014
Köszi a választ! Egy jó előerősítőre találtam mintát. Pic- be volna egy kis gondom hogy hogyan is kezeljem le. Esetleg egy egyszerű mintát ha fel tudnátok tenni akkor már az alapján meg tudom csinálni. A pontosság az jó lenne ha olyan 1 fok volna.
(#) dcsabi válasza Isti69 hozzászólására (») Feb 2, 2014
Helyesbítek: Timer és bármilyen idő alapú modul, késleltetés, impulzus hossz, stb. A Parsicnak nem a legjobb a hétszegmens kijelző kezelője. néhány társunk javított már rajta. keress rá. vagy használj lcd-t van 2x8 soros is...Vagy a már említett megszakítás kezelést...
A hozzászólás módosítva: Feb 2, 2014
(#) Isti69 válasza dcsabi hozzászólására (») Feb 2, 2014
A második oldalon van a kijelző vezérlése. Digitálisan állított értékeknél tökéletes, Timer is csak 1van. A késleltetés a nyomógomb prellegése miatt van.
A hozzászólás módosítva: Feb 2, 2014
(#) dcsabi válasza Isti69 hozzászólására (») Feb 2, 2014
Továbbá helyezz el a főprogramba a "kijelzést kezelő legfontoasabb" modulok elé és végére BCF INTCON,GIE és BSF INTCON,GIE párokat. Ehhez nyísd meg az Mplabot és oda írd bele és onnét fordítsd tovább...
A hozzászólás módosítva: Feb 2, 2014
(#) dcsabi válasza Isti69 hozzászólására (») Feb 2, 2014
Feltételezem a kijelző frissítése túl gyors...vagy sok a timer és a késleltetés. Pl nem értem minek a nyomógombra 50ms késleltetés, amikor az oneshot mindent megold...
A hozzászólás módosítva: Feb 2, 2014
(#) Isti69 hozzászólása Feb 2, 2014
Sziasztok!
Van egy kérdésem. Analóg bemenetnél a kijelző nem tudja pontosan megjeleníteni az értéket.
Pl.: 6-ról 7-re váltásnál 8-at mutat aztán beáll 7-re. Ez egy hőfokmérő lenne 16 bites beállításnál
0-100 fokot kellene neki kijelezni. Valójában a szimulácíó tökéletes de a PIC-be befordítva ez a jelenség jön létre. Van valami ötletetek a hibára?
A hozzászólás módosítva: Feb 2, 2014

anga.PIC
    
(#) dcsabi válasza Czindi hozzászólására (») Feb 2, 2014
Gondolom füstöt akarsz mérni (?) Ebből az utcából már megfordultam. A PT100 olyan sérülékeny magasabb hőmérsékleten, hogy nem érdemes vele foglalkozni. Hőelem az nem megy tönkre. K a legolcsóbb, a J is gyakori...Keresni kell egy előerősítő példát a neten, és analógbemeneten mérni a PIC-el. Ha ragaszkodsz a teljes pontossághoz, akkor egy táblázatban átkonvertálhatod az értékeket, ugyanis nem lineáris a hőmérséklet és thermo feszültség karaktarisztika. Parsic, tab és call modul...
A hozzászólás módosítva: Feb 2, 2014
(#) kaqkk válasza Czindi hozzászólására (») Feb 2, 2014
Kezdd el olvasni a témát, az elején találsz több hőmérő megoldást .. A pt100 hoz és a hőelemhez is nagy valószínűséggel kell majd egy előerősítő ami a pici feszültség változást 0-5v közé konvertálja
A hozzászólás módosítva: Feb 2, 2014
(#) Czindi hozzászólása Feb 2, 2014
Sziasztok!

Még új vagyok itt a fórumon,de lenne egy nagy kérdésem! Szeretnék építeni egy 0-250 fokig állítható hőfokszabályzót egy pic 16f877a segítégével. Meg tudom e valahogy oldani parsicban a programozást? Milyen módon csatlakoztassam a PIc-hez a hőelemet (J vagy PT100, még nincs eldöntve, amelyik az egyszerűbb)? Nem kell nagy tudás csak kijelezze a beállítótt értéket és annál a hőfoknál kapcsoljon az egyik kimenet. A válaszokat előre is köszönöm!!!
(#) Hp41C válasza Peticilin hozzászólására (») Jan 31, 2014
A 16F628 -nak csak komparátora van, A/D nincs benne. Esetleg a 16F819 vagy 16F88 18 lábú és rendelkezik A/D -vel.
(#) Peticilin válasza Peticilin hozzászólására (») Jan 31, 2014
Megtaláltam a választ itt egy kicsit visszább. Sajnos nincs neki,csak a 876-nak. Csak a " kis" feladathoz nem akartam 28 lábas picet. De ha csak ennek van analóg bemenete...
(#) Peticilin hozzászólása Jan 31, 2014
Sziasztok!

Bocsánat az alapvető kérdésért,lehet hogy már kérdezték...
A 16F628A-nak elvileg van 4 analóg bemenete ( RA0/AN0 - RA3/AN3 ),de a parsic és fordításnál az mplab is nyafog,hogy nincs. A 16F 877-nél ugyanezek a lábak vannak és ott gond nélkül fordít. Miért van ez?

Válaszotokat előre is köszönöm.
(#) 5geri5 hozzászólása Jan 28, 2014
Megtaláltam köszi
(#) dcsabi válasza 5geri5 hozzászólására (») Jan 27, 2014
A topic elején kb 10. oldalig, elég sok működő projektet tettem fel. Van Uart-os is.
Mindenekelőtt készíts két PIC-es áramkört LCD-vel. Mert a változókat elég nehéz a "fekete műgyanta mögött meglátni". A szimulációban nem minden jelenik meg. Egyébként pofon egyszerű... A gyári példa és van rá 2x3db...A PIC-ek Rx lábát az ellenoldal TX lábával kösd össze, és fordítva ugyanígy. Az adatsebességek 4Mhz Quartz-ra vonatkoznak.
A hozzászólás módosítva: Jan 27, 2014
(#) 5geri5 hozzászólása Jan 27, 2014
Üdv.

Elég sokat keresgettem, de nem nagyon találtam konkrét leírást arra, hogy a Parsic nevű programban az Uart-ot hogyan kell használni. Már jó pár dolgot csináltam benne, de most kicsinek tűnik a PIC memóriája. Egy változót tovább szeretnék vele vinni egy másik PIC-be. Esetleg valaki tud ebben segíteni? Előre is köszönöm.
(#) dcsabi válasza kaqkk hozzászólására (») Jan 25, 2014
Szia, Bocs egy ideje nem jártam itt. Mindent nem biztos, hogy meg lehet csinálni. jeleztem az illetőnek anno, hogy szükség van-e a 30Khz, folyamatos küldésére? Az a helyzet, hogy én egy feladatot a rendelkezésre álló eőforrások szerint fogalmazok meg. Lehet még INC filet is írni hozzá, esetleg a megszakítás rutint kivenni INC-re és átvariálni...stb. Volt, már rá példa, hogy a program annyira bonyolult volt, hogy bizonyos feladathoz tartozó "gyári modul" instabilitást okozott a rendszeren. Az adott feladathoz tartozó modult INC-ben újra megirtam egy kicsit másképpen és egy btfss utasítással meghívtam...stb. A modulos rajzolgatás mögé tekingetve, el lehet sajátítani a klasszikus ASM kódu programozáshoz is egy-két dolgot.
A hozzászólás módosítva: Jan 25, 2014
(#) kaqkk válasza proli007 hozzászólására (») Jan 23, 2014
Tehát akkor ez az ötlet nem életképes, a trükköt amit írtál azt ismerem de arra gondoltam hátha megkerülhető az időalap, programon belül is és nem csak "átveréssel"
Következő: »»   38 / 179
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