Forum: Mikrocontroller und Digitale Elektronik Bascom UART Bytes einzeln empfangen


von Nils S. (fitec) Benutzerseite


Lesenswert?

Hallo
Ich habe hier einen ATMega8 der über die UART Daten von einem anderen µC 
bekommt. Die Daten sind Text (und Zahlen).
Ich zeige die empfangenen Daten in einem 16*2 Display an.
Ich will das in Bascom so programmieren, dass ich merke, wenn die 
Zeichenanzahl>16 ist, damit ich in der zweiten Zeile des LCD 
weiterschrieben kann, bzw wenn die Zeichenanzahl>32 ist gibt er eine 
Rückmeldung, dass die Datenmenge zu groß ist.
Dazu müsste ich aber die Bytes einzeln empfangen. Wie ght das?
Mein derzeitiger Code ist folgender:
1
$regfile = "m8def.dat"                                      'ATMEga8
2
$crystal = 4000000                                          '4Mhz
3
$baud = 9600
4
5
Dim I As String * 32
6
Dim P As Byte
7
Dim X As Byte
8
9
Config Serialin = Buffered , Size = 32                      'RS232 mit 32 Zeichen Empfangspuffer
10
11
Config Lcd = 16 * 2                                         'LCD 2 Zeilen, 16 Zeichen
12
Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.3 , Db6 = Portc.2 , Db7 = Portc.1 , E = Portd.7 , Rs = Portb.0       'LCD Pin-Config
13
Config Lcdbus = 4
14
15
Config Portc.5 = Output
16
Portc.5 = 1
17
18
Enable Interrupts
19
20
Cls                                                         'Lösche Display
21
22
Do
23
  X = Ischarwaiting()                                       'Zeichen im Buffer?
24
  If X <> 0 Then
25
    Input I                                                 'Lesen eines Zeichens
26
    Cls                                                     'Lösche Display
27
    Locate 1 , 1                                            'Cursors setzten
28
    Lcd I                                                   'Ausgabe auf Lcd
29
    End If
30
Loop
31
32
End

Ich hoffe mir kann jemand helfen.

Gruß Nils

von Das Kleinkind (Gast)


Lesenswert?


von Avr N. (avrnix) Benutzerseite


Lesenswert?

Schaue mal in der Hilfe von Bascom da gibt es Beispiele.
http://www.comwebnet.de -> Forum

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.