bin neugierig geworden und habe heute mal mein etwas betagteres M3830 an einen COM-port gehängt. alles wesentliche steht auf http://sigprak5.informatik.hu-berlin...eter/m3830.php beschrieben. es sind nicht mehr als 2 messungen pro sekunde machbar, und der code ist nur unter windows lauffähig (sollte aber unter linux auch ähnlich funktionieren). hier der code:

Code:
#include <stdio.h>
#include <windows.h>

#include <conio.h> // nur für getch. kein ansi-standard.

int main(void)
{
  HANDLE port;
  DCB dcb;
  char string[16];
  int x; 
  unsigned long dwNum;

  port=CreateFile("COM1",
                  GENERIC_READ | GENERIC_WRITE, 
                  0, 
                  NULL, 
                  OPEN_EXISTING, 
                  0, 
                  NULL);       // serielle Schnittstelle öffnen 

  GetCommState(port, &dcb);    // Konfiguration lesen 

  dcb.BaudRate = CBR_1200;     // 1200 Baud 
  dcb.ByteSize = 7;            // 7 Datenbits 
  dcb.Parity = 0;              // kein Paritätsbit 
  dcb.StopBits = TWOSTOPBITS;  // 2 Stoppbits 
  dcb.fBinary = TRUE; 
  dcb.fParity = 1; 
  dcb.fRtsControl = 0;         // RTS auf -12 Volt 
  dcb.fDtrControl = 1;         // DTR auf +12 Volt 

  SetCommState(port, &dcb);    // Konfiguration schreiben 

  do
  {
    WriteFile(port,"D",1,&dwNum,NULL);       // Zeichen »D« ans Messgerät senden 
    x=0;

    do
    {
      ReadFile(port,&string[x],1,&dwNum,NULL);
    }
    while(string[x++]!=13);

    string[x]=0;
    printf("%s\n",string);
  }
  while(getch()!='q');

  CloseHandle(port);           // serielle Schnittstelle schließen
  return(0);
}
getch() ist kein ansi-c und dient hier nur dazu, weitere messergebnisse einzulesen (bis q gedrückt wird).

hilfreich ist vielleicht auch folgende seite: http://home.arcor.de/bernd_kunze/digiscop.htm

gruesse von der katz

EDIT @fragesteller:
ich würde über ein billiges 2kanal oszi (evtl bei ebay) nachdenken. wenn es nur um frequenzmessung geht, gibt es auch recht günstige multimeter, die das können.