hi, ich mache auch änliche Sache, aber andere Komponent genutzt, nämliche von DiskDude, bzw. Delphi4.
da deine Programm zu groß ist, habe ich nicht gekukt.
einige trick vielleicht hilflich.
versuche eine Sehr kleine Programm zu schreiben, die nur gelesene wert anzeigen.
und mache deine Ext. Geräte dauerhaft immer eine konstant wert liefern, dann mit die kleine Programm mal testen. (wahrscheinlich kannst du mit eine Wiederstand die Ext. Geräte simulieren)
wenn alles funktioniert, muss die problem in die 'je 5 Sekunde eine Signal von 9600bit/s' liegen.
leider kann ich nur bis soweit dir helfen.
viel glück!