Avatar billede acid-head Nybegynder
14. marts 2007 - 18:55 Der er 3 kommentarer og
1 løsning

AT commands med /dev/rfcomm0

Hej eksperter..

Jeg skal lave et program som kommunikerer med en mobil-telefon via AT-kommandoer over bluetooth.. Telefonen er tilsluttet og er at finde under /dev/rfcomm0

Mit spørgsmål går på, hvorledes jeg skal sende kommandoer og modtage response - hvad vil I forslå?

Skal jeg bare åbne /dev/rfcomm0 som en almindelig fil via fstream?

Håber I har nogle forslag/idéer :)

MVH
Jeppe Stampe
Avatar billede bertelbrander Novice
14. marts 2007 - 19:38 #1
Jeg ved ikke om det vil virke med fstream, men der er en god chance.
Ellers prøv med fopen eller open.
Avatar billede acid-head Nybegynder
16. marts 2007 - 15:40 #2
Jeg har været ved at kigge lidt på kildekoden til kmobiletools, som er et KDE-program til at håndtere en telefons SMS'er osv. Programmet snakker også med telefonen via AT-kommandoer som om telefonen var et modem..

Inden telefonen initialiseres med en AT kommando køres følgende funktion setupModem().

void Device::setupModem()
{
  struct termios newtio;
  #define baudrate B115200

  #define rtscts 1
  bzero(&newtio, sizeof(newtio));
  newtio.c_cflag = CRTSCTS | CS8 | CLOCAL | CREAD | O_NDELAY;
  cfsetispeed(&newtio,Config->getBaudRate() );
  cfsetospeed(&newtio,Config->getBaudRate() );

  if (! rtscts)
  newtio.c_cflag &= ~CRTSCTS;
  newtio.c_iflag = IGNPAR;
  newtio.c_oflag = 0;
  newtio.c_lflag = 0;
  newtio.c_cc[VTIME]    = 1;
  newtio.c_cc[VMIN]    = 0;
  tcflush(modem, TCIOFLUSH);
  tcsetattr(modem,TCSANOW,&newtio);
}

For det første har jeg ikke overblik over hvad koden gør, og for det andet vil jeg gerne vide om det er nødvendigt at sætte modemmet op på denne måde først..?

Hvis jeg laver et simpelt program med open(), read() og write() får jeg ikke noget response fra telefonen/modemet, før jeg kører kmobiletools, så noget kunne tyde på at en sådan modem-opsætning er nødvendig..

Jeg har dog ikke kunnet finde noget dokumentation om hvorledes man skaber korrekt kontakt til et modem og lignende..
Avatar billede bertelbrander Novice
16. marts 2007 - 21:31 #3
Du skal sandsynligvis foretage nogen form for opsætning af porten for at få hul igennem.
Det er lidt svært at fortælle præcist hvad, så det bedste er nok at forsøge dig frem.
Avatar billede acid-head Nybegynder
22. marts 2007 - 18:30 #4
Jeg må igang med noget mere googling :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester