Hallo an die Entwickler-Gemeinde, Ich würde gerne eine länger gereifte, und nun endlich als OpenSource "releaste" Library vorstellen. Dazu muss ich allerdings erst mal etwas ausholen: Wer kennt das nicht: Immer wieder ein neues Gerät an einen (embedded) PC anbinden zu müssen. Ob i2c, SPI, UART, Ethernet, usw. - immer wieder geht's von vorne los mit: - Headerfiles mit Registertabellen schreiben - Protokoll implementieren - Die Register irgendwie in einer API als "Eigenschaften" oder "Parameter" eines Geräts abbilden - Software zur Parametrisierung schreiben (GUI, ...) - Viel debuggen und bloss nichts mehr am Protokoll ändern Es ist nun schon ca. acht Jahre her, dass nach langer Diskussion in diversen Machine-Vision-Gremien zumindest ein einigermassen intelligenter" Standard basierend auf XML für Kameras - das GenICAM Framework - eingeführt wurde. Logische nächste Frage: Warum nicht das Ganze noch generischer für beliebige "embedded" Geräte? Herausgekommen ist schlussendlich nach längerer Reife das Framework "netpp-DClib" (network property prototol / Device Control library), bei der sich die Knochenarbeit der Entwickler (idealisiert) auf folgendes herunterkocht: - Mit Hilfe einer Gerätebeschreibungssprache auf XML-Basis werden Register und ev. einzelne Bits per GUI-Editor eingegeben und in "Properties" (Eigenschaften mit Namen, wie "Enable") abgebildet - Es müssen device_write() und device_read()-Funktionen geschrieben werden. Diese bilden einen 'flachen' Register-Adressraum auf ein oder mehrere angeschlossene embedded Geräte (i2c-Sensoren, ADCs, etc.) ab. - Eventuelle kompliziertere Zugriffsarten müssen als Handler implementiert werden (getter/setter) - "make" aufrufen und den so erstellten 'Server' auf dem embedded Target ausführen. - Um das Gerät schlussendlich fernzusteuern, genügt EIN generischer Client für ALLE netpp-fähigen Geräte. Nach diversen Adoptionen durch die werte Kundenschaft (hier ein "Danke!" für das Ermöglichen all der Entwicklungen und Verbesserungen) ist nun der Zeitpunkt gekommen, wo die Erwartungen an netpp allmählich die alltäglich handhabbaren Komplexitäten sprengen - es ergo Sinn macht, wenn mehrere Entwickler an der Sache mitdenken. Der allseits bewährte Lieblings-Ausweg aus dieser Situation ist bekanntlich: "Let the baby go". Heisst: Das Paket wird hiermit in einer abgespeckten Version (nur für Linux/GCC-Crosscompiler getestet), wie an der Embedded World Conference 2011 angekündigt, als OpenSource-Paket freigegeben. Und wir dürfen gespannt sein, was alles an interessanten Aspekten/Erweiterungen dazukommt. Mehr dazu (bisher nur auf englisch): http://www.section5.ch/netpp Viel Spass, - Strubi
Hi, irgendwo in der Dokumentation ist auch ein 8051-Port erwähnt, aber ich finde dazu keine zugehörigen Files bzw verstehe ich nicht, wie die Konfiguration für den 8051 (ohne den Netzwerk-Krempel) von statten gehen soll. Gibt es dazu noch mehr Info?
Hallo, tut mir leid, die 8051-Version ist ein fork und nicht im "freien" Tree unterstützt, geht leider nicht generisch, wegen der vielen 8051-Varianten. Eine Portierung wäre machbar, würde aber eher davon abraten, es ist inzwischen wohl billiger, einen kleinen ARM einzudesignen, als mit den alten 8-Bittern zu arbeiten. Gruss, - Strubi
Martin S. schrieb: > Wer kennt das nicht: Immer wieder ein neues Gerät an einen (embedded) PC > anbinden zu müssen. Ob i2c, SPI, UART, Ethernet, usw. - immer wieder > geht's von vorne los mit: Hi Martin, ich kenn das Problem! Ich bin deswegen zu BASCOM gewechselt...
Moin, um mal endlich mit aktuellen OpenSource-Plattformen mitzuhalten: Das offizielle Repo ist definitiv migriert und nun unter https://gitlab.com/hackfin/netpp zu finden. Alle anderen Repos (insbesondere SVN) und angepassten Baeume sind nicht mehr gewartet und koennen beim naechsten Reinemachen verschwinden.
Beitrag #6110032 wurde von einem Moderator gelöscht.
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.