Moin Spok,
guggema:
Da bin ich ja mal gespannt
(06.03.2021, 02:52)spocintosh schrieb: [ -> ]Aber wieso ich Windows brauche, um einen Computer zu konfigurieren, der gar nicht auf Windows läuft, begreife ich schlicht nicht, ohne das mal vor der Nase zu haben...
Das kann ich Dir leicht erklären:
Der Mikrocontroller wird in C++ programmiert, daraus entsteht nach dem kompilieren und linken die s.g. Firmware, die der Mikrocontroller versteht und die mit dem Teensy-Loader in den Controller geflasht wird.
Ab hier ist das Gerät prinzipiell lauffähig und man kann die verschiedenen Module und einige Modi mit dem Taster oder einer Fernbedienung umschalten.
Natürlich sind die Möglichkeiten sehr begrenzt, wenn man nur einen Taster oder die Fernbedienung zur Verfügung hat. Auch die Fernbedienung wird ohne Konfiguration nicht laufen.
Alle optischen Anpassungen, die Ballistikeinstellungen und diverser anderer Kram bleiben da auch außen vor.
Dafür gibt es dann ein Konfigurationsprogramm, mit dem man alle möglichen Einstellungen erreicht und seine Einstellungen im nichtflüchtigen Speicher des Mikrocontrollers persistieren kann.
Die Kommunikation zwischen der Konfigurationssoftware und dem Mikrocontroller erfolgt in beide Richtungen über USB mit Hilfe von Key-Value Befehlen.
Das nennt man auch API. Die Abkürzung API steht für Application Programming Interface und bezeichnet eine Programmierschnittstelle.
Diese Schnittstelle werde ich zum Ende des Projekts veröffentlichen.
Das ist ein ganz wichtiger Punkt für Entwickler!
Es ist dann nämlich möglich, dass jeder Entwickler seine Vorstellungen eines Konfigurationsprogramms selbst verwirklichen kann.
Und das auf allen möglichen Betriebssystem und in allen Programmiersprachen.
Bei mir ist es halt so, dass ich außer C++ für die Mikrocontroller nur noch C# als Programmiersprache beherrsche und daher das Konfigurationsprogramm in dieser Programmiersprache geschrieben habe. Zumal es zur Kommunikation, speziell für den Teensy, fertige Komponenten gibt, die nur in C# existieren.
Also habe ich das was ich kann in dem Konfigurationsprogramm umgesetzt und da C# eine Microsoft Technologie ist und auf dem .NET Framework aufbaut, kann es nur unter Windows laufen.
Wenn die API öffentlich ist, findet sich vielleicht irgendwann da draußen ein findiger Entwickler, der z.B. gut in JAVA programmieren kann und baut selbst ein Konfigurationsprogramm - das läuft dann auf allen Betriebssystemen.
Ich selbst kann kein Java und habe auch nicht die Kapazitäten, es zu lernen.
Mein Konfigurationsprogramm besteht aus über 20.000 Zeilen Code, da bräuchte ich ewig, um es in andere Sprachen umzusetzen.
Dafür gibt es eben die API, damit Jeder solch ein Programm entwickeln kann.
Ich habe vor, dieses Projekt und auch Folgeprojekte sehr weit über dieses Forum bekannt zu machen, das hier ist sozusagen nur das 1m Brett, von dem ein paar liebe OFF-User ab und zu runterhüpfen
.
Ich hoffe, ich konnte dir das einigermaßen erklären?
Auch wenn Dein Gerät noch nicht da ist, das Konfigurationsprogramm ist ja jederzeit im Startposting dieses Threads herunterladbar und ausführbar!
(06.03.2021, 02:52)spocintosh schrieb: [ -> ]Mein Mitbewohner hat VMWare Fusion auf dem Mac, um ein paar DOS-Programme aus den 80ern in Win XP laufen zu lassen, zur Not weiß der auch, wie man damit umgeht.
Wenn er nur XP virtualisiert, wird es nicht gehen!
Ich entwickle Software nur für Plattformen, die nicht obsolet sind.
Und noch allgemein:
Ich möchte hier auf keinen Fall einen Glaubenskrieg auslösen und finde, dass alle Betriebssysteme ihre Daseinsberechtigung haben.
Mit unseren Linux-Profis auf Arbeit haben wir ein ausgezeichnetes Verhältnis (in meinem Büro habe ich sogar einen Plüsch-Tux
), selbst habe ich hier zu Hause mehre Mac mini und ein neueres MacBook im Einsatz, entwickeln tue ich allerdings zu 100% unter Windows.
Die gequotete Aussage bezüglich DOS-Programmen unter XP finde ich schon ein bisschen überheblich.
Windows 10 ist mittlerweile sehr weit fortgeschritten und hat rein gar nichts mehr mit solch alten Betriebssystemen wie XP oder Windows 7 zu tun.
Viele Grüße
Bruno