Gast
#1423064
Hallo, bin etwas am verzweifeln! Eigentlich ein kleines Problem. Möchte ein Zeichen (600 Baud 7 bit 1 Stopbit None P.) empfangen und dann mit 9600,8,1,N wieder ausgeben. Das ganze möglichst mit dem Software UART um einen alten AT90S1200 (ohne uart on bord) verwenden zu können. Getestet habe ich mit einem AT Mega8. Variante I Eingang Hardware UART - Ausgabe Software UART =================================================================== Config Com1 = 600 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 7 , Clockpol = 0 Open "COMD.7:9600,8,N,1" For Output As #1 Open "COMD.6:600,7,N,1" For Input As #2 Hprog: Do B = Inkey() If B > 0 Then Printbin #1 , B End If Loop Until B = 61 ' Ende bei "=" dec 061 Close #1 Close #2 End =================================================================== Funktioniert einwandfrei !!!!!! Variante II Eingang Software UART - Ausgabe Software UART =================================================================== Config Com1 = 600 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 7 , Clockpol = 0 Open "COMD.7:9600,8,N,1" For Output As #1 Open "COMD.6:600,7,N,1" For Input As #2 Hprog: Do B = Inkey(#2) If B > 0 Then Printbin #1 , B End If Loop Until B = 61 ' Ende bei "=" dec 061 Close #1 Close #2 End =================================================================== Bei Variante II werden alle Zeichen falsch übertragen !! warum?? Sehe den Wald vor Bäumen nicht Mehr ;-(( Wer hilft?