Fórum témák
» Több friss téma |
Fórum
Pont így kezdtem.
![]() De a valóságban ez nem működik. Idézet: „Egy számomra érthetetlen jelenség történik. Egy mono flop értékét adom meg a programban, de a helyzet az, hogy egyáltalán nem az értéknek megfelelő hosszúságú ms érték megy ki a kimenetre. Mellékletben a program. A program a szimuláció alkalmával tökéletesen működik. Lefordítva a programot és PIC-be töltve tapasztalom ezt a problémát... És nem értem, hogy miért.” Amit ajánlottál korábban, a két számlálós módszer, az tökéletesen működik. A hozzászólás módosítva: Júl 2, 2016
Lehetni lehet, de így nem számol lefelé. OS25 nem lehet D-Shot, csak szimpla shot, akkor működik lefelé is.
Nézd Zoli ! Ilyen egyszerű is lehet .
Prell mentesítésnek, indításnak, bitleragadás ellen nagyon jó az egyeslövés, de ezt nem a nyomógombos részre értettem hanem a felső monoflop helyett tettem egyet és azóta nem villan be bekapcsoláskor ....
Itt a kimeneten nem 20ms lesz, ha 20ms-ot állítasz, hanem 400ms. Az IF2 DAT bemenetét át kell írni ZV1-re. Az egyeslövés nyomógombhoz nem jó. Olyan, mintha ott se lenne. Oda monoflop-ot szoktam használni.
Köszi!
A hiba javítva , még mindig nem vagy hajlandó használni az egyeslövést !
A hozzászólás módosítva: Jún 28, 2016
Jellemzően, Te megint olyan irányból közelíted a problémát, ami nekem eszembe sem jutna. Itt nyilvánosan is kifejezem irántad a tiszteletemet. Lassan körvonalazódik a dolog. Gyakorlatilag egy programozható monostabil. 20ms a legkisebb és 1000ms a legnagyobb érték, amit nyomógombokkal lehet beállítani, majd egy start gombbal indítani. A kikapcsolás után a következő bekapcsolás alkalmával a legutóbbi érték töltődik vissza. (itt van egy pici szépséghiba, a visszakapcsolás alkalmával egy rövid időre - szerintem 20ms - felvillan a kimenet.)
Köszönöm!
Ezt alakítom, ez jó lehet!!!
Nem teljesen értem mit szeretnél csinálni de ez a picfájl közelebb áll a monostabilos dologhoz mint az előző
Ezt számold át a megfelelő időzítésekre , reméljük jó lesz
A hozzászólás módosítva: Jún 27, 2016
No de ekkora eltérés a szimuláció és a valós között nem lehet. Ez nem logikus.
A szimulációban minden szép .
De akkor a szimulációban miért tökéletes?
Itt csak két monoflop van. Az egyik az etalon, a másik a DAT. De így is ugyanolyan az időzítés, mintha tele lenne mono flop-okkal. Nem értem.
Akkor próbálkozz nyugodtan , én soha nem használok monoflopot mindent egy időzítőből (a lehető legkisebb ) kapuzok ki , de még így is pontatlan a dolog mert amíg időzít nem csinál semmit , majd csinál valamit (idő) és újra időzít ... A te esetedben ? a program ráfut az egyik monoflopra - ---- majd a másikra ---- majd a harmadikra ---- és háromszor nem csinál semmit csak az idő telik-múlik
Áh, azért ennyit nem. Ha órát csinálunk, akkor esetleg egy fél óra alatt talán néhány másodperc. De itt eleve másodpercekről van szó.
De akár még többet is ! Tudod mit szívtam az időzítésekkel a parsicban ?
A hozzászólás módosítva: Jún 27, 2016
De 3 másodpercet nem téved.
de mert a parsic nop utasításokkal csinálja az időzítést és amíg valahol időzít megáll a program , a monoflopok idejét is számlálókkal csináld közelebb leszel a valósághoz
A hozzászólás módosítva: Jún 27, 2016
Nem. Ekkora eltérést nem okoz. Kb. 4000-es értéknél egyezik a két monoflop ideje... De nem csak mono floppal, hanem akár timer-el is ugyan ez a helyzet. Ha kiveszem a sok időzítést, akkor sem változik.
A hozzászólás módosítva: Jún 27, 2016
Túl sok az időzítés a programban, próbálj meg egy időzítőt használni és számlálókkal "kikapuzni" mindenhol a megfelelő időket .
Egy számomra érthetetlen jelenség történik. Egy mono flop értékét adom meg a programban, de a helyzet az, hogy egyáltalán nem az értéknek megfelelő hosszúságú ms érték megy ki a kimenetre. (Állítsd az értéket a fel-le segtségével 1000-re. A start segítségével indítható. )
Mellékletben a program. A program a szimuláció alkalmával tökéletesen működik. Lefordítva a programot és PIC-be töltve tapasztalom ezt a problémát... És nem értem, hogy miért. Netán volna ötleted? A hozzászólás módosítva: Jún 27, 2016
Köszönöm mindkettőtöknek a választ! Ki fogom próbálni. A timert azért állítottam ennyire, mert sok adatot küldött, és nem volt átlátható.
Szia!
Itt egy egyszerű megoldás. Csomag: ADC0, "soremelés/kocsi-vissza", ADC1, "soremelés/kocsi-vissza" A soremelés és kocsi vissza, sztenderd nyomtató parancsok (0D,0A). Ja és a timer sokkal kevesebb is lehet. Üdv: Zsolt A hozzászólás módosítva: Jún 15, 2016
A PC-s program csak egy megjelenítõ program. Bármit meg tud jeleníteni ami a PIC-töl érkezik! Ezeket a vezérlõ karaktereket el tudnád magyarázni, hogyan tudom megoldani?
Ha ennek mindenképpen a PIC felől várod a megoldását, akkor próbáld egy kicsit megformázni a "távíratot". A PC-s programodat nem ismerem, de lehetséges, hogy vezérlő karaktereket (13-- enter) teszel az adatok közé, vagy szünet "kódot" lásd ASCII tábla...Lehet a számokat ASCII kódban is küldeni...stb... Mit is vár valójában a PC-s progi?
A hozzászólás módosítva: Jún 14, 2016
Üdv!
Szeretnék kérni egy kis segítséget adat küldésben. Csinálok egy eszközt, ami 3 analóg jel alapján kapcsolgat 3 relét, eddig nincs is problémám. Elég egyszerű az áramkör, és a program is. Beállításhoz kellene látnom az analóg értékeket. Mivel nagyon kicsi helyre kell bezsúfolnom arra gondoltam elküldöm PC fele az adatot és ott megjelenítem docklightal. Ez működik is szépen, de itt jön a kérdés, Hogyan lehet elválasztani egymástól az adatokat? Így egymás után rakja be egy ablakba, és nem túl átlátható. Valahogy meg lehet oldani, hogy új sorba tegyen minden küldött adat csomagot? Előre is köszönöm a segítséget! UI: Fel rakom a progit, amivel próbálkozok az adatküldéssel. 2 db analóg jelet szeretnék továbbítani.
Egy eepromba egy számláló értékét mentjük, minden számlálónak külön eeprom box kell
( aktuális még a dolog ??) |
Bejelentkezés
Hirdetés |




