Hi, nachdem ich nun den SD_kartenleser von Holger Klabunde zum Laufen gebracht habe, würde ich gerne die Übertragungsgeschwindigkeit ein bisschen "pimpen". Das Maximum was ich derzeit schaffe ist Schreiben von 128 Byte Blöcken mit: 100 kb/s Lesen von 128 Byte Blöcken mit: 100 kb/s Anhand der Test die Holger´s zip File anbeiliegen kann man allerdings bis zu 300 kb/s schaffen bei einem Takt von 16 MHz und einem Teiler von 4. Deswegen schreibe ich nach der Initialisierung in das SPCR-Register für die Bits SPR0 und SPR1 jeweils eine 0. Das SPI2X Bit lasse ich auf 0. Somit müsste ich einen 4 Teiler haben und mit 4 MHz takten. Leider funktioniert das Schreiben dann nicht mehr. Bei einer Einstellung von 01 und SPI2X = 1 funktioniert alles, allerdings ändert das setzen von SPI2X in meinem Fall an der Geschwindigkeit nichts obwohl im Datenblatt steht, dass dann ein 8 Teiler wäre und kein 16 Teiler. Ich verwende einen ATMEGA32 mit 5V VCC und verwende Spannungsteiler auf den Leitungen.
Matthias wrote: > Ich verwende einen ATMEGA32 mit 5V VCC und verwende Spannungsteiler auf > den Leitungen. Kleine Frage, wie groß sind denn die Spannungsteiler dimensioniert?
Matthias wrote:
> 4,7 kOhm und 10kOhm
Versuch die mal kleiner zu machen, z.B. 1 kOhm + 680 Ohm.
KLeiner ok, aber mit den Werten komm ich ja gerade mal auf 2,9 V. Ich dachte die Datenleitungen hätten Pegel so um die 3,3 bis 3,6 V. Bei etwas längeren Leitungen wohl nicht so gut oder ?
es geht darum den Strom nicht so stark zu begrenzen sonst sind die Flanken nicht so gut und es dauert länger bis die Karte einen Flankenwechsel erkennt.
habs jetzt mal mit 1 kOhm und 500 Ohm aufgebaut, somit würde ich eine Ua von 3,3 V bekommen
Es funktioniert nun, leider ändert sich auch bei einer Takteinstellung von SPR0 und SPR1 jeweils eine 0 nicht die kb/s. Bleiben bei ca. 128 kb/s. Das kann doch nicht an der Karte liegen oder ?
Oh doch, das ist möglich. Eine meiner Karten schreibt nur mit 30kB/s. Die ist einfach so lahm. Lesen tut sie dafür mit 300kB/s. Wie schnell ist denn das lesen ? FAT-Buffer benutzt ? Das hilft beim lesen nicht viel, aber einige Karten schreiben damit schneller.
Das ist aber alles noch meilenweit von heutigen Kartenspeeds weg. Das müsste doch schneller gehen, oder ?? Die Karten können doch heute bis 20 MB/s, selbst lahme Standardkarten gehen oft über 2 MB/s. Wo liegt denn hier das Problem ??
Das kann sehr wohl an der Karte liegen... der SPI-Modus wird ja "normalerweise"(*) (also in der Kamera, im Cardreader, etc) nicht benutzt, kann schon sein dass der so langsam ist. Test mal ne andere Karte dagegen. (*) außer zum Initialisieren, aber da ist die Geschwindigkeit ja relativ egal
Lesen und Schreiben sind ungefähr gleich schnell. Ich hab eine DS Mini karte mit Adapter von Sandisk und die schaft meines Erachtens wesentlich schnellere Geschwindigkeiten. Hab hier im Forum irgendwo gelesen, dass man bei den Dingern auch einen High Speed Modus einstellen kann, dann können die aber angeblich sogar 25Mb/s. Naja egal, aber Holger bekommt angeblich bis zu 300 kb/s hin, mir würden 200 reichen, aber 130 sind mir noch zu wenig, kann es an den Spannungsteilern liegen ? könnte da ja noch ein bissal runtergehen. Oszi könnte doch da Wissen schaffen, wenn die Flanken nicht steil genug sind. Wie oben nachzulesen verwende ich jetzt die kombi UA/UE = 1kOhm/(1kOhm+500 Ohm)
>Naja egal, aber Holger bekommt angeblich bis zu 300 kb/s >hin, mir würden 200 reichen, aber 130 sind mir >noch zu wenig, kann es an den Spannungsteilern liegen ? Ich krieg sogar mehr hin mit meinem neuesten Programmcode. Die 400kB/s hab ich schon geknackt. Aber nur mit meiner schnellsten Karte ! Die meisten meiner Karten liegen viel weiter unten. Ein paar schaffen ums verrecken keine 200kB/s. Beim schreiben jedenfalls. Sogar eine nagelneue 2GB SD Karte nicht. Auch nicht auf nem ARM7 bei 15MHz SPI :( Bei 15MHz SPI sind mir sogar drei Karten ausgestiegen. Das mal nur so nebenbei. Der SPI Modus hat nichts mit dem MMC oder SD Modus zu tun. Man kann nicht mal sagen das neue große Karten im SPI Modus besonders schnell sind. Meine schnellste ist eine 256MB MMC plus von extrememory.
Kleiner Nachtrag: Die meisten meiner Karten sind beim lesen erheblich schneller als beim schreiben. Bist du sicher das dein ATMega32 auch mit 16MHz läuft ?
Schonmal überlegt, dass es auch an der Software liegen kann? ;) Bringt ja nix wenn du mit ner irren Geschwindigkeit die Bytes einzeln in die SD-Karte pumpst, aber die Bytes immer nur stundenweise 'reinreichst.
@ Simon
>Schonmal überlegt, dass es auch an der Software liegen kann?
Guter Hinweis. Meine Messungen beinhalten nur Maximalwerte
um sie vergleichen zu können. Die Daten müssen im realen Leben
aber auch noch irgenwo her kommen. Dann gehts so richtig runter
mit dem Tempo.
Gruß
Holger
holger wrote: > Dann gehts so richtig runter > mit dem Tempo. Jup, oder andersherum gesehen: angenommen du willst eine Datei über einen eingebauten Webserver an einen Client schicken. Jetzt wirds langsam. Übrigens: Die 100kb/s sind schon nicht allzuschlecht. Und achja: Ich konnte bei meinen SD-Karte (Ich weiß nicht mehr die Größe der Spannungsteiler-Widerstände. Sind SMD und es steht drauf: 1800 und 3300. Ich meine dass es 1k8 und 3k3 waren) die SPI Schnittstelle bis 10MHz (FCPU/2 bei 20MHz) takten und das haben die alle noch mitgemacht
ich denke mal das die SPI Modus einfach mal um den Faktor 4 langsamer ist da nur eine Datenleitung benutzt wird statt 4 außerdem wird der AVR einfach zu langsam sein, neuere SD-Karten werden ja mit bis zu 50 MHz getaktet also kein Wunder wenn hier die Datenrate so niedrig ist, wenn der AVR vielleicht höchstens 1 MHz zu schieben vermag. Vielleicht könnte man hier mit ein paar Schieberegistern arbeiten an die man die Daten parallel übermittelt und dann extern schneller takten tut um die Daten dann schneller raustakten zu können als es der AVR macht. Die neuen MMC 4.0 Karten sollen 8 Datenleitungen haben vielleicht wäre das ne Überlegung wert gerade weil man die Daten parallel aus dem AVR rausbekommt und das Programm dann auch schneller abläuft. Den Kartenleser von Holger Klabunde kenne ich nicht, gibts dazu irgenwo einen Link wo man sich das Projekt mal anschauen kann?
Thomas O. wrote: > wenn > der AVR vielleicht höchstens 1 MHz zu schieben vermag. Huh?! Ne null darfste schon dranhängen...
@ Thomas Sicher wäre es schön wenn man statt SPI mit nur einer Datenleitung 4 oder 8 Datenleitungen benutzen könnte. Dann musst du aber Mitglied im Club werden. Kostet ja nur ein paar tausend Euro im Jahr. Der Hacken an der Sache: Du darfst deinen Code nicht mehr frei rausgeben.
Achso wusste nicht das die das Geheimhalten und Geld dafür verlangen aber mit einem Logic-Analyzer müsste man doch dahinterkommen. Gibts da nichts aus der Linux-Ecke?
dann setzt doch auf Compact Flash ein paar Latches und die Sache läuft rund und vor allem schneller weil parallel und der µC kann nebenher noch andere Sachen erledigen als sich nur ums schieben zu kümmern. Wenn ihr aber bei SPI bleiben wollt könnte man die fertigen Daten wo also alle sdrin ist, Start-Stop Funktion, Adresse, Byte usw. in ein großes parallel zu seriel Schieberegister laden und dann extern mit den maximal möglichen 25 MHz austakten.
>dann setzt doch auf Compact Flash ein paar Latches und die Sache läuft >rund und vor allem schneller weil parallel und der µC kann nebenher noch >andere Sachen erledigen als sich nur ums schieben zu kümmern. Danke für den Tip. Der uC erledigt das schieben aber nicht selbst. Das macht das Hardware SPI Modul. Solange das schiebt kann der uC schon mal Daten aus dem Speicher holen und den Schleifenzähler runterzählen. Compact Flash ist nicht wirklich gut an einem 40poligen uC. Erstens kann man den Sockel kaum löten und zweitens gehen die Hälfte der IO Pins dabei drauf. SPI braucht nur vier Pins.
liege ich somit falsch, dass eine SPI SCK Änderung um das doppelte z.B. von Teiler 8 auf Teiler 4 keine Geschwindigkeitsändrung in der Datenrate veruracht ?
>Bist du sicher das dein ATMega32 auch mit 16MHz läuft ? eigentlich schon, habe an XTAL1 und XTAL2 einen 16MHz Quarz zwei 27pf Kondensatoren gegen Masse und in den Fuse-Bits habe ich External Quarz/ Resonator (1111) (11) im AVR eingestellt. Noch dazu ein CKOPT, da man dass beim MEGA32 ab 16 MHz takten benötigt. Habe ich etwas vergessen ?
>Habe ich etwas vergessen ?
Ja möglicherweise. In MMCReadSektor und in MMCWriteSektor
stelle ich (wie unvorsichtig) automatisch auf SPI Doublespeed.
Evtl. arbeitest du die ganze Zeit schon mit demselben Teiler :(
Ich versuche Initialisierung von Schreib bzw. Lesevorgang so zu trennen in dem ich in der Getdriveinformation() den 128 Taktteiler nehme und den Speed bevor ich mit RemoveFile() beginne auf 0x50 (also 4Teiler) und SPSR=0x01 hochdrehe.
Sollte ich also nach der Initialisierung auf 0x50 stellen, dann Lese und schreibe ich automatisch mit fosc/2, da innerhalb der Funktionen ja auf SPSR= 0x01 umgestellt wird. Dann verstehe ich die 100kB/s erst recht nicht ;-(((
Getdriveinformation() ist dafür der falsche Platz ! Das wird in MMCIdentify() bereits gemacht. Siehe Anfang und Ende von MMCIdentify().
Das habe ich bereits bemerkt und sry ich meinte die MMCIdentify(). Zu beginn wird ja der 128 Teiler zu initialsierung hergenomme und dann zu Ende auf 0x50 umgestellt, was der 4 Teiler bei SPSR = 0x00 wäre. Bei derartiger Einstellung schaffe ich, wenn ich 128 Bytes schreibe: Schreiben: 108, 5 kB/s Lesen: 120,6 kB/s Bin ratlos !
Die Karte ist 1 GB Gross ist von SANdisk und ist eine MINI SD mit Adapter kostet bei Reichelt so um die 10 €. Der log lautet: ****************************************************************** ATMega FAT DOS-Read-Write-Test3md 17: 0xFF 0xFF 0x00d 24: 0xFF by Holgi Cmd 17 FAT16 0xFF bootSecOffset 32 WS Cmd 1 Reserved Sectors 8FF 0xFF 0x Cmd 24: FAT Sectors 1120xFF 0x000x Cmd Num. of FAT's 2 Cmd 17: 0xFF 0 secPerCluster 100 0x Cmd 17: BytesPerCluster 512000006E9F00 RS FATFirstSector 40 0xFF 0x00 0xFF 0 FirstRootSector 26417: 0xFF 0xFF 0x00d RootDirSectors 32000 Cmd 17: 0xFF FirstDataSector 296xFF 0xFF 0x Cmd 17: maxsect 288000 RootDirSectors 32 FirstDataSector 581 maxsect 1984000 FirstDirCluster 0 maxcluster 61959 Using FAT12 Using FAT16 Using FAT32 Using FAT Buffer MMC/SD Card FAST_SPI_WRITE FAST_SPI_READ FAST_FWRITE FAST_FREAD F_CPU 16000000 Start writing files 128 18.45s 108.4kB/s Start reading files 128 16.59s 120.5kB/s Test done. **************************************************************
Das ist aber kein Original-LOG von mir. Hoffentlich hast du nicht auch an anderen Stellen rumgefummelt. Was ist das denn ? => secPerCluster 100 Wie ist denn die Karte formatiert ? serPerCluster ist bei allen meinen Karten eine Zweierpotenz: 1,2,4,8,16,32,64,128 Das funktioniert so wirklich ?
>Das ist aber kein Original-LOG von mir.
Doch, habe nur den Schreibtest mit 128 Bytes drinnengelassen, den Rest
habe ich auskommentiert und die DEBUG-Comments hab ich angemacht.
Ansonsten hab ich nix gemacht.
Habe in Knoppix eine leere DOS-Partitionstabelle angelegt. Dann eine
partition (primär), dann von Zyliner 1 bis 1016. Dann das FAT16 mit hex
6 als fs gemacht und das ganze geschrieben:
*******in Linux********
fdisk /dev/sda
o
n
1
1
1016
t
6
w
***********************
Dann habe ich die Karte in Windows XP probiert, dort erkannte er sie,
aber nicht formatiert. Dann habe ich unter Dateiträgerverwaltung mit FAT
und einer size von 16k (kleiner ging es nicht) formatiert.
Ab dem zeitpunkt erkannte Windows und das Programm die Karte und das FS
und das Schreiben und Lesen ging los;-)
Schalte doch mal MMC_DEBUG_COMMANDS ab. Das könnte schon sehr aufhalten. Wundert mich das das LOG nicht voll von CMDxx Ausgaben ist ? Mit dem secPerCluster Wert wirds aber Probleme geben. Partitionier die Karte doch mal in Win neu.
Partitionieren tu ich sie ja immer in Linux. Ich hab ein LOW-Voltage FORMAT Tool im Web gefunden, dass di Karte vollkommen platt macht und dann partitioniere ich immer in Linux. Wie soll ich da vorgehen. Soll ich die Karte wieder komplett löschen und dann in Windows mit FAT formatieren ? Dann erkennt das Programm das FAT16 nämlich nie. >>Schalte doch mal MMC_DEBUG_COMMANDS ab. Auch schon gemacht, keine deutliche verbesserung spürbar, leider. >>Mit dem secPerCluster Wert wirds aber Probleme geben. Das würde ich gerne richtig machen. Schätze das da der Fehler liegt. Wie mach ich das genau in Windows ?
>Soll ich die Karte wieder komplett löschen und dann in Windows mit FAT >formatieren ? Ja mach, das mal. > Dann erkennt das Programm das FAT16 nämlich nie. Wie alt ist die Version meines Programmes ? Damit hatte ich noch nie Ärger.
hab jetzt 2 unterschiedliche SD-Karten formatiert und getestet. Eine 16 MB und eine 1GB ATMega FAT DOS-Read-Write-Test3 by Holgi FAT16 bootSecOffset 57 Reserved Sectors 8 FAT Sectors 112 Num. of FAT's 2 secPerCluster 1 BytesPerCluster 512 FATFirstSector 65 FirstRootSector 289 RootDirSectors 32 FirstDataSector 321 maxsect 28800 FirstDirCluster 0 maxcluster 28481 Using FAT12 Using FAT16 Using FAT32 Using FAT Buffer MMC/SD Card FAST_SPI_WRITE FAST_SPI_READ FAST_FWRITE FAST_FREAD F_CPU 16000000 Start writing files 128 16.14s 123.9kB/s Start reading files 128 16.46s 121.5kB/s Test done. ATMega FAT DOS-Read-Wr by Holgi FAT16 bootSecOffset 249 Reserved Sectors 2 FAT Sectors 243 Num. of FAT's 2 secPerCluster 32 BytesPerCluster 16384 FATFirstSector 251 FirstRootSector 737 RootDirSectors 32 FirstDataSector 769 maxsect 1984000 FirstDirCluster 0 maxcluster 61977 Using FAT12 Using FAT16 Using FAT32 Using FAT Buffer MMC/SD Card FAST_SPI_WRITE FAST_SPI_READ FAST_FWRITE FAST_FREAD F_CPU 16000000 Start writing files 128 18.71s 106.8kB/s Start reading files 128 16.57s 120.7kB/s Test done.
Das sieht für mich gut aus. Ich weiss: für dich nicht :( Dann sind die Dinger halt so langsam. Sind die Debug Ausgaben in mmc_spi.h wirklich alle aus ? Zieh dir mal die neuste Software von meiner Homepage. In dos.h aktivierst du dann: FASTER_FWRITE FASTER_FREAD Beim schreiben bringt das ~3-4%. Beim lesen einiges mehr. Aber auch das wird dich nicht glücklich machen. Gruß Holger
>Sind die Debug Ausgaben in mmc_spi.h wirklich alle aus ? ja vertrau mir :-) die sind aus. >Beim schreiben bringt das ~3-4%. Beim lesen einiges mehr. Aber auch das wird dich nicht glücklich machen. hört sich doch gut an, wenn ich sagen kann, das es an der Karte liegt, dann ist das ja für mich ok, dann hol ich mir eben eine schnelle und nehme eine aus deinen Test. Mir gehts nur eben logischerweise darum, ob ich etwas falsch mache. Ich zieh mir jetzt die Software und meld mich dann wieder.
Also: Auf meiner 1 GB SD-Karte hat die neue Version grössere Verbesserungen gebracht, als du gedacht hättest: *********************************************************************** ATMega FAT DOS-Read-Write-Test3 by Holgi FAT16 bootSecOffset 249 Reserved Sectors 2 FAT Sectors 243 Num. of FAT's 2 secPerCluster 32 BytesPerCluster 16384 FATFirstSector 251 FirstRootSector 737 RootDirSectors 32 FirstDataSector 769 maxsect 1984000 FirstDirCluster 0 maxcluster 61977 Using FAT12 FAT16 FAT32 Using FAT Buffer MMC/SD Card FAST_SPI_WRITE FAST_SPI_READ FASTER_FWRITE FASTER_FREAD F_CPU 16000000 Deleting files Start writing files 1 62.26s 32.1kB/s 2 36.94s 54.1kB/s 4 24.45s 81.7kB/s 8 18.06s 110.7kB/s 16 15.04s 132.9kB/s 32 13.34s 149.9kB/s 64 12.56s 159.2kB/s 77 12.51s 159.8kB/s 128 12.18s 164.2kB/s Start reading files 1 71.32s 28.0kB/s 2 40.21s 49.7kB/s 4 24.66s 81.1kB/s 8 16.89s 118.4kB/s 16 13.00s 153.8kB/s 32 11.06s 180.8kB/s 64 10.09s 198.2kB/s 77 10.01s 199.8kB/s 128 9.60s 208.3kB/s Verifying files 77.TXT verify ok ! 128.TXT verify ok ! Test done. ************************************************************************ * Beim Lesen also schon die 200 ! Super. Jetztkommt gleich noch der Test mit der 16 MB
Da nur 16 MB draufpassen, beginnt der Test bei 8Bytes. Man muss bedenken, dass diese Karte schon mindestens3-4 Jahre alt ist. Wenn ich mir deinen Test mit einer Sandisk 256MB anschaue, bin ich mit der alten Karte beim Schreiben gleichschnell. Beim Lesen fehlen noch ein paar Bytes ;-) *********************************************************************** ATMega FAT DOS-Read-Write-Test3 by Holgi FAT16 bootSecOffset 57 Reserved Sectors 8 FAT Sectors 112 Num. of FAT's 2 secPerCluster 1 BytesPerCluster 512 FATFirstSector 65 FirstRootSector 289 RootDirSectors 32 FirstDataSector 321 maxsect 28800 FirstDirCluster 0 maxcluster 28481 Using FAT12 FAT16 FAT32 Using FAT Buffer MMC/SD Card FAST_SPI_WRITE FAST_SPI_READ FASTER_FWRITE FASTER_FREAD F_CPU 16000000 Deleting files Start writing files 8 15.82s 126.4kB/s 16 12.72s 157.2kB/s 32 11.10s 180.1kB/s 64 10.34s 193.4kB/s 77 10.28s 194.5kB/s 128 9.93s 201.4kB/s Start reading files 8 16.77s 119.2kB/s 16 12.89s 155.1kB/s 32 10.93s 182.9kB/s 64 9.97s 200.6kB/s 77 9.88s 202.4kB/s 128 9.48s 210.9kB/s Verifying files 77.TXT verify ok ! 128.TXT verify ok ! Test done. ************************************************************************ * PS: Das Programm von dir ist übrgens der hammer. Hab ich bis jetzt noch gar nicht erwähnt.
Es gibt nur einen kleinen BUg in der Dumbsect.c wo der aufruf der USART funktion ser_putc(' ') kommt macht mein Compiler mucken. ***undefined reference******
Das sieht doch schon besser aus ! Benutze im neuen makefile jetzt -02 statt -Os. Das bringt auch schon einiges. Die Testdaten sind zum Teil schon recht alt. Ich mach irgendwann mal einen neuen Messlauf. Viel Spaß dann noch Holger
So jetzt hab ich hyper SPeed YEEEEEEEES ! Also, das mit dem optimierlevel auf 02 ist der Tipp. Schau dir mal die Werte an: ********************************************16 MB Karte ATMega FAT DOS-Read-Write-Test3 by Holgi No Flash !ATMega FAT DOS-Read-Write-Test3 by Holgi No Flash !ATMega FAT DOS-Read-Write-Test3 by Holgi FAT16 bootSecOffset 57 Reserved Sectors 8 FAT Sectors 112 Num. of FAT's 2 secPerCluster 1 BytesPerCluster 512 FATFirstSector 65 FirstRootSector 289 RootDirSectors 32 FirstDataSector 321 maxsect 28800 FirstDirCluster 0 maxcluster 28481 Using FAT12 FAT16 FAT32 Using FAT Buffer MMC/SD Card FAST_SPI_WRITE FAST_SPI_READ FASTER_FWRITE FASTER_FREAD F_CPU 16000000 Deleting files Start writing files 8 9.80s 204.0kB/s 16 7.80s 256.4kB/s 32 6.74s 296.7kB/s 64 6.25s 320.0kB/s 77 6.20s 322.5kB/s 128 6.00s 333.3kB/s Start reading files 8 9.61s 208.1kB/s 16 7.21s 277.3kB/s 32 5.99s 333.8kB/s 64 5.40s 370.3kB/s 77 5.33s 375.2kB/s 128 5.10s 392.1kB/s Verifying files 77.TXT verify ok ! 128.TXT verify ok ! Test done. *************************************** 1 GB Karte ATMega FAT DOS-Read-Write-Test3 by Holgi FAT16 bootSecOffset 249 Reserved Sectors 2 FAT Sectors 243 Num. of FAT's 2 secPerCluster 32 BytesPerCluster 16384 FATFirstSector 251 FirstRootSector 737 RootDirSectors 32 FirstDataSector 769 maxsect 1984000 FirstDirCluster 0 maxcluster 61977 Using FAT12 FAT16 FAT32 Using FAT Buffer MMC/SD Card FAST_SPI_WRITE FAST_SPI_READ FASTER_FWRITE FASTER_FREAD F_CPU 16000000 Deleting files Start writing files 8 12.46s 160.5kB/s 16 10.20s 196.0kB/s 32 9.16s 218.3kB/s 64 8.69s 230.1kB/s 77 8.76s 228.3kB/s 128 8.44s 236.9kB/s Start reading files 8 9.78s 204.4kB/s 16 7.37s 271.3kB/s 32 6.17s 324.1kB/s 64 5.57s 359.0kB/s 77 5.51s 362.9kB/s 128 5.27s 379.5kB/s Verifying files 77.TXT verify ok ! 128.TXT verify ok ! Test done. ******************************************************************** Das ist absolute Spitzenklasse, ich sag ja, super Prog, grossen Respekt !!!
Ja, unheimlich GEILLLL ;-) Siehste mal was aus deinem Proggi alles rausholbar ist, sogar so ne alte 16 Mb Karte geht ab wie Schmitz´s Katze ;-))))
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.