Ncurses auf avr (8-bit)

Persönliche Seite #2284680
Lesenswert?

MoinMoin,

Vielleicht meint der Fragesteller ja etwas anderes und sollte erst mal 
verraten wozu er ncurses auf einem AVR übersetzen möchte.

Meine Vermutung ist, dass er die Ausgaben des AVR auf einem Terminal 
gezielt steuern will. Dazu folgende Stichworte:

* VT100-Emulation
* VT100-Escape-Folgen

Da ich soetwas auch demnächst ausprobieren wollte, die Frage, gibt es 
schon etwas in Form einer Bibliothek für AVRs oder muss man sich da 
selbst etwas zusammnenschreiben?

Grüße Uwe
#2284714
Lesenswert?

Gegenfrage: lohnt sich das?

An einen alten Unixrechner wollte man mit etlichen verschiedenen 
Terminals ran, die jeweils nur eine Sprache konnten. Aber die gibt es 
doch alle schon lange nicht mehr.

Stattdessen geht man mit einer Terminalemulation ran, die man PC-seitig 
auf ein beliebiges von etlichen Terminals einstellen kann.
Wozu sollte man dann im AVR verschiedene Terminals eumlieren, anstatt 
gleich nur eines der gängigen vorauszusetzen, das man dann halt am PC 
einstellt?
Moderator #2284725
Lesenswert?

Die Ncurses-Bibliothek braucht auf einem PC über 200KiB für .text +
.data + .rodata. Für den AVR kompiliert, wird das Ganze noch größer und
mit viel Glück gerade noch so in den Flash-Speicher eines ATmega2560
passen. Dann fehlt aber noch die Anwendung.

Man wird deswegen sinnvollerweise nur einen Teil davon verwenden. Je
nachdem, wie klein dieser Teil ist, kommt man mit Neuschreiben wahr-
scheinlich schneller zum Ziel als mit dem Versuch, den relevanten Code
aus Ncurses zu extrahieren.

Wozu soll denn die Bibliothek genau genutzt werden?
Persönliche Seite #2284847
Lesenswert?

MoinMoin,

Klaus Wachtler schrieb:
> Gegenfrage: lohnt sich das?
>
ncurses wohl nicht, das stimmt und habe ich ja auch in Frage gestellt, 
dass das der Fragesteller wirklich will.

Es reicht bestimmt die Implementierung eines Terminalstandards, wie z.B. 
VT100, den man mit Sicherheit mit einigen Funktionen und Defines schnell 
selbst zusammenschreiben kann (falls es nicht soetwas schon gibt...).


Yalu X. schrieb:
> Wozu soll denn die Bibliothek genau genutzt werden?
>
Ich bin zwar nicht der Fragesteller, aber gedenke in nächster Zeit auch 
soetwas zu realisieren, um z.B. einen kleinen Editor für meinen 
AVR BASIC-Interpreter auf einem AVR zu haben, damit man 
BASIC-Programme auf der SD-Karte gleich dort editieren kann... Da bietet 
es sich an, die Kursorsteuerung usw. z.B. via VT100-Escape-Folgen zu 
realisieren.

Grüße Uwe
Moderator Persönliche Seite #2284915
Lesenswert?

Uwe Berger schrieb:
> Ich bin zwar nicht der Fragesteller, aber gedenke in nächster Zeit auch
> soetwas zu realisieren, um z.B. einen kleinen Editor für meinen
> AVR BASIC-Interpreter auf einem AVR zu haben, [....]

Ich habe mal vor knapp 25 Jahren eine Mini-Curses-Bibliothek namens 
mcurses geschrieben, damals für 68K-Rechner unter UNIX und OS-9/68K. Ist 
extrem abgespeckt und unterstützt lediglich VT100/VT200 - aber schon mit 
Scrolling Regions, welche fürs Editieren von Textzeilen extrem sinnvoll 
sind. Vielleicht wäre das ja was für Dich? Ich kann ja mal schauen, dass 
ich die Sources wiederfinde. War damals während meiner Studentenzeit.
Gast #2285098
Lesenswert?

Danke für alle Antworten.
Es geht bei uns darum, mehrere Sensorwerte übersichtlich darzustellen 
(zu Testzwecken). Besonders wenn nicht mehr alle in eine Zeile passen, 
wäre ncurses eine schnelle einfache Lösung.

Yalu X. schrieb:
> Die Ncurses-Bibliothek braucht auf einem PC über 200KiB

Das ist natürlich ein sehr starkes Argument.

Frank M. schrieb:
> eine Mini-Curses-Bibliothek

..wäre der Hammer!

Freue mich auch, wenn du die Sourcen findest.

Viele Grüße
Moderator Persönliche Seite #2288498
Lesenswert?

Hallo Uwe,

Uwe Berger schrieb:
> hört sich gut an! Wollte gerade selbst anfangen etwas zu basteln, dann
> warte ich jetzt noch ein paar Tage...

Mich hat schon der Teufel geritten und ich habs heute noch auf den µC 
portiert und in die Codesammlung gesteckt:

     Beitrag "MCURSES - Mini Curses Bibliothek für Mikrocontroller"

Ist erstmal eine erste Version, da kann man gewiss noch was dran 
verbessern. Wenn Du Verbesserungsvorschläge hast, immer her damit :-)

Viel Spaß,

Frank

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren