Fórum témák

» Több friss téma
Fórum
Keresés
Lapozás: OK   68 / 179
(#) icserny válasza HA5AWS hozzászólására (») Szept 5, 2011
Idézet:
„Ez eddig rendben, de hogy tudom pl. egy időzítő kimenetét hozzárendelni a WDT-hez?”
Ahhoz sehogy, de elég egy időzítővel kapcsolatos feltételhez kötni a CLRWDT utasítás kiadását. Pl. ha nincs engedélyezve az időzítő megszakítása, a kkor a programban bitvizsgálattal ellenőrizhető, hogy az időzítő megszakításkérő jelzőbitje bebillent-e már. Ha igen (mert lejárt az időzítés), akkor kikerülöd a CLRWDT-t, s akkor előbb-utóbb a watchdog időzítője is lejár, s jön a RESET.
Idézet:
„mi alapján döntöm el melyik részbe kell a Clrwdt?”
Próbálj utánanézni a Watchdog működésének, akkor minden világos lesz! Bővebben: Link
(#) HA5AWS válasza icserny hozzászólására (») Szept 5, 2011
Szia!
Ez eddig rendben, de hogy tudom pl. egy időzítő kimenetét hozzárendelni a WDT-hez. A programban a kontroller konfigurációnál bekapcsoltam a WDT-t, ugyan nem teszteltem, hogy így mit tesz a program de mi alpján döntöm el melyik részbe kell a Clrwdt?
Üdv: Gábor
(#) icserny válasza HA5AWS hozzászólására (») Szept 5, 2011
Ha nincs, akkor a Watchdog le van tiltva (nem használja a program). Ha viszont engedélyezed, akkor vigyázni kell, mert időzített bombaként ketyeg. Mindenütt, ahol hosszasan időzik a program (ha szerencséd van, akkor csak a főprogram végtelen ciklusában) rendszeresen ki kell adni a CLRWDT parancsot, máskülönben fejreáll a program (resetelődik az MCU). Ezt az utasítás neked kell beszúrni, s neked kell megtalálni, hogy hova kell.

Ha jól értettem, bizonyos esetekben direkt resetelni szeretnéd a mikrovezérlőt. Ha be van kapcsolva a Watchdog, akkor csak egy végtelen várakozó ciklusba kell irányítani a programot (pl. CIMKE: GOTO CIMKE), s a többit a Watchdog elvégzi.
(#) HA5AWS válasza dcsabi hozzászólására (») Szept 4, 2011
Szia!

Végig nyálaztam az egész forráskódot de sehol nincs Clrwdt utasítás. Ha ki akarom váltani a restet, mire ugorjak? Mint írtam a programozás teljesen sötét ló. Egy példával többre mennék, ha nem vagyok tolakodó.
Üdv: Gábor
(#) dcsabi válasza HA5AWS hozzászólására (») Szept 4, 2011
A proci alap beállításainál aktiváld a WDT-t, és ha nincs rá szükség, egy feltétellel mindig ugord át a Clrwdt utasítást. Pl: a PCF8583 példa felhasználásával.
(#) dcsabi válasza dolf hozzászólására (») Szept 4, 2011
Konkrétabban? ...Mechanikus forgó jeladóra gondolsz, amit esetleg menű és érték kezelésre, beadásra való?
Az one-shot modul és néhány kapu, és természetesen
ZV modul ennyi ha nyomógomb is van rajta, akkor azt is One-shot fogadja.
(#) dolf hozzászólása Szept 4, 2011
Üdv!
Programozót e valaki közületek Parsic-ba ugrokodos Decoder.
Ha igen akkor,hogyan?
Köszi!
(#) HA5AWS válasza dcsabi hozzászólására (») Szept 4, 2011
Szia!
Van egy áramköröm amiben elég sok minden ki be kapcsolható nyomógombokról. Szeretnék egy demo módot tenni, de amikor elindul előtte minden részét szeretném alaphelyzetbe hozni, hogy ténylegesen azt csinálja amit szeretnék. Ez a demó mód időzítésre indul, nem gombnyomásra ezért kellene a soft reset. A WDT is jó de azt hol állítom be?
Gábor
(#) dcsabi válasza HA5AWS hozzászólására (») Szept 4, 2011
Igen az m0.0 az olyan mint a s0.0 , s0.1...annak nevezed aminek akarod.
Nem tudom miért van szükséged, ilyen fajta resetre?
Mi a célod pontosan ezzel?
Az PIC-nek van egy reset lába ezt egy nyomógombbal simán lehet nyomkodni. Programból meg valamelyik kimenet kapcsolhatja esetleg egy kondi vagy egyéb segítségével.
A WDT miért nem jó?
(#) HA5AWS válasza dcsabi hozzászólására (») Szept 3, 2011
Szia!
Köszönöm a választ. Megpróbálok valamit kiokoskodni, de az assamblyvel sok minden sötét. Abban a .inc fileban amit küldtél még csak értem, hogy hogyan írom be az ugrást, de nem tiszta, hol hivatkozik a bit számra amit írtál.
; If M0.0 Is High, call the SetClock-subroutine

banksel a0
btfss a0,0
goto noSetClock

call PCF8583SetClock
Az M0.0 gondolom megjegyzés ha ezt átírom még nem vagyok a célnál. Gondolom a goto PCF... sornál kellene megadjam a programom elejét. Például az járható-e, hogy ide a a system_init labelt állítom be? Ha nagyon nagy butaságokat írtam bocsásd meg.
Üdv: Gábor
(#) t_oszi válasza dcsabi hozzászólására (») Szept 2, 2011
Jól látom, hogy a két fájl megegyezik?
(#) t_oszi válasza dcsabi hozzászólására (») Szept 2, 2011
Oké, mindjárt megnézem. A portcímek a 877 lábkiosztását követik az enyémen.
(#) dcsabi válasza t_oszi hozzászólására (») Szept 2, 2011
Így talán menni is fog...Ellenőrizd, mi a különbség!
Esetleg ellenőrizd a RA portot 6-7 nem létezik, helyette írj másikat akár RC.0...

UART2.PIC
    
(#) t_oszi hozzászólása Szept 2, 2011
Itt mind két BV tartalma kikerül a Tx(RC.6) kimenetre? Szimulálás közben ki lehet íratni a kimeneti változó tartalmát?

UART_TX.PIC
    
(#) proba válasza CoderKevin hozzászólására (») Szept 2, 2011
Esetleg ha a frekimérőd alapján csak három kimenőjel sorozatot generálnál?
1 normális fordulatszám
2 Gyorsan forog
3 lassan forog
Ha egyébként nem szabályoz, csak tilt akkor ez elég lehet.
(#) CoderKevin válasza imix77 hozzászólására (») Szept 2, 2011
Én nem tudok róla. De a saját helpje elég jó még egy internetes fordítóval is.
(#) imix77 válasza CoderKevin hozzászólására (») Szept 2, 2011
A program hoz valami féle magyar nyelvü leírás létezik?
(#) CoderKevin válasza proli007 hozzászólására (») Szept 2, 2011
Idézet:
„Ez azért nem ilyen egyszerű. Nem egy szám érkezik be, hanem egy időegység alatt mért impulzus számot kellene csökkenteni.”


Így van. Próbálkoztom a feltöltött kép alapján megváltoztatni az időegységet, de abba képtelenség beavatkozni, vagy esetleg számlálókkal de akkor még 2ms-os impulzusokkal is lassú lesz az egész... Vagy próbáltam impulzus bemenetet, ez egy byte adatot ad és azzal számolgatni de nem volt stabil.

Vagy a frekvenciamérős megoldással (csatolt kép) ami nagyon stabilan mér, de kimeneti jeleket nem tudtam generálni belőle...

szerk.: Minden x-edik jel kihagyása csak akkor működne ha minden 2.ról lenne szó, más esetben nem jó... :S

freq.JPG
    
(#) dcsabi válasza HA5AWS hozzászólására (») Szept 2, 2011
Az a nyomógomb amit "képzeletben" a program egy bizonyos állapota is előidézhet.(?) Parsic-ban ez akár egy ÉS kapu kimenete. Ennek van egy bit száma Pl: S0.4 ehhez a bithez rendeled az INclude részletben a resetet, ami adott esetben szerintem a WDT is lehet.
Ehhez csak pár sort kell írni... Példa (#224537)hozzászólás (MAIN.inc) file... Alakítsd át a CLRWDT utasításhoz. Akár a nyomógombbal is tesztelheted a valóságban. Pl: csak akkor aktíválja a program a WDT-t, ha lenyomod a gombot...
(#) HA5AWS válasza proli007 hozzászólására (») Szept 2, 2011
Köszönöm!
Ez a része nekem nem fog menni, a programba még csak berajzolgatok, de az assambly nem az én világom. Programból szeretném kiváltani a resetet hasonlóan mintha megnyomnék egy gombot.
Üdv: Gábor
(#) t_oszi válasza dcsabi hozzászólására (») Szept 1, 2011
Értem. Tehát mindenképpen kell az UART. Oké! Megtanuljuk. Ja, és megnézzük (#271404).
Kösz!
(#) dcsabi válasza t_oszi hozzászólására (») Szept 1, 2011
A Topic elején az UART kommunikáció támához hasonló példát tettem fel ...(#271404)
(#) kaqkk válasza proli007 hozzászólására (») Szept 1, 2011
Igazad van ! Csak rápillantottam a képre és ez volt az első ötlet :bummafejbe:
(#) t_oszi hozzászólása Szept 1, 2011
BV elemmel csinálok bit->byte átalakítást. A byte adatot szeretném átvinni egy másik PIC-re.
Pl. 1-es PIC 8 bemenete átalakul bytra. A 2-es PIC-en szeretném ezt a byte adatot átalakítani 8 bitre. Ezt hogyan?
Kösz!
(#) proli007 válasza HA5AWS hozzászólására (») Szept 1, 2011
Hello!
Egy include file-al a program elejére ugorhatsz. Vagy programszervezéssel eleve úgy építed fel a programot.
üdv! proli007
(#) proli007 válasza kaqkk hozzászólására (») Szept 1, 2011
Hello!
Ez azért nem ilyen egyszerű. Nem egy szám érkezik be, hanem egy időegység alatt mért impulzus számot kellene csökkenteni. Magyarul fout=fin/x frekvencia konverziót kellene végrehajtani, kb. mint ahogy egy PLL teszi. Mondjuk pld. minden 5. impulzust el lehetne "sumákolni", ekkor 20%-ot csökken a freki, csak akkor éppen a kimenti jel nem lesz egyenletes ütemű.
üdv! proli007
(#) t_oszi válasza qvasz2 hozzászólására (») Szept 1, 2011
Azt sajnos én is tudom. De hátha valami lelkes amatőr...
(#) HA5AWS hozzászólása Szept 1, 2011
Sziasztok!
A PARSIC-ban van-e lehetőség arra, hogy szoftveresen végrehajtsunk resetet?
Üdv: Gábor
(#) kaqkk válasza CoderKevin hozzászólására (») Szept 1, 2011
A bejövő jelek számát oszd el a megfelelő értékkel ha mondjuk 5* öse a fordulatszám akkor 5 el oszd a jelet

5.PIC
    
(#) qvasz2 válasza t_oszi hozzászólására (») Szept 1, 2011
Picit le vagy maradva. Évek óta leálltak a fejlesztéssel, már a program sem elérhető a készítője oldalán.
Következő: »»   68 / 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