Noob@Work Gambas ich komme xD

Alle Fragen zur Programmierung, die nicht in die speziellen Themen passen
Antworten
MrZortrax
Foriker
Beiträge: 6
Registriert: Mi 15. Nov 2017, 21:46
Kontaktdaten:

Noob@Work Gambas ich komme xD

Beitrag von MrZortrax » Mi 15. Nov 2017, 21:54

Hi zusammen,

ich bin schon mehr oder weniger mit VBA vertraut hab einen Pi B und möchte jetzt mit Gambas damit irgendwas schönes lernen. Zunächst habe ich ein GIPO extenstion board von Sunfounder mit all möglichen schnickschnak an sensoren. Mit Python etc ist mir das alles zu umständlich weil ich dann wirklich wieder bei 0 anfangen muss. Hoffenung habe ich mit Gambas.

Hier brauch ich allerdings doch mehr hilfe als erwartet. Habe über Google ein paar Scripts gefunden wo man das einrichtet:
https://captainbodgit.blogspot.de/2013/ ... 3708015298

Allerdings fängts schon bei der deklaration der Library an. Er sagt mir immer unerwartete Library. Aber die liegt auch in dem Ordner wo sie liegen soll. Ich hab das ganze mal in open form geschrieben...

Kann mir jemand bitte helfen wie ich da am Besten anfange? Wie ich das deklariere wo ich nachlesen kann mit welchen befehlen ich was machen kann... Das wär absolut super!

Gruß

Stefan.

Benutzeravatar
gambi
Moderator
Beiträge: 321
Registriert: Mi 8. Mai 2013, 21:46
Kontaktdaten:

Re: Noob@Work Gambas ich komme xD

Beitrag von gambi » Do 16. Nov 2017, 22:17

Hallo Stefan,
willkommen im Forum.

Wenn ich das richtig sehe, musst du in diesem Fall Gambas mit Root-Rechten ausführen.
Für den Anfang würde ich dir empfehlen, erst mal mit kleineren Projekten zu beginnen, z.B. hier http://gambaswiki.org/wiki/howto/extern.

gg

MrZortrax
Foriker
Beiträge: 6
Registriert: Mi 15. Nov 2017, 21:46
Kontaktdaten:

Re: Noob@Work Gambas ich komme xD

Beitrag von MrZortrax » Fr 17. Nov 2017, 19:30

Hi gambi,

danke für die Rückmeldung. Ich habe die Rootberechtigung für Gambas schon eingestellt. Das müsste passen. Ich wurschtel mich mal durch den Link und melde mich dann wenn ich etwas know how gesammelt habe.

Danke

MrZortrax
Foriker
Beiträge: 6
Registriert: Mi 15. Nov 2017, 21:46
Kontaktdaten:

Re: Noob@Work Gambas ich komme xD

Beitrag von MrZortrax » Fr 17. Nov 2017, 19:55

^^ Oh oh oh oh...

Gut leider steht da nicht wo und wie ich die Library einbinden muss an welcher stelle. Dann fehlt mir die Info, ob der komplette Pfad wo diese liegt da rein muss mit Endung, oder ob eine Kurzbezeichnung das auch schon tut. Wie auch immer meldet mir Gambas immer Unerwartete Library in FMain.Class:15...

Hm komm ich nicht so richtig mit weiter.

MrZortrax
Foriker
Beiträge: 6
Registriert: Mi 15. Nov 2017, 21:46
Kontaktdaten:

Re: Noob@Work Gambas ich komme xD

Beitrag von MrZortrax » Fr 17. Nov 2017, 21:18

Hm das verstehe ich nicht.

Warum findet man darüber im Internet kaum etwas? Macht hier keiner was mit dem Pi oder ist Gambas einfach nichts dafür...

tux_
Moderator
Beiträge: 950
Registriert: Di 11. Nov 2008, 20:05
Kontaktdaten:

Re: Noob@Work Gambas ich komme xD

Beitrag von tux_ » Sa 18. Nov 2017, 00:02

Warum findet man darüber im Internet kaum etwas? Macht hier keiner was mit dem Pi oder ist Gambas einfach nichts dafür...
Gambas hat, soweit meine Erfahrung reicht, einen sehr kleinen Nutzerkreis. Die Antwort ist also wahrscheinlich: "sowohl als auch". Dass du die wiringPi-Bibliothek benutzen kannst, sollten wir hinbekommen, allerdings ist das eine C-Bibliothek ohne echte Anbindung an Gambas. Je nachdem, was in der Bibliothek so drin steckt, wird das manche Teile deines Gambas-Projekts zumindest scheußlich prozedural aussehen lassen und eventuell komplizierter machen als es in C notwendig waere (weil du z.B. den C-Praeprozessor nicht zur Verfuegung hast). Ich habe mir die Bibliothek aber nicht intensiv angesehen. Es kann sein, dass es gar nicht so schlimm ist.

Man koennte natuerlich eine Anbindung an Gambas schreiben (wie python bereits eine zu haben scheint), aber ich moechte nicht derjenige sein, der das tun muss. Das Problem liegt in den Pin-Events. Es bietet sich an, einen Interrupt an einem Pin in ein Event in Gambas zu uebersetzen. Leider sind die Pins keine Filehandles, auf die man mit den Bordmitteln von Gambas (naemlich select(2)) warten koennte. In wiringPi hast du waitForInterrupt, was das ganze Programm einfriert und auf einen Interrupt wartet. Das willst du deinem Programm meistens nicht antun. Die anderen Funktionen [1] sind auf die eine oder andere Weise in separate Prozesse ausgelagert und es gefaellt dem Gambas-Interpreter generell nicht, geforkt zu werden. Mit etwas Sorgfalt wird man das hinbekommen, aber es ist nicht trivial. Wenn du kein C-Programmierer bist, solltest du in diesem Fall vielleicht zu einem Task [2] greifen, in dem waitForInterrupt in einer Endlosschleife ausgefuehrt wird.

Wenn sich das kompliziert anhoert, dann liegt das daran, dass es wirklich nicht so einfach ist, aber eins nach dem anderen. Die Frage nach dem LIBRARY-Pfad sollte sich nach aufmerksamer Lektuere von gambis Link bereits geklaert haben, ja? Was den Fehler betrifft, hoert es sich nach einem einfachen Syntax-Fehler an. Zeig uns den Code.

[1] http://wiringpi.com/reference/priority- ... d-threads/
[2] http://gambaswiki.org/wiki/comp/gb/task
Achtung: Es passiert, dass ich einen frisch geschrieben Beitrag innerhalb von 10 Minuten noch 3-4 Mal aendere!

MrZortrax
Foriker
Beiträge: 6
Registriert: Mi 15. Nov 2017, 21:46
Kontaktdaten:

Re: Noob@Work Gambas ich komme xD

Beitrag von MrZortrax » Sa 18. Nov 2017, 09:51

Sollte ich mich dann etwa doch mit C++ Beschäftigen? Hintergrund warum ich überhaupt was mit dem Pi mache, das ding liegt leider nur rum mein Soundsystem im Auto, welches vor der Tür parkt ich bin im 1. Stock benutzt USB Devices für MP3s. Jetzt vergess ich den immer mitzunehmen und das ist auch lästig. Also wollte ich mit dem PI eine Schnittstelle bauen, mit der ich über Wlan die MP3s Synchronisieren kann und das der PI das USB Signal von Port A nach Port B durchschleift. Ob das überhaupt geht weiß ich nicht. Könnt ich mir aber vorstellen.

Zu deiner Ausfürung:
Das hört sich in der tat etwas komplizierter an. Ich bin davon ausgegangen aus der Library kann Gambas den hinterlegten Codes nutzen wie bei VBA bei bereits fertigen Modulen... Sieht ja bei der deklaration auch so aus, nur das ein Modul aus dieser externen Library kommt anstatt aus einem internen Modul.

Naja ich hab mal ein bisschen C++ gelernt aber das waren wirklich nur basics. Da fehlt mir noch viel und um grafische Anwendungen zu machen. Das geht ja auch nicht so einfach mit C++ soweit ich weiß. Dann wieder die Frage lieber C oder lieber C++.

Ich hab immer son bischen das Problem den Code direkt hierhin zu posten. Ich bin per Remoteverbindung mit dem PI verbunden allerdings scheint die kopieren und einfügen funktion trotz das sie aktiviert ist hier nicht zu funktionieren.

Zur Library:
Naja ich bin nach Anleitung aus den obrigen Link (aus dem ersten Post) vorgegangen:

Library "/usr/local/lib/libwiringPi"

Ich habe auch geprüft die Datei existiert auch in diesem Ordner. Mittlerweile melde ich mich aber statt mit pi mit root an. Gambas mit Root rechten zu starten wird dort auch beschrieben, das ändert sich aber so nicht ab.

Ich habe auch noch eine zweite Möglichkeis ausporbiert die auch nicht funktioniert. Da wird erstmal eine gefixte library verwendet die per console initialisiert wird und anschließend benutzt man das hier:

Public Extern delay(millis as integer) In "libwiringPi:1"

Löst aber den gleichen fehler aus.

Das schreibe ich übrigens alles in Form_Open... Es steht ja nirgendwo wo also an welcher Stelle man Librarys deklariert

Benutzeravatar
gambi
Moderator
Beiträge: 321
Registriert: Mi 8. Mai 2013, 21:46
Kontaktdaten:

Re: Noob@Work Gambas ich komme xD

Beitrag von gambi » Sa 18. Nov 2017, 12:15

Hallo Stefan,
MrZortrax hat geschrieben:
Sa 18. Nov 2017, 09:51
Das schreibe ich übrigens alles in Form_Open... Es steht ja nirgendwo wo also an welcher Stelle man Librarys deklariert
Schau dir doch mal mein Beispiel zur Nutzung der ALSA-Lib an viewtopic.php?f=33&t=4875&hilit=minivu

Da siehst du, wie du EXTERN benutzen kannst.

gg

MrZortrax
Foriker
Beiträge: 6
Registriert: Mi 15. Nov 2017, 21:46
Kontaktdaten:

Re: Noob@Work Gambas ich komme xD

Beitrag von MrZortrax » So 19. Nov 2017, 14:56

Das würde ich sehr gern tun, jedoch läd der immer anstatt die gz datei eine PHP datei runter wenn ich auf verweis speichern unter gehe. Womit hat das zu tun ist da vielleicht was nicht richtig verlinkt?

Ich hab grade probiert unter Windows kann ich das Archiv problemlos runterladen unter Jessy macht der browser zicken.

Lol hab mir deine Datei mal über Windows aufn usb stick gezogen also entpackt. Dort seh ich auch daten, aber im raspberry eingelegt sind die Ordner alle leer. Hä? Also so langsam zweifel ich daran, das Resbian Jessy ausgereift ist.

Benutzeravatar
gambi
Moderator
Beiträge: 321
Registriert: Mi 8. Mai 2013, 21:46
Kontaktdaten:

Re: Noob@Work Gambas ich komme xD

Beitrag von gambi » So 19. Nov 2017, 17:31

Wahrscheinlich musst du "Ansicht --> Verborgene Dateien ansehen" aktivieren. Kann sein, dass das bei dir etwas anders heißt.
Bei meinem Mint geht das auch über CTRL-H.

gg

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste