"PeterPirat" <PeterPirat.news@kandu.dk> wrote in message
news:mEkn7.9937$sk1.362981@news010.worldonline.dk...
> Jeg skal hente data fra en vægt..
> Der kommer masser af data fra vægten så det er ikke der problemer
> ligger...
> Men...
> Hvordan får jeg det ind i c++?
> Dette har jeg at arbejde med :
>
> #include <stdio.h>
> #include <stdlib.h>
> #include <dos.h>
> #include <conio.h>
> #define PADR 0x3f8 //Base adresse for COM1
> serielport.
>
> void ser_init()
> {
> _outp(PADR+3, 0x80); //Sæt DLA-Bit (=> 3f8 & 3f9:
> Divisor)
> _outp(PADR, 0x18); //Divisor=0018H ==>
> _outp(PADR+1, 0x00); // 4800 b/s.
> _outp(PADR+3, 0x03); //Reset DLAB og sæt N 8 1.
> }
>
> int recv_ch()
> { //Læs LinieStatusRegister og
> while (!(_inp(PADR+5) & 0x01)); // vent til tegn er parat (bit
> 0).
> return(_inp(PADR)); //Hent det så og returner det.
> }
>
> void skrivud(int tegn)
> {
> putch(tegn); //Skriv tegn på skærm.
> }
>
> void main()
> {
> int tegn;
> ser_init();
> do
> {
> tegn = recv_ch(); //Læs et tegn fra seriel-porten
> skrivud(tegn); // og skriv det.
> }
> while(tegn != 0x1b);
> }
>
> Jeg kender desværre ikke :
> _outp(PADR+3, 0x80); //Sæt DLA-Bit (=> 3f8 & 3f9:
> Divisor)
> _outp(PADR, 0x18); //Divisor=0018H ==>
> _outp(PADR+1, 0x00); // 4800 b/s.
> _outp(PADR+3, 0x03); //Reset DLAB og sæt N 8 1.
>
> Hvor finder jeg dokumentation om dette ???
> Jeg har ledt på msdn.microsoft.com, men det er ret uoverskueligt(eller
> jeg kan ikke finde det)
>
> Nogen der kan hjælpe ???
>
> /Erik
>
>
> --
> Leveret af:
>
http://www.kandu.dk/
> "Vejen til en hurtig løsning"
>
Ralph Brown har en masse informationer om div. porte osv.:
http://www.cs.cmu.edu/afs/cs/user/ralf/pub/WWW/files.html
venlig hilsen
Michael Rasmussen