Wer löst den Interrupt aus? Du sendest hoffentlich nicht in der Interrupt-Routine per RS232. Ich kenne dein VB-Programm nicht. (Ist hier auch das falsche Forum dafür...)

Du siehst, viel zu wenig Informationen um dir zu helfen. Spekulativ würde ich sagen: Sende nur, wenn sich die Ports geändert haben. Ändern sie sich oft in kurzer Zeit, dann Sammeln und in Intervallen eine Zusammenfassung senden. Baudrate hochsetzen. VB-Programm optimieren.