Die richtigen Tools zum Entwickeln elektronischer Systeme

| Autor / Redakteur: Dr. Val Lynch und Steve Norman * / Michael Eckstein

Passender Werkzeugsatz: Projektaufgaben, aber auch eigene Vorlieben entscheiden, welche Entwicklungs-Tools zum Einsatz kommen.
Passender Werkzeugsatz: Projektaufgaben, aber auch eigene Vorlieben entscheiden, welche Entwicklungs-Tools zum Einsatz kommen. (Bild: ©dimdimich - stock.adobe.com)

Ohne die richtigen Werkzeuge ist das Entwickeln von elektronischen Geräten schlicht nicht möglich. Doch welche Tools sind für welche Aufgabe geeignet? Worauf sollten Entwickler bei der Auswahl achten?

Tools sind zentrale Elemente im Designprozess von elektronischen Systemen. Manche Entwicklungswerkzeuge unterstützen Entwickler dabei, ihre Arbeit effizient in guter Qualität zu erledigen. Andere hingegen sind ein absolutes Muss im Prozess – ohne sie lässt sich das System nicht zum Laufen bringen. Die folgenden Definitionen sollen als Grundlage für diesen Fachbeitrag dienen:

  • CAD: Computer-Aided Design bezieht sich auf das Nutzen von Computertechnik, sowohl von Soft- und Hardware, als Unterstützung beim Erstellen und Realisieren von Designs. Es gibt eine Reihe von CAD-basierten Tools für die unterschiedlichen Gebiete des Entwicklungsprozesses von elektronischen Produkten.
  • Software Build: Dieser Begriff bezeichnet das Zusammenführen von Code-Blöcken zu einem ausführbaren Code, der sich in einen Mikrocomputer oder Mikrocontroller laden und dort ausführen lässt. Es gibt diverse Software-Build-Tools für die verschiedenen Phasen des Build-Prozesses.
  • IDE: Integrated Development Environments (Integrierte Entwicklungsumgebungen) sind Computerprogramme, die einzelne Tools unter einer bedienerfreundlichen Benutzerschnittstelle zusammenführen. Die meisten Software-Entwickler interagieren mit ihren Tools über eine IDE. Diese IDEs bestehen oft aus Software-Build-Tools sowie Tools zur Codeverwaltung, für Tests mit Debuggern und Simulatoren sowie Dienstprogrammen, etwa zum Erstellen von grafischen Bedienoberflächen (GUI, Graphical User Interfaces). Weitere Beispiele für solche Tools sind Test-Server, Code-Generatoren und Programmierer zur Installation von ausführbarem Code auf Mikrocontrollern. Es stehen viele Werkzeuge zur Wahl.

Entwickler müssen entscheiden, welche Werkzeuge sie zum Ausführen zum Erstellen der Hard- und Software-Komponenten benötigen. Der Bedarf ändert sich von Projekt zu Projekt. Um diese Tools kennenzulernen und kompetent einsetzen zu können, müssen sie viel Zeit investieren. Hardware-Entwickler nutzen CAD-Tools für das Entwickeln der Elektronik und des Board-Layouts.

Diese Tools sind entscheidend für den Entwicklungsprozess und umfassen oft Funktionen zum Erstellen von Bibliotheken sowie zum Simulieren von elektronischen Schaltungen. CAD-Tools können Entwickler auch beim Erfassen der Systemanforderungen sowie beim Erstellen der dafür erforderlichen Architektur unterstützen.

Guter Support vereinfacht die Entwicklungsarbeit

Das Bild oben rechts zeigt vereinfacht den Build-Prozess für den Aufbau einer Embedded-Softwarekomponente. Die schattierten Bereiche zeigen, wo für den Aufbau der Software wichtige Tools erforderlich sind. Diese sind standardmäßig Teil einer IDE. Weitere Tools helfen dem Entwickler, den ausführbaren Code in den Mikrocontroller zu programmieren.

Diese können ebenfalls wie Simulations- und System-Debugging-Tools zur IDE gehören. Oft erfolgt die Tool-Auswahl auf der Basis ihrer Kosten. Es sind daher diejenigen IDEs zu evaluieren, die bei einem gegebenem Budget ein Höchstmaß an Unterstützung bieten.

Die richtigen Werkzeuge für das Code-Debugging

Die meisten Tools auf dem Markt helfen Entwicklern, Fehler während des Build-Prozesses aufzufinden. Eine der eingesetzten Möglichkeiten ist, im Code gefundene Syntax-Fehler farblich zu markieren. Der wichtigste Aspekt dürfte allerdings die Unterstützung von Versuchsläufen und Code-Tests sein, also das Code-Debugging. Für den Anwender ist es äußerst frustrierend, wenn er kein effektives Debugging durchführen kann.

Ohne effiziente Debugging-Hilfsmittel nimmt der Zeitaufwand zum Beheben von Bugs exponentiell zu. Renesas liefert seine Mikrocontroller-Familie Synergy mit einer Reihe unterstützender Tools. Einige davon sind proprietäre Renesas-Software-Entwicklungen, andere stammen von Drittanbietern sowie aus dem Open-Source-Bereich. Alle bieten wertvolle Unterstützung für Debugging und Test.

Wichtig: Unterstützung für die Code-Portabilität

Portabilität ist ein wichtiger Faktor bei der Software-Entwicklung. Nur sehr wenige Designs beginnen tatsächlich bei null. Das Wiederverwenden oder Rekonfigurieren von bestehendem Code ist entscheidend, wenn eine Investition in eine Software-Entwicklung sich bestmöglich amortisieren soll. Besonders wichtig wird dies, wenn der Code in einer Familie von Produkten zum Einsatz kommt.

Schnittstelle: Auf dem Mikrocontroller läuft die Embedded-Software. Deren Programmierung erfordert den Einsatz geeigneter Werkzeuge für jeden Schritt des Build-Prozesses.
Schnittstelle: Auf dem Mikrocontroller läuft die Embedded-Software. Deren Programmierung erfordert den Einsatz geeigneter Werkzeuge für jeden Schritt des Build-Prozesses. (Bild: Renesas Electronics)

Die entscheidende Frage lautet dann: Unterstützt eine Tool-Palette das Wiederverwenden und Portieren? Hersteller bieten oft Migrationspfade zu größeren oder kleineren Varianten eines Prozessors. Wenn sich die Prozessor-Pins allerdings zwischen den verschiedenen Varianten unterscheiden, nimmt der Zeitaufwand für das Portieren des Codes schnell zu. Die Synergy-Plattform wurde speziell für Code-Portabilität ausgelegt. Pin-Kompatibilität ist daher ein wichtiges Funktionsmerkmal. Aus diesem Grund unterstützen diese Tools Entwickler bestmöglich beim Zuweisen von Pins mit minimalem Arbeitsaufwand.

Lizenzgebühren bei der Budgetplanung beachten

Ein weiterer, bei der Auswahl von Tools zu berücksichtigender Aspekt ist das Lizenzmanagement. Die Lizenzgebühren für proprietäre Tool-Sets werden meist pro Arbeitsplatz berechnet. Bei manchen sind die Lizenzgebühren für eine begrenzte Zeitdauer oder für einen begrenzten Einsatz kostenlos. Solche Werkzeuge sind zum Beispiel fürs Testen von Tools oder einem Prozessor eine gute Wahl. Die zugrundeliegenden Kosten sollten jedoch immer in die Budgetplanung einbezogen werden, um unerwartete signifikante Kosten zu vermeiden.

Oft kommen auch Open-Source-Tools zum Einsatz. Diese gelten als kostengünstig und sind aufgrund des Supports durch die Community in der Regel benutzerfreundlich. Mögliche Lizenzfragen sollte dennoch unbedingt überprüft werden. Nur so lässt sich sicherstellen, dass ihre Nutzung keine Auswirkungen auf das Unternehmen hat, ein Produkt kommerziell auf den Markt bringen zu können oder sein geistiges Eigentum zu schützen.

Ein Werkzeug soll helfen, nicht belasten

Qualität, verfügbarer Support und der Funktionsumfang sollten bei der Tool-Auswahl zu den Entscheidungskriterien für die Anschaffung zählen. Unabhängig davon, welches Tool letztendlich das Rennen macht, sollte es dem Entwickler das Leben erleichtern. Hat der Entwickler hingegen mit seinem Tool zu kämpfen, dann ist es nicht die richtige Wahl für die gegebene Aufgabe. Tools sollten immer eine Unterstützung und kein Hindernis sein, denn eine möglichst einfache Entwicklung beeinflusst direkt die Profitabilität eines Geschäftsmodells.

Die Kunst, maximalem Mehrwert zu erzielen, liegt in der Auswahl der richtigen Tools. Wer Entwicklern die am besten geeigneten Tools bereitstellt, minimiert die Entwicklungszeit und maximiert den Nutzen.

* Dr. Val Lynch ist CEO von AND Technology Research

* Steve Norman ist Manager Global Ecosystems, Renesas Electronics Europe

Kommentar zu diesem Artikel abgeben

Schreiben Sie uns hier Ihre Meinung ...
(nicht registrierter User)

Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
Kommentar abschicken
copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 45080673 / Tools & Softwarekomponenten)