Hallo zusammen!
Ich habe mir eine kleine Platine nach angehängtem Schaltplan angefertigt. Die Schaltung soll ein kleines Terminal darstellen.
Zur Inbetriebnahme der Platine habe ich dann von der AVR-CDC-Seite
http://www.recursion.jp/avrcdc/
die Hex-Datei für die Version mit Attiny45 @12MHz auf einen Attiny aufgespielt und die Fusebits laut Readme programmiert.
Anschließend habe ich auf meinem m644 folgendes Testprogramm aufgespielt und die Fusbits natürlich auf externen Quarz programmiert.
Code:
'*******************************************************************************
'*** Testprogramm für CPU Board CPU32GUSB 20090114 ***
'*** Empfängt über die serielle Schnittstelle einen Textstring und gibt ***
'*** ihn zeilenweise auf einem grafischen LCD aus. ***
'*******************************************************************************
'*******************************************************************************
'Quarzfrequenz festlegen
$crystal = 20e6
$baud = 4800
Config Serialin = Buffered , Size = 32
'Display konfigurieren
$lib "glcdKS108.lib"
Config Graphlcd = 128 * 64sed , Dataport = Porta , Controlport = Portc , Ce = 3 , Ce2 = 4 , Cd = 7 , Rd = 6 , Reset = 2 , Enable = 5
Setfont Font6x8
Config Portd.7 = Output 'LCD-Backlight
Set Portd.7 'Backlight on
'Variablen
Dim Text$ As String * 40
Dim Zeichen As Byte 'Von ATtiny empfangenes Zeichen
Dim Zeile As Byte , Spalte As Byte
'*******************************************************************************
'*** HAUPTPROGRAMM ***
'*******************************************************************************
Enable Interrupts
Cls
Zeile = 1
Spalte = 0
Do
Input Text$
If Len(text$) <= 16 Then
Lcdat Zeile , Spalte , Text$
Spalte = 0
Incr Zeile
If Zeile > 8 Then Zeile = 1
End If
Loop
End
'_******************************************************************************
'Fontdatei
$include "font6x8.font"
Fazit:
Beim Verbinden meiner Platine mit meinem Pc per USB-Kabel wird ein virtueller Comport erzeugt.
Als Terminalprogramm benutze ich das Bascom-Terminal. Meistens klappt es dann mit der Kommunikation, manchmal muss ich jedoch Terminal oder auch den m644 neustarten.
Leider hängt sich der AVR-CDC nach ein paar Zeichen (ca. 5 bis 20) auf und ich muss alles wieder neustarten...
Hat sonst noch jemand Erfahrungen mit AVR-CDC, insbesondere mit der Attiny45-Version, gemacht, und möchte sich dazu äußern?
Lesezeichen