/ Forside / Teknologi / Udvikling / C/C++ / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
C/C++
#NavnPoint
BertelBra.. 2425
pmbruun 695
Master_of.. 501
jdjespers.. 500
kyllekylle 500
Bech_bb 500
scootergr.. 300
gibson 300
molokyle 287
10  strarup 270
c++ /dev/ttyS0 input-output
Fra : Carsten


Dato : 10-02-04 22:55

Hej NG
jeg har fundet denne stump kode på nettet og den fungere OK
jeg har skiftet file example.txt ud med /dev/ttyS0 og jeg får output
på "com1" som er forbundet til en LapTop med et terminal emulerings program
og får selvfølgelig output her!
men hvad skal der til for at få input fra "com1" således at hver gang jeg
taster CTRL på LT kommer der en ny linje fra c++ programmet ??

C++ "NB" Carsten


#include <iostream>
#include <fstream>
using namespace std;

int main()
{
// open file ``example.dat'' for reading and writing
filebuf buffer;
ostream output(&buffer);
istream input(&buffer);
buffer.open ("example.txt", ios::in | ios::out | ios::trunc);

for (int i=1; i<=4; i++) {
// write one line
output << i << ". line" << endl;

// print all file contents
input.seekg(0); // seek to the beginning
char c;
while (input.get(c)) {
cout.put(c);
}
cout << endl;
input.clear(); // clear eofbit and failbit
}
}


 
 
Byrial Jensen (12-02-2004)
Kommentar
Fra : Byrial Jensen


Dato : 12-02-04 20:54

Carsten wrote:
> Hej NG
> jeg har fundet denne stump kode på nettet og den fungere OK
> jeg har skiftet file example.txt ud med /dev/ttyS0 og jeg får output
> på "com1" som er forbundet til en LapTop med et terminal emulerings program
> og får selvfølgelig output her!
> men hvad skal der til for at få input fra "com1" således at hver gang jeg
> taster CTRL på LT kommer der en ny linje fra c++ programmet ??

Du åbner /dev/ttyS0 for læsning og læser i princippet input på samme
måde som fra fil. Hvis du bruger Linux, kan du kigge på Serial
Programming HOWTO som har et programeksempel i C.


Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408919
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste