Dobrý den přátelé,
potřebuji naprogramovat jednoduchou utilitu, která slouží jako buffer pro port COM - RS232. Kdo by měl zájem toto pro mě naprogramovat, zašlete mi prosím nabídku na karel.machala@seznam.cz, tel. 608717767
Takže:
připojil jsem si k PC přes mikrocontroler Atmel do portu COM1 další klasickou počítačovou klávesnici. Cílem bylo získat cca 100 samostatných programovatelných kláves. K programování maker používám program vTask Studio (http://www.studna.cz/vtask-studio-p-8669.html).
Celá utilita by měla být nepřetržitě spuštěna a měla by ukládat do bufferu scankód stlačené klávesy a aktuální pozici myši x a y. Program Vtask si vyvolá buffer, kde si převezne scankód a pozici x,y a provede naprogramovanou akci. V případě že buffer je prázdný, tak buffer čeká dokud není stlačena klávesa, načež hodnoty předává a vrací se zpět do vTask provést akci.
Samotný program vTask sice umí číst data z COM portu, ale aby např. sekundu, nebo 10 sekund četl sérii scankódů a pak prováděl definované činnosti je nevhodné. Je potřeba, aby po stlačení klávesy došlo ihned bez prodlevy k vykonání činnosti. Což samozřejmě jak popisuji dříve je zabezpečeno tím, že vTask volá buffer a ten vždy předává slovo zpět vTasku až s hodnotami
Příklad:
Nadefinujeme jednu klávesu jako "ZIP" a její scankód přiřadíme v programu vTask k provádění .zip komprese. Myší si najedeme na obrazovce na soubor, stiskneme klávesu "ZIP" a program VTask ihned převezne scan kód stlačené klávesy (ZIP), pozici x,y myši a vTask začne provádět kompresi daného souboru. Poté co dokončí kompresi, celá procedura se opakuje - VTask si sám vyvolá buffer a načte si další povely kláves a pozice myši x,y. Pokud je buffer prázdný, buffer čeká, stejně tak Vtask čeká až mu buffer znovu předá slovo.
Nejsem žádný programátor, ani nevím jak by se hodnoty předávaly z bufferu do vTasku, ale z toho co mi připadá použitelné na vzájemnou komunikaci bufferu a vTasku vypisuji co umí:
-call DLL function
-Environment variable, klasické variable
-send command (př. WM_COMMAND)
-Windowa API Call
-případně si nainstalujte trial vezri, odkaz výše :)
Karel Machala
karel.machala@seznam.cz
Dobrý den přátelé,
potřebuji naprogramovat jednoduchou utilitu, která slouží jako buffer pro port COM - RS232. Kdo by měl zájem toto pro mě naprogramovat, zašlete mi prosím nabídku na karel.machala@seznam.cz, tel. 608717767
Takže:
připojil jsem si k PC přes mikrocontroler Atmel do portu COM1 další klasickou počítačovou klávesnici. Cílem bylo získat cca 100 samostatných programovatelných kláves. K programování maker používám program vTask Studio (http://www.studna.cz/vtask-studio-p-8669.html).
Celá utilita by měla být nepřetržitě spuštěna a měla by ukládat do bufferu scankód stlačené klávesy a aktuální pozici myši x a y. Program Vtask si vyvolá buffer, kde si převezne scankód a pozici x,y a provede naprogramovanou akci. V případě že buffer je prázdný, tak buffer čeká dokud není stlačena klávesa, načež hodnoty předává a vrací se zpět do vTask provést akci.
Samotný program vTask sice umí číst data z COM portu, ale aby např. sekundu, nebo 10 sekund četl sérii scankódů a pak prováděl definované činnosti je nevhodné. Je potřeba, aby po stlačení klávesy došlo ihned bez prodlevy k vykonání činnosti. Což samozřejmě jak popisuji dříve je zabezpečeno tím, že vTask volá buffer a ten vždy předává slovo zpět vTasku až s hodnotami
Příklad:
Nadefinujeme jednu klávesu jako "ZIP" a její scankód přiřadíme v programu vTask k provádění .zip komprese. Myší si najedeme na obrazovce na soubor, stiskneme klávesu "ZIP" a program VTask ihned převezne scan kód stlačené klávesy (ZIP), pozici x,y myši a vTask začne provádět kompresi daného souboru. Poté co dokončí kompresi, celá procedura se opakuje - VTask si sám vyvolá buffer a načte si další povely kláves a pozice myši x,y. Pokud je buffer prázdný, buffer čeká, stejně tak Vtask čeká až mu buffer znovu předá slovo.
Nejsem žádný programátor, ani nevím jak by se hodnoty předávaly z bufferu do vTasku, ale z toho co mi připadá použitelné na vzájemnou komunikaci bufferu a vTasku vypisuji co umí:
-call DLL function
-Environment variable, klasické variable
-send command (př. WM_COMMAND)
-Windowa API Call
-případně si nainstalujte trial vezri, odkaz výše :)
Karel Machala
karel.machala@seznam.cz
Citovat příspěvek