dariegel
28.02.2011, 20:04
Abend zusammen,
ich würde gerne auf meinem KS0066-LCD Umlaute ausgeben. Die in der internen Zeichentabelle des LCD abgelegten Zeichen ä, ö, ü lassen sich problemlos anzeigen, indem ich die Codes 238, 239 und 245 übertrage.
Nun will ich, dass die Umlaute automatisch korrekt angezeigt werden, wenn ich einen String ausgebe, der ein oder mehrere dieser Umlaute enthält.
Bevor ich also ein Char-Array an das Display übermittle, möchte ich jedes Zeichen auf einen Umlaut prüfen und ggf. durch den entsprechenden internen LCD-Code ersetzen.
Eigentlich müsste es doch folgendermaßen funktionieren:
Sub LCD_WriteText_I2C(ByRef cText As Char)
Dim i As Integer
i = 0
'Übergebenes Char-Array ausgeben.
Do While cText(i) > 0
If cText(i) = "ä" Then
LCD_Write_I2C(1, 238)
Else
LCD_Write_I2C(1, cText(i))
End If
i = i + 1
End While
End Sub
Der Compiler schmeißt aber immer diesen Fehler:
Semantik Fehler - Operator '=' für Typ overflow nicht erlaubt
Was mache ich falsch?
Danke Euch.
Gruß
ich würde gerne auf meinem KS0066-LCD Umlaute ausgeben. Die in der internen Zeichentabelle des LCD abgelegten Zeichen ä, ö, ü lassen sich problemlos anzeigen, indem ich die Codes 238, 239 und 245 übertrage.
Nun will ich, dass die Umlaute automatisch korrekt angezeigt werden, wenn ich einen String ausgebe, der ein oder mehrere dieser Umlaute enthält.
Bevor ich also ein Char-Array an das Display übermittle, möchte ich jedes Zeichen auf einen Umlaut prüfen und ggf. durch den entsprechenden internen LCD-Code ersetzen.
Eigentlich müsste es doch folgendermaßen funktionieren:
Sub LCD_WriteText_I2C(ByRef cText As Char)
Dim i As Integer
i = 0
'Übergebenes Char-Array ausgeben.
Do While cText(i) > 0
If cText(i) = "ä" Then
LCD_Write_I2C(1, 238)
Else
LCD_Write_I2C(1, cText(i))
End If
i = i + 1
End While
End Sub
Der Compiler schmeißt aber immer diesen Fehler:
Semantik Fehler - Operator '=' für Typ overflow nicht erlaubt
Was mache ich falsch?
Danke Euch.
Gruß