Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Ljudi molim vas pomozite mi oko citanja podataka sa paralelnog porta

[es] :: C/C++ programiranje :: Ljudi molim vas pomozite mi oko citanja podataka sa paralelnog porta

[ Pregleda: 2840 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

menindria
jovan jeremic

Član broj: 65348
Poruke: 5
213.244.197.*



Profil

icon Ljudi molim vas pomozite mi oko citanja podataka sa paralelnog porta27.04.2007. u 21:40 - pre 206 meseci

Potrebna mi je pomoc oko citanja podataka sa paralelnog porta u c++.
Pretrazio sam ceo internet, neke stvari sam video na ovom forumu, ali ni to mi nije pomoglo,
pronasao sam da se za to koriste funkcije _inp(),_inpw(),inportb()...Cak sam nasao i gotove sors kodove
ali mi nije pomoglo.Problem je u tome sto kompajliram program,sve je ok i kada krene sa izvrsavanje on
zakove u nekoj od ovih funkcija i otvori mi neki asemblerski kod koji izgleda ovako:

_inp proc

xor eax,eax
mov dx,word ptr [esp + 4]
in al,dx //Ovde mi izbaci da je greska
ret

_inp endp

radim u c++ 2003.net, probao sam i u sestici i u 2005 i uvek isto izbacuje.
Radim pod XP ako to ima neke veze.
unapred hvala.
jova
 
Odgovor na temu

Buffy
Stanko Culaja
Sipovo, BiH

Član broj: 45310
Poruke: 312
*.teol.net.



Profil

icon Re: Ljudi molim vas pomozite mi oko citanja podataka sa paralelnog porta27.04.2007. u 22:04 - pre 206 meseci
stvar je u tome sto windows xp ne dozvoljava da citas i pises direktno na lpt port( i bilo koji port).
Potrebno je da napravis driver ili da koristis vec gotov.
Ja sam koristio neki driver, u obliku je dll-a, pa skini i pogledaj ovu arhivu:
http://culaja.googlepages.com/io_p_port-lib.zip
Pozdrav...
 
Odgovor na temu

menindria
jovan jeremic

Član broj: 65348
Poruke: 5
213.244.197.*



Profil

icon Re: Ljudi molim vas pomozite mi oko citanja podataka sa paralelnog porta27.04.2007. u 23:34 - pre 206 meseci
Prvo da ti se zahvalim Buffy-i.Ali sad vidim nov problem nisam nikad radio sa dll-om.Ako moze malo pojasnjenje oko toga
shvatio sam da trebam da includujem "io_p_port.h".
and link io_p_port.a library -- ovo ne razumem sta znaci,sta trebam da radim u vezi ovoga?




 
Odgovor na temu

savkic
Igor Savkić

Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: Ljudi molim vas pomozite mi oko citanja podataka sa paralelnog porta28.04.2007. u 21:14 - pre 206 meseci
> Potrebna mi je pomoc oko citanja podataka sa paralelnog porta u c++.
> Pretrazio sam ceo internet, neke stvari sam video na ovom forumu, ali ni to mi nije pomoglo,
> pronasao sam da se za to koriste funkcije _inp(),_inpw(),inportb()...Cak sam nasao i gotove sors kodove

Ja bih ti preporučio da koristiš preporučen način za rad sa paralelnim/serijskim portom. I zapravo je veoma jednostavno, CreateFile, ReadFile, WriteFile i još par funnkcija i to je sve.
 
Odgovor na temu

menindria
jovan jeremic

Član broj: 65348
Poruke: 5
*.vdial.verat.net.



Profil

icon Re: Ljudi molim vas pomozite mi oko citanja podataka sa paralelnog porta28.04.2007. u 23:47 - pre 206 meseci
Pogledaj ovako nesto, problem je kada dodje do funkcije _inpd(), tu mi izbaci gresku.
Pretpostavljam da si procitao ono sto je Buffy rekao, mislim da je u pravu.
Ako ti nije problem pogledaj ovaj sors kod pa mi reci sta mislis, on je za seriski ali sve jedno.
Kada ga kompajliras radi sve ok, ali kada ga pokrenes zakove u funkciji _inpd().
Ako ti nije problem napisi ovako nesto prosto.
Unapred hvala.


Code:

#include<iostream>
#include<cstdlib>
#include<conio.h>
#include<windows.h>
using namespace std;



#define BUFFER_LENGHT 100

char bafer[BUFFER_LENGHT];
DCB dcb;
HANDLE idComDev;


int setup()
{
    int status;

    char ComPort[]="COM1";
    char ComParam[]="COM1:1200,n,8,1";
    idComDev=CreateFile(ComPort,GENERIC_READ | GENERIC_READ,0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
    status=SetupComm(idComDev,BUFFER_LENGHT,BUFFER_LENGHT);
    if(status==0)
        return 0;
    status=BuildCommDCB(ComParam,&dcb);
    if(status==0)
        return 0;
    status=SetCommState(idComDev,&dcb);
    if(status==0)
        return 0;
    return 1;
}


int read1(int broj_bajtova)
{
    int i;
    if(broj_bajtova>0)
    {
        for(i=0;i<broj_bajtova;i++)
            bafer[i]=_inpd((unsigned short)idComDev);
        return 1;
    }
    return 0;
}

void close1()
{
    CloseHandle(idComDev);
}

main()
{
    int n=8,i;
    if(setup())
        read1(8);
    for(i=0;i<n;i++)
        cout<<bafer;
    cin>>n;
    return 0;
}


[Shadowed: dodati [code] tagovi.]

[Ovu poruku je menjao Shadowed dana 29.04.2007. u 01:31 GMT+1]
 
Odgovor na temu

Seme
Miroslav Bozic
Nis
Elektronski fakultet
Nis, Zajecar

Član broj: 43158
Poruke: 390
*.dynamic.sbb.co.yu.

Sajt: www.ebuyelektronika.co.cc


+5 Profil

icon Re: Ljudi molim vas pomozite mi oko citanja podataka sa paralelnog porta28.04.2007. u 23:49 - pre 206 meseci
Ja citam i pise podatke na portu sa Inpout32. Skini Inpou32.dll i Inpout32.lib sa neta. Dll ucitavas na sledeci nacin:
Kreiraj okvir aplikacije, recimo dialog based. Zatim iz Project>>Settings u tabu link u edit box - u "Object" / Library Modules" kao lib fajl unesi Inpout32.lib
Zatim je potrebno da definises adrese data, status i control porta

#define DATA 0x378
#define STATUS 0x379
#define CONTROL 0x37a

Jos je ostalo da definises funkcije koje imas u dll - u

Funkcija za citanje podataka sa odredjenog porta je :
short _stdcall Inp32(short portaddress);

dok je funkcija za upis:
void _stdcall Out32(short portaddress, short data);

Probaj pa javi sta si napravio.

Pozdrav
 
Odgovor na temu

menindria
jovan jeremic

Član broj: 65348
Poruke: 5
*.vdial.verat.net.



Profil

icon Re: Ljudi molim vas pomozite mi oko citanja podataka sa paralelnog porta29.04.2007. u 01:15 - pre 206 meseci
Hvala vam svima, evo posle malo mucenja sam uspeo.
Hvala Hvala Hvala Hvala Hvala Hvala Hvala Hvala Hvala Hvala Hvala Hvala Hvala Hvala Hvala Hvala Hvala Hvala Hvala
Pozdrav valjda cu i ja vama neki put pomoci nesto.
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12851



+4784 Profil

icon Re: Ljudi molim vas pomozite mi oko citanja podataka sa paralelnog porta29.04.2007. u 01:38 - pre 206 meseci
Pomoci ce vec i ako kazes kako si resio.
 
Odgovor na temu

menindria
jovan jeremic

Član broj: 65348
Poruke: 5
213.244.197.*



Profil

icon Re: Ljudi molim vas pomozite mi oko citanja podataka sa paralelnog porta29.04.2007. u 19:19 - pre 206 meseci
Moze opet mala pomoc oko pravljenja nekog tajmera u c++?
 
Odgovor na temu

Seme
Miroslav Bozic
Nis
Elektronski fakultet
Nis, Zajecar

Član broj: 43158
Poruke: 390
*.dynamic.sbb.co.yu.

Sajt: www.ebuyelektronika.co.cc


+5 Profil

icon Re: Ljudi molim vas pomozite mi oko citanja podataka sa paralelnog porta29.04.2007. u 19:38 - pre 206 meseci
Sad ga pretera!!!
Imas gomilu primera na Planet_source_code, codeguru, codeproject pa provali.
Na kraju krajeva cemu ti sluzi net.
Ako imas neki konkretan problem onda se javi.
 
Odgovor na temu

[es] :: C/C++ programiranje :: Ljudi molim vas pomozite mi oko citanja podataka sa paralelnog porta

[ Pregleda: 2840 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.