Buchempfehlung
Windows System Programming
Windows System Programming
Das Kompendium liefert viele interessante Informationen zur Windows-Programmierung auf Englisch. [Mehr Infos...]
FreeBASIC-Chat
Es sind Benutzer im FreeBASIC-Chat online.
(Stand:  )
FreeBASIC bei Twitter
Twitter FreeBASIC-Nachrichten jetzt auch über Twitter erhalten. Follow us!

libpruio-0.2 (D/A - I/O schnell und einfach)

Downloads » FreeBASIC on ARM

Download

Screenshot

Screenshot
Vergrößern
Bild vergrößern

Bewertung

Bisher keine Bewertung
(Zum Abstimmen auf die Sterne klicken.)

Dieser Download betrifft eine Treiber-Bibliothek, welche die Entwicklung von Software mit Ein- und Ausgabe-Funktionen wesentlich erleichtert.

Software-Entwicklung auf Beaglebone Hardware macht nicht wirklich Spaß, wenn digitale Ein- oder Ausgänge oder analoge Eingänge benötigt werden. Im Falle von digitalem I/O sind Probleme wie

an der Tagesordnung. Auch beim Lesen analoger Eingänge ist die Situation nicht besser

Die meisten Operationen müssen mit Root-Privilegien ausgeführt werden. Oder es macht bedeutenden Aufwand, den Zugriff für einen normalen Benutzer (nach jeder Änderung neu) zu konfigurieren. In jedem Fall ist die Zugriffsgeschwindigkeit durch langsame Datei-Operationen beschränkt.

All diese Fallstricke helfen nicht wirklich, wenn es darum geht sich auf die eigentliche Entwicklungsaufgabe zu konzentrieren.

Hier meine Lösung:

libpruio ist ein Treiber für die AM33xx Prozessor Familie. Er steuert die Systemkomponenten

in Echtzeit durch Software, die auf einem PRUSS (Programable Realtime Unit SubSystem) ausgeführt wird. Die Schnittstellen sind für einfache und sichere Handhabung ausgelegt, ermöglichen gleichzeitig aber auch eine vielfach schnellere Programmausführung als alle bisher bekannten Lösungen (Stand Mai 2014). Für die tägliche Arbeit werden keine mystischen Tabellen mit Prozessor-Pincodes oder GPIO-Verschlüsselungen benötigt. Stattdessen wird spezifiziert was sichbar ist (z. B. P8_11 = Header P8, Pin 11).

libpruio steuert

Die Bibliothek kann unter den Bedingungen der Lesser GNU Public Licence Version 2 (LGPLv2) verwendet werden. Das Paket enthält auch einen Wrapper für die Programmiersprache C und Beispiele (unter GPLv3) in FreeBASIC Syntax (die meisten auch in C Syntax):

NameFunktion
1.basMinimal-Beispiel
analyse.basAusgabe der Anfangskonfiguration der Komponenten
button.basStatusausgabe eines GPIO Input mit Pullup Widerstand (seit 0.0.2)
io_input.basAusgabe der digitalen und analogen Kanäle im IO Modus
pwm_cap.basTextausgabe der Messung eines PWM Ausgangs
sos.basBlinken einer User Led im SOS Code
stepper.basSteuern eines Stepper Motors
pwm_adc.basGrafische Anzeige dreier PWM Ausgänge
oszi.basGrafische Anzeige der analogen Eingänge
rb_oszi.basGrafische Anzeige zweier analogen Eingänge aus dem Ringspeicher
triggers.basStarten von Messungen durch Trigger im MM Modus

Die Dokumentation kann Externer Link!on-line eingesehen werden oder zum lokalen Gebrauch über diesen Verweis bezogen werden.

English

See Externer Link!english forum thread.