Forum: Compiler & IDEs Gesucht Tester mit ATmega48/88/168 für meine Uartlibry


von Peter Fleury (Gast)


Lesenswert?

Ich habe nun meine UART Library für die neuen ATmega48, ATmega88 und
ATmega168 erweitert.

Leider besitze ich diese Controller noch nicht, deshalb wäre ich
dankbar wenn jemand meine Library mit diesen Controllern testen würde.

von Peter Fleury (Gast)


Lesenswert?

Ja und hier findet sich meine UART Library:
http://homepage.sunrise.ch/mysunrise/peterfleury/avr-software.html

von mthomas (Gast)


Lesenswert?

Hallo Peter Fleury,

Test der Library mit ATmega48 und "test_uart.c" bringt erwartetes
"Verhalten" - schaut gut aus.
Testumgebung: ATmega48, STK500, F_CPU=3,6864MHz, 9600bps

Bei der Gelegenheit: Danke fuer die Library. Funktioniert gut und hat
mir schon oft Zeit gespart.

Vorschlaege fuer Erweiterung:
- in uart_init u2x-Handling einbauen ( z.B. uartinit(baud, withU2X) )
- uart_putint und uart_puthex-Funktion (evtl. ueber #ifdef abschaltbar
bei knappem Speicher)

Martin Thomas

von Peter Fleury (Gast)


Lesenswert?

Ja über u2x-Handling habe ich schon nachgedacht. Allerdings muss ich
dazu das API uart_init() anpassen (zusätzlicher Parameter).

uart_putint(), uart_puthex() ist definitiv der falsche Weg.
Für die Konversion von int nach ASCII stehen in der AVRlib mit itoa()
kompakte Standart-Funktionen zur Verfügung, mit denen man eine Zahl in
einen String umwandlen kann und dann mit uart_puts() ausgeben kann.

Siehe auch AVR-libc Manual->Modules->General utilities
sowie das Beispiel test_lcd.c von meiner lcd-Library.

von mthomas (Gast)


Lesenswert?

Die genannten avr-libc-Funktionen und auch die lcd_library sind mir wohl
bekannt und ich nutze auch regelmaessig die beschriebene Vorgehensweise.
Ob der Weg "definitiv" falsch ist, vermag ich nicht zu beurteilen -
zumindest "hier" habe ich diese Funktionen in der Library ergaenzt
und nutze sie regelmaessig. War nur ein Vorschlag, da Fragen betr.
"Int./Hex-Werte ausgeben" immer wieder in Foren/Mailinglisten
auftauchen.

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.