2010-01-23 4 views
6

Ich frage mich, ob irgendjemand von einem Ort im Internet weiß, dass ich Softwaremodule kaufen oder herunterladen kann, geschrieben in C oder C++, für die Interaktion zwischen Mikroprozessoren und anderen Komponenten, wie DACs, ADCs oder UARTs. So ähnlich wie ein Git-Hub für Embedded-C-Software. Gibt es diesen Ort?Ort, um Software für eingebettete Komponenten zu bekommen?

+0

Welcher Chiphersteller? –

+1

normalerweise sind diese Art von Bibliotheken frei. Sie finden sie unter dem Namen "Chip Support Library" oder kurz CSL. –

Antwort

1

Normalerweise liefert Ihnen der Gerätehersteller eine libc, die Sie für alle Low-Level-Sachen verwenden können.

0

zuerst, entscheiden welche Chip-Hersteller zu gehen ... als nächstes, gehen Sie zu ihrer offiziellen Website oder kontaktieren Sie sie, Sie würden die libs für die unterstützten IOS und andere Kommunikationsmaterialien.

+3

Es gibt eine Menge zu sagen, um dies andersherum zu tun. –

+0

@nobugz: Entschuldigung, aber ich konnte deinen Kommentar nicht verstehen ... Könntest du bitte etwas ausarbeiten? – wrapperm

+0

Finden Sie heraus, welcher Chip mit vielen verfügbaren Bibliotheken zuerst gut unterstützt wird, dann treffen Sie die Kaufentscheidung. –

2

Sie können auch einen Blick auf Jean Labrosse's "Embedded Systems Building Blocks" Buch werfen. Es hat einige gerade C-Bibliotheken für den Umgang mit UARTs, analogen I/O, Timern usw.

Natürlich müssen Sie sie noch an die Hardware-Implementierung des tatsächlichen Chips anschließen (wie andere Antworten angezeigt haben, können Sie Normalerweise erhalten Sie libs, um damit von den Chip-Anbietern zu helfen, aber sie können ein praktischer Wrapper sein, damit Sie Ihre höherstufige Software leichter von einem Gerät auf ein anderes verschieben können. Es gibt kein weltbewegendes Zeug, das besonders schwer alleine zu machen wäre, aber es ist für die Einnahme da, also warum nicht? Selbst wenn es nicht genau das ist, was Sie wollen, ist es ein Bein hoch.

3

Sie suchen möglicherweise nach etwas, das 'Board Support Package' oder BSP heißt. Für ein bestimmtes Betriebssystem verfügt es über eine Sammlung von Treibern/Bibliotheken, die Ihnen bei der Kommunikation mit der Hardwarekomponente helfen.

Sagen, dass einige Standard-Hardware-Schnittstellen für z.B. 16550 Uart könnte Treiber haben, die mit dem Betriebssystem geliefert werden.

0

Ok, was ist mit TI? BSPs sind mir bekannt, aber sie existieren nicht wirklich für Software, die unterhalb der O/S-Ebene existiert.

2., sagen wir, ich wollte Software wollte den TI MSP430 Microcontroller mit DAC7565 reden lassen. Ich kann wirklich keine Software finden, die diese beiden in irgendeiner zuverlässigen Weise verbindet.

Ich spreche von einem kompletten Softwarepaket, etwas, das einem Edelstein in Ruby entspricht, wo ich Funktionen wie "OutputVoltage (unsigned int Spannung, unsinged int channel)" nennen könnte und die Hardwareimplementierung nicht beachtet.

@nobugz Ja, ich stimme zu, aber das ist furchtbar zurückhaltend. C sollte wie Ruby, wo man nur auf das konzentrieren können, was Sie tun wollen, keine Zeit zu verbringen, sich von Software wegen der Verfügbarkeit einschränken ...

+0

Sie setzen Kommentare in die Box, die Antworten gehen. Das ist nicht, wie SO soll funktionieren. –

0

@Shaihi

Ich bin nicht, ich bin ein Software-Ingenieur mit einem Ingenieurbüro, das seine eigenen Boards kundenspezifisch gestaltet. Ich kann einfach nicht glauben, dass ich auf der ganzen Welt und der gesamten Geschichte der Softwareentwicklung die erste Person bin, die diesen Mikrocontroller und diesen DAC verbinden muss. Also muss es irgendwo existieren. Vielleicht kann ich es nicht in die Finger bekommen, aber irgendjemand hat das schon mal gemacht.

Ich bin ein sehr junger Ingenieur, aber es scheint nur, als ob es Hunderte oder Tausende von Leuten gibt, die am Ende immer wieder dieselbe Software schreiben. Und da es viele Softwareentwickler gibt, die sich sehr gut abstrahieren und wiederverwenden können, wette ich, dass es viele Ingenieure gibt, die die gleiche Software immer wieder neu schreiben, weil die Software sie Schreiben ist viel zu eng mit dieser spezifischen Anwendung verbunden.

Es scheint nur eine riesige Verschwendung von Engineering-Stunden.

+0

So funktioniert der Closed Source Code (zumindest so, wie ich es kenne). Sie können die Treiber im Embedded Linux Repository suchen und wenn Sie jemanden haben, der das BSP in der Hauptleitung hat, können Sie ihn kontaktieren, um die Hardware von ihm zu kaufen oder einfach die Implementierung zu nehmen. Ich weiß zum Beispiel, dass Sie mit Windows CE viel Code von einem neuen Code schreiben. Wir haben interne Projekte, die den Arbeitsaufwand reduzieren, aber da es nicht unser Hauptgeschäft ist, verkaufen wir es nicht. Ich kenne niemanden, der das tut. – Shaihi

+0

Ich denke du hast diese Frage für jemanden gepostet, der vielleicht eine Firma kennt, die das tut, also ignoriere meinen Kommentar :) – Shaihi

0

Haben Sie die Anwendungshinweise auf der Website des A/D-Anbieters überprüft? Sie haben sehr oft C-Code. Das Problem mit Assemblersprachencode besteht darin, dass es so viele verschiedene ADC- und Mikroprozessorhersteller und so viele verschiedene Möglichkeiten gibt, den Chip zu verkabeln, dass sie keine allgemeine Bibliothek bereitstellen können. Ein Programmierer möchte möglicherweise auch das Flag für das Ende der Konvertierung abfragen oder zulassen, dass der Chip unterbricht, wenn die Konvertierung abgeschlossen ist. Es ist sehr anwendungsspezifisch. Ihre beste Hoffnung ist, dass der Anbieter einen Beispielcode hat, der als Anleitung für die Verwendung des Chips dient. Die gute Nachricht ist, dass die Benutzerhandbücher für diese Peripheriegeräte viel besser sind als vor 20 Jahren.

Auch hat der Verkäufer wahrscheinlich Anwendungstechniker, die Ihnen bei Ihrem Design helfen werden.

Verwandte Themen