You are here

impulzusgenerátor software LPT portra kerestetik

4 posts / 0 new
Last post
bluemoon
bluemoon picture

Szevasztok,

elnézést, hogy itt indítottam a topicot, de nem tudom hová tenni, mivel software-t keresek. Uganis, szükségem volna egy impulzusgenerátorra amely az LPT porton impulzus sorozatokat tud kikűlden, megadott számban és frekvenciában. Egy gép fejlesztésében kelle mint kontroll eszköz mivel egy optikus encoderröl kapja az MCU a jelet és az a gyanúm, hogy kihagy, nem az encoder, hanem a prociba írt program valamelyik hurokban elidőzik és "elfelejti" számolni az impulzusokat. Ezt bizonyítottuk is digitális szkópon és naggyából közel van a megoldás, de az a gond, hogy a az egész cuccot a géphez kell vinni ami elég macerás. Azt is lehetne, hogy egy másik MCU-val megépítünk egy ilyen generátort, de ha netán valakinek van ilyen programja, vagy a netten tudja, hogy honnen lehetne letölteni, sokat segítene. Igy meg tudnám adni az impulzusok számát meg az egymást követö sebességet, amit utánna a fejlesztendő elektronika kijelzőjén eggyeztetni tudnám. Most egy lézeres fordulat-impulzusszámérővel ellnőrízhető, de ettöl mégis pontossabb valami kellene.

Előre is köszönöm a segíséget

P.S.

A net-ről letöltöttem a PULSEPAR programot ami a leírás szerint pont ezt csinálná, de sajnos nem fut az XP-n, és most nincs időm egy másik gépet konfiguráni DOS-ra. Nem megy a RUN command-ból sem

Comments
Jaca
Jaca picture
****

Szia!

Talán Qbasic-ben találsz ilyesmi programot, abból lehet exe-t csinálni, és fut xp alatt is.
Pontosan milyen frekvenciával és milyen pontossággal kell impulzusokat küldeni?
Volt régen egy LPT-s infratávirányító rögzítő-visszajátszó progi, ami szintén az LPT-re kötött külső órajelből állította elő az impulzusokat.

Üdv: Jácint

0

SzG
SzG picture

Szerintem egyszerűbb ha te magad írod meg a kódot valamilyen script nyelven. Mondjuk python-ban. Kis tanulás után az alapok könnyen elsajátíthatók.

A python LPT programozásáról pedig itt:
python paralell

>>> import parallel
>>> p = parallel.Parallel() # open LPT1
>>> p.setData(0x55)

Gondolom a 0x55 az a kiküldeni kívánt byte, hexában.

0

bluemoon
bluemoon picture

Szevasztok,

kössz a gyors válaszokat. Az impulzus "sűrűség" kb 100 impulzus/sec de olyan 1000/sec lenne a maximum. Mivel a software az MCU-ba már meg van írva nem akartam még egy programmal időt veszíteni gondolván, hogy talán van valakinek vagy a gépén vagy a netten egy ilyen. Mivel még egy ilyen szerkezetet nem csinálok, saját részemre van, nem is kell (soha se mond soha)majd a jövőben, az ilyen step motoros enkoderes (az encoder nem a step motort "vallatja", hanem egy egyenárramú motor tengelyének fordulatszáma fügvényében a step motor kíséri) szerkezetek készítése nincs a tervemben. Az első beindítás után látszólag gyanúsan szépen működött, de folyamatos működtetés alkalmával kiderűlt, hogy a step motor nem kíséri pontossan. Először az MCU sschmit trigger bemenetének lomhaságára gyanítottam, de amikor a bejövő impulzusokat 1/1 egy másik portra kikűldtem kiderűlt, hogy a schmit triggernek semmi köze hozzá, gyönyörűen végzi dolgát, de az LCD kijelzőre való kiírás alkalmávan egy fraktálnyi időt veszit és ekkor lép fel az amnézia. Amikor a kiírást a leállaás után leolvasom akor minden OK, de ha működés közben akkor már baj. A megoldás közel van, de az állandó ide/oda ki/be kötés nagyon időigényes. Az sem kizárt, ha nem jutok dűllöre vele, hogy mégis egy PIC-re szerkesztek egy ilyesmit de csak abban az esetben, ha nem találok valami más megoldást.
Kössz és kellemes 7végét

0