Forum: Mikrocontroller und Digitale Elektronik Uart an mega168


von Der M. (naeschd)


Lesenswert?

UART und Atmega168
Hallo zusammen!

Ich versuche gerade eine Verbindung zwischen mega168 und PC (mittels USB 
und FTDI-Chip) herzustellen. Hier mal der Code:
1
$regfile = "m168def.dat"
2
$crystal = 8000000
3
$hwstack = 32                                             ' default use 32 for the hardware stack
4
$swstack = 10                                             ' default use 10 for the SW stack
5
$framesize = 40                                           ' default use 40 for the frame space
6
$baud = 19200
7
8
Config Portb.0 = Output
9
10
Dim Incoming_data As String * 30
11
Dim Serialcharwaiting As Byte,
12
13
Config Serialin = Buffered , Size = 30 , Bytematch = All
14
Enable Interrupts
15
16
Do
17
  Portb.0 = 1
18
  Waitms 10
19
  Portb.0 = 0
20
  Print "UART sending..."
21
  Waitms 500
22
23
Loop
24
End
25
26
27
Serial0bytereceived:
28
   Portb.0 = 1
29
   Input Incoming_data Noecho
30
   Print "UART receiving..."
31
   Clear Serialin
32
   Waitms 5000
33
   Return

Jedes Mal wenn etwas Richtung PC gesendet wird, geht eine LED (Portb.0) 
für 10ms an. Es wird im Takt von ca 500ms an den PC gesendet.
Die Richtung µC -> PC funktioniert, denn auf dem Bascom-Terminal 
erscheint "UART sending..." Sende ich jedoch etwas über das Terminal an 
den µC passiert etwas mir Unerklärliches:
Die LED (,die alle 500ms kurz für 10ms angehen sollte um zu zeigen, dass 
an den PC gesendet wird,) blinkt jetzt nur noch genau mit der halben 
Geschwindigkeit... Auf dem Terminal erscheint aber auch nicht "UART 
receiving...". Das heißt die Unterroutine, die eigentlich aufgerufen 
werden müsste, da ich ja was sende, wird nicht abgearbeitet. Habt ihr ne 
Idee worans liegen könnte? Vor allem warum wird das Sendeintervall auf 
einmal doppelt so langsam? Oszi habe ich zur Zeit leider keins zur 
Hand... Schaltplan müsste stimmen...
DANKE!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.