Fórum témák
» Több friss téma |
Hello!
Ha nem haragszol Vilmos helyett én válaszolok, mert emlékeim szerint nem szimpatizál a Parsic-al.. - Sajnos korrekt módon nem tudod megoldani. A PIC a külső referencia feszültséget az RA3 láb és a GND között tudja pld. fogadni. - De hogy külső referencia van, azt az ADCON1 regiszterben kel megadni, mint ahogy azt is, hogy melyik bemenet legyen analóg vagy digitális. - Ezt egy ASM programban az inicializáló részben megadjuk az ADCON1 regiszter értékét, és ez után már csak az ADCON0 regiszterben megadjuk, hogy a multiplexerrel, melyik csatornát szeretnénk mérni. Nos a Parsic-ban ezt nem így kezelik le. - A SYS_INIT rutinban az ADCON1 értékének 6-ot adnak meg, ami azt jelenti, hogy az Aporta összes bitje digitális. - Majd a READ_AN0 rutinban történik pld. az AN0 analóg bemenet konvertálása.
Itt állítja be, hogy az AN0,AN1,AN3 bement analóg legyen. (RA2 pedig digitális marad) - Tehát az ADCON1 regisztert minden bement konverziójánál külön-külön állítja. - Vagy is szerintem egy lehetőség van, hogy a
módisítással ugyan úgy fogja mérni az AN0 csatornát, csak közben az AN3-on várja a külső referencia értékét. - Természetesen ehhez a lefordított forrásnyelvű programba kell módosítani, majd ezt fordíttatni az ASM fordítóval tárgykóddá. üdv! proli007
Kedves vilmosd!
Én az RA.4-et kérdeztem, és az adatlap szerint tudnia kéne. Egyébként csak a 628 szériánál van a hiba.
Ugy igaz. Az RA4 Open Drain tipusu kimenet. Kibir 8.5 voltot En hasznaltam tap kapcsolasara 9 voltos elemnel.
Sziasztok!
Köszönöm, tényleg elnéztem. Üdv: Zsolt
Keress vissza a topic első részében tettem fel példát (példákat...) erre is...
Most nem akarok "vaktában rajzolgatni", nincs kéznél PIC-es panel amivel kipróbálhatnám. Amiket eddig feltettem, azok ki voltak próbálva... A "2ms" 4Mhz-es Quartz-nak kevés lehet tegyél 20MHz-eset.
Köszönöm! Megtaláltam már tegnap reggel, csak nem tudtam irni a forumra. Valamiért nem töltötte fel az üzenetemet. Most tökéletesen működik a ketyere. Ha kicserélem a Quartz-ot akkor át kell állítanom az időzítést? Egyébként köszönet minden programrészlet szerzőnek, hiszen "lopott" elemekből építkeztem.
Sziasztok!
Esetleg valaki az én kérdésemre? Bővebben: Link Az include file-okban levő port hivatkozást átírom a megfelelőre, az járható út? SETCGADDR bcf PORTB,4 ; INSTR REG ;nop ;nop bcf PORTB,7 ; WRITE ;nop ;nop ANDLW B'00111111' ; CGRAM CHOPOFF IORLW B'01000000' ; CGRAM AREA CALL LCD_LB1_OUT RETURN CGRAMLOAD BSF PORTB,4 ; INSTR REG RS=portb,4 ;nop ;nop bcf PORTB,7 ; WRITE RW=portb,7 ;nop Üdv: Gábor
Miért kell valamit változtatnod ahhoz, hogy működjön D porton is az ékezetes betű? az BR.7 miatt?
Hello!
Igen így meg lehet oldani. De alapvetően a Write vonal portára kötését és vezérlését el lehet hagyni az *.inc file-okból, mert mindig L szinten vannak. Ugyan is nincs olvasás az LCD felől, csak írás van. Így azt felesleges működtetni és lefoglalni egy porta bitjét. De a Parsic sem kezeli az R/W vonalat. Az LB1/Help/"Connection diagram with 2 LCD modules" mintaáramköri részleten is látszik, hogy ez a vonal fixen a GND-n van. üdv! proli007
Kedves vilmosd!
Korábban már írtam, hogy én viszonylag "analóg agyú" vagyok, programozást, soha nem tanultam, viszont az analóg és digitális áramkörök között elég jól mozgok. Miért csinálták meg az RA.4-nél így? Megköszönném a választ. Üdv: Zsolt
Hogy miert terveztek igy ezt nehez kitalalni. A tervezok neha csinalnak szamunkra erthetetlen dolgokat is. Viszont ez a kimenet nagyon hasznos lehet egyes esetekbe. Pl direkt lehet hasznalni egy pici relet, egy plosz PNP tranyo segitsegevel ledhet hasznalni magasabb fesz (pl tapfesz ki-be kapcsolas) kapcsolasara. Viszont sokan megszivjak, akiknek nincs sok ismerete a PIC-ek lelkivilagaban. Melle meg problema, hogy a szimulatorban ugy latszik, jol mukodiki, viszont eloben (ha hianyzik a felhuzoellenallas ) rossz mukodesnek tunik. Pedig o jobban tudja a fizikat mint mi.
jdani és proli007!
Köszönöm a válaszokat. Ha jól értelmezem csekély tudásommal akkor az inc fileokat változtatás nélkül használhatom porttól függetlenül. A write lábat ezek szerint nem kell bekötni. Üdv: Gábor
Hello!
- Igen használhatod az inc file-okat, de az RS láb vezérlésénél, át kell írnod az inc file-ban a portát és a bitet, hogy ugyan azt vezérelje az inc, mint amit megadtál a Parsic-ban. - Már mint a Write lábat nem kell portára kötni, csak a GND-re. (inc-ben meg kihagyod azokat a sorokat, vagy "kipontosvesszőzöd" mint a nop-okat a szerző..) üdv! proli007
Kedves vilmosd!
Köszönöm válaszodat, én sem értettem, ezért kérdeztem. Egyébként nálam, egy FET-et vezérel IRLZ44N (mostmár működően), ami egy behúzómágnest működtet. Üdv: Zsolt
Köszönöm válaszod! Megpróbálom, remélem sikerülni fog.
Üdv: Gábor
Sziasztok!
Létezik olyan Parsic változat, amelyik ismeri a 16F1936-os mikit? Vagy hogy lehet kibővíteni a v3.56 tudását? fejesg
Köszi a választ; sajnálom hogy nem lehet a 16F1936-osat kezelni vele...
Tisztelt Urak! Építettem egy 2 szárnyú kapunyitót, amit úgy oldottam meg, hogy 3 relé végzi a motorok müködtetését egyik zárja mindkét szárnyat a másik 2 meg nyitja a két szárnyat. a Végállás kapcsolók szakítják a motorra menő tápot tehát a pic azt nem figyeli. Csináltam 1 progit, ami működik is szépen, 1 bajom van vele. Nyitás közben ha megnyomom a gombot akkor elkezd zárni, és fordítva is. Azt kellene megoldani, hogy ha épp nyit vagy zár és akkor nyomom meg a gombot akkor megálljon, és a következő nyomásra ellentétes irányban indúljon el. Van benne egy beállítható idejű időzítés ami a motortáp trafót kapcsolja. Valahogy azt kellene, hogy amég az időzítő megy és húz a táprelé addig ha jel érkezik akkor ne irányt fordítson, csak megáljon. Ha letelt az idő és akkor jön a jel akkor viszont irányt fordítson. Remélem érthető amit összekapartam itt. Egyszerüen nem jön az ihlet, hogy ezt hogyan oldjam meg. Bármi tanácsot, megoldást örömmel fogadnék.
Kedves dcsabi!
megakadtam egy probléma megoldása közben, kérlek segíts! Szóval , 400,000 kHz-et kellene megszámolnom f874-gyel, 4MHz-es rezonátorral . A bemeneti portom RA.4- azaz a 6-os láb. Sajnos csak 3000 pulzust számol , aztán téveszt, lassú a számlálás, nem detektálja a beérkező impulzusokat. Kérdésem, más portra kellene áttenni, (RB.0) , vagy egy INC. hivatkozást kellene írnom, vagy fogalmam sincs. Tudsz segíteni? : Sityi
Én ennek nem állnék neki 20Mhz alatt, akkor is minimálisan terhelném a PIC-t...És csak egy timer modult használnék...
Aztán a bemenetre tennék egy 10-es TTL osztót (Pl:74HCT90). Esetleg jelformálást is végeznék...Stb...
Valahogy így gondoltad ??
Köszönöm válaszod!
Melyik bemenetet használjam a parsicban? RB.4-nél láttam alkalmazást ilyenre. Mit javasolsz? A 400,0 kHz az nem olyan sok, szerintem, hogy a PIC 874-es ne tudja megszámolni. Bár lehet, hogy rosszul tudom.....
Sziasztok!
Analóg bemenettel kapcsolatban lenne kérdésem. A bemeneteket hőmérséklet mérésére, illetve konkrétabban csak összehasonlítására használnám. A mérést NTK-val vagy PTK-val gondoltam kivitelezni. (mindig 0-100C közé esik, leggyakrabban kb 60-70C) Van kipróbált kapcsolásotok esetleg erre? (Magyarul, milyen ntk mekkora ellenállásal párban működik szépen?) Az összehasonlításnál az elég, ha 1-2C eltérést már észrevesz, pontosabbra nincs szükség. Aztán a másik fontos kérdés: melyik az a pic, amit ismer a Parsic és legalább 3 analóg bemenete van? Előre is köszi az infót!
Az alap elképzelés az, hogy az 5V tápról lejövök 470 Ohm-mal a bemenetig, majd a test és a bemenet közé lesz kötve egy 10K PTC. Így hőmérséklet emelkedésre szépen felmegy 5V körülre a bemenet, hidegben meg lefelé. A kérdés, hogy ekkora áramok elegek-e, vagy más értékekkel próbálkozzak?
3 helyet kell összehasonlítgatni különböző élethelyzetekben és annak megfelelően beavatkozni.
Szerintem 16F877 lesz az alap, azzal már dolgoztam. Fűtés szabályzás lesz belőle egy puffertartályos kazános, vizes kandallós rendszerben. Elég sok kritériumot kell teljesíteni, ezért a pic. (gyors felfűtés, maradékból puffer fűtés, kazán kihűléskor keringető tiltás a külső körön, stb) Hidraulikusan atombiztos lesz, tehát a vezérlés hibájából (fagyás, műszaki hiba) adódó veszélyeket teljesen kiküszöböli.
Hello!
Oké, de a végén, úgy is LM35 (vagy más) lesz, mert látni is akarod a hőmérsékleteket.. Ez 10mV/°C, így 100°C esetén 1V- lesz. Ha a tápfesz 5,12V, és ezt használod referenciának, akkor 10 bites AD mellett, 5mV lesz egy bit, ami fél fokot jelent.. üdv! proli007
Sot ha 2,56 volt Vref-et hasznal, akkor 1/4 C bontast er el. En MCP9700 vagy TC1047A erzekeloket hasznalok. -40-> 125 C kozott mukodokepes. Nulla foknal 500 mV a kimeno feszultseg. A szamitas menete:
val=ADval-200 // -50 C val=val/4 // atalakitas ADval -> C Innen mar csak a kijelzes es a komparalas kell hozza.
Hello!
Gondolom ezt nem nekem szántad.. üdv! proli007 |
Bejelentkezés
Hirdetés |