Hallo liebes Delphi-PRAXIS Forum!
Jetzt hab ich schon lange Zeit hier im Forum nach Tipps geschaut um mein Vorhaben realisieren zu können. Prinzipiell funktioniert es auch schon, jedoch nicht wirklich "sauber".
Was ich vor habe:
- Über die Soundkarte (Micro, Line-In oder Stereo - Mix) kommt ein Signal
- Dieses Signal soll decodiert werden.
Speziell interessiere ich mich für Telegramme, welche in diesem Signal aufgebaut sind:
Hierbei handelt es sich um Telegramme welche per FSK codiert sind.
FSK:
Signalrate 1200 baud
Low - Level: 1800 Hz (Logisch 0)
High - Level: 1200 Hz (Logisch 1)
Insgesamt besteht solch ein Telegramm aus 68 Bit. Siehe:
FMS - Telegramm
Wobei 1 bit eine Länge von 0,8 ms hat.
Meine Fragen:
1. Ist es per FFT möglich solch "kurze" Signale zu analysieren?
2. Kann die BASS.DLL dafür verwendet werden, oder gibt es bessere Komponenten etc.?
Ich habe nämlich festgestellt, dass mir immer nur ein paar "Werte" ausgegeben werden und, dass diese zudem variieren.
Sprich: Bei einem und dem selben Signal habe ich mal 10001, dann 10101 etc....zudem fehlen dort allerhand bit. Meine Vermutung ist deshalb, dass entweder die FFT zu langsam abläuft, oder einfach, der Timer, der die FFT aufruft zu langsam ist oder zu ungenau arbeitet.
Anders kann ich mir es nicht erklären, dass immer wieder bits fehlen. Schließlich müssten es 68 sein und nicht 4 bis 10.
Wie kann man, wenn man festgestellt hat, dass es entweder eine 1 oder eine 0 ist, dieses Ergebnis, natürlich in richtiger Reihenfolge speichern?
Für Antworten und Hilfen bedanke ich mich bereits im Vorraus.
Mario