Fórum témák

» Több friss téma
Fórum » Modulrendszerű, grafikus PIC programozás
Lapozás: OK   110 / 177
(#) kaqkk válasza qvasz2 hozzászólására (») Aug 12, 2011 /
 
tedd fel a progidat lássuk mi "fogja le" a programfutást
(#) Panhard válasza kaqkk hozzászólására (») Aug 12, 2011 /
 
Nem az a baj, hogy lefogja valami a programfutást, egyszerűen kijelző vezérlést nem így kell csinálni. Ugye 6db kijelző van, minden kijelzőnek 16.6%-ot kell világítani. Az én programomban (de a tiédben is hasonlóan) ciklusonként vált kijelzőt. Addig nincs baj, amíg minden ciklus egyforma ideig tart, mert ilyenkor egyforma ideig világítanak a kijelzők. Lásd: ha más program nincs a pic-ben akkor jó volt.
A gond ott kezdődik, hogy ha az egyik ciklusban jön egy megszakítás (Timer0), akkor azt fel kell dolgozni a picnek, addig a főprogram nem folytatódik, ezért az a ciklus hosszabb lesz, és a kijelző is tovább fog világítani, ezért nagyobb lesz a fényereje. Ettől van a villogás.
Két megoldás van: Vagy nem használ megszakításokat, viszont iyenkor számít a program hossza is, ha túl hosszú, akkor megintcsak villoghat a kijelző, (a parsic szereti pazarolni a memóriát) vagy a kijelző vezérlést kell megszakítással hívogatni. Én az utóbbit tartom jó megoldásnak. Viszont ehhez már kell az MPLAB is.
Szerintetek?
(#) kaqkk válasza Panhard hozzászólására (») Aug 13, 2011 /
 
Én azon gondolkodtam , hogy nem 6 digit lenne a kijelzés hanem 2*3
(#) qvasz2 válasza kaqkk hozzászólására (») Aug 13, 2011 /
 
Már megvolt:
Bővebben: Link
(#) qvasz2 válasza Panhard hozzászólására (») Aug 13, 2011 /
 
Azt nem hiszem, hogy meg lehet oldani, hogy timer nélkülire átírjam: szinte mindenhez kell valami órajel, főleg az óra funkcióhoz. Jobb lenne az a megszakításos megoldás, de ahhoz én kicsi vagyok. Sem az MPLAB sem az ASM nem az erősségem (finoman szólva). Ha tudsz benne segíteni, azt nagyon megköszönöm.
Viszont amit ide feltettem, az majdnem tökéletes. Csak egy picit kellene gyorsítani a 2ms-os időalapon (pl 0,2 ms-ra), és mást nem kéne akkor átvariálni.Bővebben: Link
Ezt nem lehet valahogy ASM-ben felgyorsítani? Persze úgy, hogy az óra 1000 ms-ja ne sérüljön.
(#) kaqkk válasza qvasz2 hozzászólására (») Aug 13, 2011 /
 
Amint Panhard is írta ki kéne gyomlálni a programból az időzítéseket még 4000ms es monostabilt is láttam benne
csinálj egy időalapot 2ms es idővel és azt osztogasd le a megfelelő időzítésekhez
(#) qvasz2 válasza kaqkk hozzászólására (») Aug 13, 2011 /
 
Sajnos órát nem lehet leosztással csinálni, legalább is amikor ezt kipróbáltam, 1-2 perc alatt is elmászott 1-2 másodpercet, ami azért vicc egy óránál.
Ha jobban megnézed két db timert használok: van egy 1000 ms az órának, és egy másik minden máshoz.
(#) qvasz2 válasza (Felhasználó 15355) hozzászólására (») Aug 13, 2011 /
 
Az a baj, hogy így sincs elég ereje a procinak a hat db LED kijelzőt lekezelni, ezen kínlódok. Szerinted pont egy kis i2c busz hiányzik még hozzá?
(#) kaqkk válasza qvasz2 hozzászólására (») Aug 13, 2011 /
 
Pedig másképp a parsicban nem tudsz pontos órát csinálni ! Órával én is kinlódtam de heti egy két percnél pontosabbra nem tudtam megcsinálni még lcd kijelzővel sem
(#) Panhard válasza qvasz2 hozzászólására (») Aug 13, 2011 /
 
Nem, a procinak meg se kottyan 6db kijelző, sokkat többre képes. A parsic nem tudja a kijelzőket kezelni.
Ha óra kellene én is RTC-t használnék, kérdés, hogy mennyire kell pontos óra. Azért a Parsic nagy segítség, de mellette nem árt ismerni valamennyire az asm-et.
Én is csak egy éve foglalkozok pic-el, de mostanra már elég sok önálló projectet megcsináltam.
Bővebben: Link
De a komolyabbakhoz mindig kell az mplab is.
(#) kaqkk válasza kaqkk hozzászólására (») Aug 13, 2011 /
 
Itt van pl egy 6 csöves nixi órahoz írt program
74141 es meghajtó íc hez készült (bináris kimenet)
de megpróbálhatod 7 szegmensre áttenni a kimenetet
(ez sem volt pontos 1 timerrel !)

gergő.PIC
    
(#) kaqkk válasza kaqkk hozzászólására (») Aug 14, 2011 /
 
Csináltam egy "2*3"digites kijelzést is
ha evvel sem jó akkor csak azt tudod csinálni amit régebben DCsabi : egy pic felelős a kijelzésért , egy másik csinálja az összes többit , és uart on kommunkálnak ( egy +628 as piccel tökéletes lesz a kijelzésed) és a másikba azt írsz ami csak belefér

7dig.PIC
    
(#) Panhard válasza qvasz2 hozzászólására (») Aug 14, 2011 /
 
Leszimuláltam a programodat a 6 kijelzős hőmérőmön.
A megoldás az, hogy egy sort kell áthelyezni a parsic által generált asm-ben, és mplabbal újra lefordítani. Tökéletes lessz a kijelzés. Melléklet... Ha nem jön össze, külld át a kész progidat, megcsinálom neked.
(#) qvasz2 válasza Panhard hozzászólására (») Aug 14, 2011 /
 
Akkor visszaélnék az ajánlatoddal, már csak azért is mert ezen a gépen nincs is MPLAB. Bár a program még messze nincs kész, de ha jó lenne a kijelzés végre, az nagy előrelépés lenne. Felteszem az utolsó verziót és az inc -eket:
Legyél olyan kedves kivágni-berakni és főleg lefordítani!
Köszönöm
(#) Panhard válasza qvasz2 hozzászólására (») Aug 14, 2011 /
 
Próba.

analog27.HEX
    
(#) qvasz2 válasza Panhard hozzászólására (») Aug 14, 2011 /
 
Csak annyit csináltál, hogy áttetted máshova az inc. meghívását? Azt a timer0 megszakítást nem kellett beállítani?
A kijelzés hibátlan lett; sajnos én valamit még elkutyultam, mert a perc kijelzése mindig 0. A 10-es perc az jó, az óra és a másodperc is jó.
Köszi mégegyszer!
(#) Panhard válasza qvasz2 hozzászólására (») Aug 14, 2011 /
 
Igen, csak annyit. Így megszakításból hívogatja a kijelzö.inc-t, így mindig ugyanakkor hívódik meg.
(#) t_oszi hozzászólása Aug 15, 2011 /
 
Sziasztok!
Tudna valaki egy parsicos példát mutatni két 877-es UART kommunikációjára?
Kösz!
(#) kaqkk válasza t_oszi hozzászólására (») Aug 15, 2011 /
 
A téma elején van fent példa
(#) sniperx hozzászólása Aug 17, 2011 /
 
Három analóg bemenetet kellene összehasonlítgatni és az értékek függvényében vezérelni kimenetet.
Konkrétan három hőmérsékletet kell figyelni.
A mérést MCP9700-al gondoltam megoldani.
A hőmérsékletek 0-95C-ig lehetnek, ezt az érzékelő elvileg tudja bőven.
Arra kéne valami ötlet, hogyan lehetne megoldani, hogy legyen némi hiszterézis a dologban?
Azon is agyaltam, hogy esetleg a beolvasásokat kötöm időhöz, tehát nem folyamatosan kérdezné le az értékeket, hanem mondjuk csak 20-30s időközönként.
Van erre valami jobb megoldás?
(#) sniperx hozzászólása Aug 17, 2011 /
 
Referencia feszültséget muszáj beállítani?
A pic összes lába kelleni fog enélkül is...
(#) proli007 válasza sniperx hozzászólására (») Aug 17, 2011 /
 
Hello!
Csak éppen azt nem írtad meg, mi köze a három érzékelőnek egymáshoz logikailag. Vagy is mi a logikája az összehasonlításnak, amit tudnia kellene.
Hiszterézises blokk, eleve van a Parsic-ban. De lehet készíteni is összehasonlító blokk, és RS tár segítségével is.
Minden 2ms ciklusban lesz beolvasás, de ezt tárolhatod egy multiplexerrel, míg jónak látod. Vagy is 30sec időközönként másolod át.
És minél "jobb megoldás"? Mert nem tettél fel semmit..
üdv! proli007
(#) sniperx válasza proli007 hozzászólására (») Aug 17, 2011 /
 
A feltételrendszer elég bonyolult, nem is annak a kilogikázása a probléma, hanem az analóg jelek lekezelése.
A "beolvasás" dolgon azt értettem, amit írtál is, tehát hogy 30s időközönként dolgozom csak fel az értékeket, ennyi időnként számoltatom újra.
A kapcsolás egy fűtésrendszerhez készül, aminél van kétféle hőbetáplálás, puffertartály, útszelep, szivattyúk,stb.
A lényeg az, hogy tudnia kell a gyors felfűtést a radiátorok felé, de amikor már temperál és megy a vegyestüzelésű rész, akkor dolgozzon a pufferre.
Amikor leáll a tüzek táplálása, akkor ne keringesse a kazánhoz kimenő ágat a puffer felől, stb.
(#) sniperx válasza proli007 hozzászólására (») Aug 17, 2011 /
 
"Minden 2ms ciklusban lesz beolvasás, de ezt tárolhatod egy multiplexerrel, míg jónak látod. Vagy is 30sec időközönként másolod át."

Na, ez a rész a kérdéses, hogy ezt hogy kell megcsinálni?
Minden analóg bemenetre rákötöm egy multiplexer bemenetét, az ok. De hogy megy ez az időnként letárolás?
(#) proli007 válasza sniperx hozzászólására (») Aug 17, 2011 /
 
Hello!
Ez viszonylag egyszerű.
üdv! proli007

AD-Store.PIC
    
(#) sniperx válasza proli007 hozzászólására (») Aug 17, 2011 /
 
Köszi!
Közben valami hasonlót találtam dcsabi tollából is, igaz, ott mérésre használja, de ugyanez a módszer. (meg nem közvetlen analóg, hanem impulzust számol, de ez részletkérdés)

tarol.PIC
    
(#) kaqkk válasza sniperx hozzászólására (») Aug 17, 2011 /
 
A Kaqkk tollából nem láttál valami hasonlót 7dig.pic néven egy pár hsz el feljebb ? :friday#1045047)
(#) kaqkk válasza kaqkk hozzászólására (») Aug 18, 2011 /
 
Bocs jobban belenéztem és látom csak az "én kijelzőm mellé" került a tároló amiről szó volt
(#) CoderKevin hozzászólása Aug 29, 2011 /
 
Hali!

Valaki meg tudná mondani hogy az "Impuls, PWM out" modul impulzus része pontosan hogyan működik?
(#) kaqkk válasza CoderKevin hozzászólására (») Aug 29, 2011 /
 
Keresd vissza itt az oldalon van a használatáról a leírás, én tettem föl kb. két hónapja.
Következő: »»   110 / 177
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