Hallo Zusammen,
wir haben das rn-Board mit dem 2560 Controller.

Wir haben die RN-Control per USB (UART) mit dem PC verbunden und auf dem PC ein Terminal gestartet.
Zu Tests habe ich ein Bascom Programm geschrieben, welches alle ankommenden Zeichen an der UART-Schnittstelle sofort wieder rauschickt.

Sendet man mit dem Terminal zum Beispiel "Test" an den Controler, so erwiedert dieser auch sämtliche Zeichen und sendet "Test" zurück.
Bei einem Wort mit 5 Buchstaben z.B. "Start" wird das 4. Zeichen verschluckt und nur "Stat" zurück an das Terminal gesendet.

Wenn ich das Terminal innerhalb des PCs mit 2 Commports verbinde, dann klappt das prima.

Vielleicht hat jemand einen Tip woran das liegen könnte ?

Vielen Dank im vorraus


Folgender Programm Code befindet sich auf dem Atmel:

Code:
$regfile = "m2560def.dat"
$hwstack = 82                                               '80
$framesize = 68                                             ' 64
$swstack = 68                                               '44


$crystal = 16000000                                         'Quarzfrequenz
$baud = 9600



'Config Scl = Portd.0                                        'Ports fuer IIC-Bus
'Config Sda = Portd.1

Sound Portg.5 , 400 , 450                                   'BEEP
Sound Portg.5 , 400 , 250                                   'BEEP
Sound Portg.5 , 400 , 450                                   'BEEP

Config Pind.5 = Output
Led Alias Portd.5

Config Pine.5 = Input
USB Alias Pine.5                                            'Ist 1 wenn USB angeschlossen


'Usb Schnittstelle UART initialisierung
Config Com4 = 9600 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0
Open "com4:" For Binary As #4                               'USB Buchse


'Initialisierung LCD
Config Pinf.6 = Output
Lcd_rw Alias Portf.6
Lcd_rw = 0

Config Lcd = 20 * 4a , Chipset = Ks077
Config Lcdpin = Pin , Db4 = Portf.3 , Db5 = Portf.2 , Db6 = Portf.1 , Db7 = Portf.0 , E = Portf.5 , Rs = Portf.7
Config Lcdbus = 4

Initlcd

'Ansteuerung LCD
   Cls
   Locate 1 , 1                                             'Cursor auf 1 Zeile, 1 Spalte
   Lcd "Test-Platine"
   Print #4 ,"Test-Platine"

   Locate 2 , 1
   Lcd "Initialisierung"
   Print #4 ,"Initialisierung"

   Locate 3 , 1
   Lcd "Ausgabe"
   Print #4 ,"Initialisierung"

   Locate 4 , 1
   Lcd ""


Dim B As Byte
Dim L As Integer
L = 1
'Schleife Tastatureingabe replay

Do
   B = Inkey(#4)
   'Waitms 500

If B <> 0 Then
   Print #4 , Chr(b)
   Locate 4 , L
   Lcd Chr(b)
   L = L + 1
End If

Loop

End