Fórum témák

» Több friss téma
Fórum » Modulrendszerű, grafikus PIC programozás
Lapozás: OK   142 / 177
(#) 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 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
(#) 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.
(#) 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!
(#) kaqkk válasza csikosgabi hozzászólására (») Feb 11, 2014 /
 
Tessék ...

tarolo.PIC
    
(#) csikosgabi válasza kaqkk hozzászólására (») Feb 11, 2014 /
 
Köszönöm mindkettőtöknek.
(#) 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
    
(#) Ferkógyerek válasza Peticilin hozzászólására (») Feb 17, 2014 /
 
Szia!
Az "LCD OUT" modulban pipáld ki a "constant length"-et. Így tudatod a programmal hogy hány karaktert tartson fent a kijelzendő számnak.

lcdproba.PIC
    
(#) kaqkk válasza Peticilin hozzászólására (») Feb 17, 2014 /
 
Alig tettél bele hibát ! A számítások mind hibádztak , a számok alatt volt egy felesleges szöveg , a szám text ként volt kezelve , ez remélem jó lesz..
A hozzászólás módosítva: Feb 17, 2014

lcd.PIC
    
(#) Peticilin hozzászólása Feb 17, 2014 /
 
Köszönöm mindkettőtök segítségét. Ismét tanultam valamit.

Üdv. Peti
(#) kaqkk válasza Peticilin hozzászólására (») Feb 17, 2014 /
 
Szívesen ! Ha odafigyelsz és átgondolod mit hogyan szeretnél menni fog .
(#) dolf hozzászólása Feb 20, 2014 /
 
Sziasztok!
Készítettem egy kulcsot illetve hármat. Az adó egy pic ami egy jel sorozatot ad ki.
A beolvasását így oldottam meg de nem üzem biztos van mikor nem jó olvas. Kifogytam az ötletek böl van valakinek valami ötlette, hogy lehetne stabillá tenni?

KeyProba.pic
    
(#) dolf hozzászólása Feb 20, 2014 /
 
Az adót így oldotta meg

adó.pic
    
(#) dcsabi válasza dolf hozzászólására (») Feb 23, 2014 /
 
Kicsit belepillantotam. Néhány kérdés: melyik Parsic-al írtad? A valóságban hogyan próbáltad ki? Esetleg a kimeneti jelsorozatot megnézted "valamivel"? Mi a tényleges cél? Illetve a tervezett feladat vázlata? Továbbá az időzítések és késleltetések lehetőleg egy modul forrásból származzanak. Az alkalmazás elbírna egy qurtzot is... Példa idő alapu modulok alkalmazására és helyettesítésére (ezek jel pillanatban is működnek több példányban) az ÜTEM1 egy másik oldalon az alap pulza. 10 vagy 100ms stb...
(#) dolf hozzászólása Feb 23, 2014 /
 
Melyik Parsic-al írtad? Parcic v3.4 A valóságban hogyan próbáltad ki? Kimenetét meg néztem szkopal is és Saleae Logic 1.1.14, kimenet minden olvasásnál meg egyezik. Mi a tényleges cél?
Cél azonosítás lenne jack dugóba építve . Három féle kulcs van, be kel azonosítani melyik az a kulcs, ami használva van.
(#) dcsabi válasza dolf hozzászólására (») Feb 23, 2014 /
 
Az RB2 key-nél lévő 5db modul kombinációja nem biztos, hogy stabil möködést produkál, vagy éppen azt csinálja, amit gondolsz hogy csinálni fog. Quart nélkül nagyobb a hiba lehetőség. Régebben csináltam ehhez hasonló dolgot egy kicsit hosszabb időkkel, aztán nem igen akart "szót fogadni". Quartz és egy idő pulza leosztva minden feladathoz...-megoldódott.
(#) dolf hozzászólása Feb 23, 2014 /
 
Kulcsok mindig egyforma kimenetet adnak még egyszer sem fordult elő. hogy tévedt volna. Ezért gondolom, hogy a vevő oldalon kellene a problémát orvosolni. 10 próbálkozásból 7 jó de ez nem jó arány .

key.jpg
    
(#) dcsabi válasza dolf hozzászólására (») Feb 23, 2014 /
 
A vevőben az RB2 bemenetre érkező jelek 3 feladatot indítanak és mindhárom idő alapú. Ezek műkődése nincs elég "szigorú" kényszerben egymással. Sokat szívtam a DS18B20 szenzor kiolvasásával. Egy ASM részletel kellett írnom és a rutint megszakítástiltások közé kellett zárnom. Megnyítottam az Mplabot és miután lefordítottam belejavítottam. Más esetben az INC részletbe tettem bele az említett parancsot...stb. Valami szinkronnak kellene lennie a rendszerben. Miért nem adod ki uarton a jelsorozatot? Ez nem téved. A quartz oda is elkelne.
(#) dolf hozzászólása Feb 23, 2014 /
 
Három vezetéken nem tudom megoldani vagy van rá valami ötlet?
(#) dcsabi válasza dolf hozzászólására (») Feb 23, 2014 /
 
Az adó PIC felől csak az 5V negatív és a PIC Tx vonal kell (kettő vezeték) A vevő felől az 5V negatív és az RX vonal kell. 0V összekütve 0V-al, Tx összekötve RX-el. ez uart esetén ... Az adott és vett byte-ok száma egyezzen meg. A gyári példa kis módosítással megfelel a feladatra.
A hozzászólás módosítva: Feb 23, 2014
(#) dolf hozzászólása Feb 23, 2014 /
 
Igen most már rémlik a probléma 12f508 van az adó oldalába és azzal nem letet megoldani és ezért indultam el ebbe az irányba
(#) dcsabi válasza dolf hozzászólására (») Feb 23, 2014 /
 
Használj 16F628A-t. Ha mindenképpen 8 lábúban gondolkodsz az Oshon basic-ban van "szoftveres" Uart. Ha nincs meg akkor a demo is alkalmas erre a feladatra, egy -két sor csak...régebben használtam 8-10 byte átviteléhez 12F675-nél.
(#) dolf hozzászólása Feb 23, 2014 /
 
Köszi az ötleteket az a gond, hogy a jack dugóba nem fér el csak 8 lábú ezért gondoltam 12F508 ra mert az elfér benne. parsicba nincs a 12f675.
(#) dcsabi válasza dolf hozzászólására (») Feb 23, 2014 /
 
Ha van kéznél ...675 akkor ezek a soros kimenetű kulcsok elvileg használhatóak az általad elmondottak alapján. Quarz nincs, int 4MHz,MCLR nincs kivezetve. Adatsebesség 9600.
100ms -onként ad egy adatot egy számot, ami a hex file nevének vége. 53,55,57.
Vétel Parsic uart modullal egyetlen adatként, adatforrás 8bites adat neve pl ADAT1.
Ezt be kell húzni a vételi modulba vételhez. az ADAT1 modult összehasonlítod 3 IF modullal...
A hozzászólás módosítva: Feb 23, 2014
(#) dolf hozzászólása Feb 23, 2014 /
 
Sajnos nem tudom kipróbálni mert nincs itthon 12F675.
Kerítek majd egyet és ki próbálom . Mindenesetre, köszi, szépen!
(#) dolf hozzászólása Feb 25, 2014 /
 
Még egy kérdés parsic ban, hogy lehet megoldani, hogy be menet is és ki meneti is legyen ugyan az a láb.
A hozzászólás módosítva: Feb 25, 2014
(#) proli007 válasza dolf hozzászólására (») Feb 25, 2014 /
 
Hello! Leginkább sehogy. Mert a program a legelején beállítja az irányregisztert, és az a futás során már nem változik. üdv!
(#) dolf válasza proli007 hozzászólására (») Feb 25, 2014 /
 
Hello! Több pic nél is találkoztam már olyan kapcsolással ahol a ic lába bemenet is és kimenet is volt egyszerre! Akkor azt , hogy oldották meg? Köszi!
(#) proli007 válasza dolf hozzászólására (») Feb 25, 2014 /
 
Nem azzal van a gond, hogy nem oldható meg, hanem a PARSIC így működik.
(#) Szammer hozzászólása Feb 25, 2014 /
 
Sziasztok!
Jól mondja "proli007":
Idézet:
„Nem azzal van a gond, hogy nem oldható meg, hanem a PARSIC így működik.”

Aki ezt a progit használja, el kell fogadnia a korlátait.
Nem kritizálni hanem elfogadni, hogy volt egy "Őrült" aki köznyelven és az egyszerű halandók számára is érthetően lehetővé tette a PIC programozást.
Üdv:
Zsolt
A hozzászólás módosítva: Feb 25, 2014
Következő: »»   142 / 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