Pascalio Probleme

Rund um die LCL und andere Komponenten
Antworten
Marc
Lazarusforum e. V.
Beiträge: 208
Registriert: Fr 11. Nov 2016, 14:09
OS, Lazarus, FPC: Linux Mint 20 (WinXP VBox)
CPU-Target: 64Bit
Wohnort: Schweiz

Pascalio Probleme

Beitrag von Marc »

Ich versuche mich gerade an Pascalio. Habe das installiert wie angegeben, also pascalio.lpk geöffnet und 'compile' gemacht.
Wenn ich ein Projekt erstelle oder einen der enthaltenen Tests machen will, findet Lazarus die Units trotzdem nicht.
Ich muss also in Projekt Options in Paths jedesmal angeben wo die Units sind. Ist das normal?

Es gibt noch ein zweites .lpk File die pascaliogui.lpk. Wofür ist die?
Muss das mit installiert werden?

Dann habe ich ein Beispiel probiert.

Code: Alles auswählen

program project1;
 
{$mode objfpc}{$H+}
 
uses
  bcm2708;
 
//int main(int argc, char **argv)
procedure TestProgram;
var
  g, rep: cint;
begin
  // Set up gpi pointer for direct register access
  setup_io();
 
  // Switch GPIO 7..11 to output mode
 
 (************************************************************************\
  * You are about to change the GPIO settings of your computer.          *
  * Mess this up and it will stop working!                               *
  * It might be a good idea to 'sync' before running this program        *
  * so at least you still have your code changes written to the SD-card! *
 \************************************************************************)

 
  // Set GPIO pins 7-11 to output
  for g := 7 to 11 do
  begin
    INP_GPIO(g); // must use INP_GPIO before we can use OUT_GPIO
    OUT_GPIO(g);
  end;
 
  for rep := 0 to 9 do
  begin
     for g := 7 to 11 do
     begin
       GPIO_SET^ := 1 shl g;
       sleep(1);
     end;
     for g := 7 to 11 do
     begin
       GPIO_CLR^ := 1 shl g;
       sleep(1);
     end;
  end;
end; // main
 
begin
  procedure TestProgram;
end.


Das kann so doch nicht funktionieren?
Ich musste erstmal

Code: Alles auswählen

 uses baseunix
für die Deklaration

Code: Alles auswählen

 cint

und die unit

Code: Alles auswählen

 sysutils
für die funktion

Code: Alles auswählen

 sleep
einfügen.
Die Prozedur Testprogram hat so irgendwie auch nicht funktioniert.

Habe ich da was komplett falsch verstanden oder ist der Code wirklich nicht so nicht lauffähig.
Good code comes from experience, experience comes from bad code.

Timm Thaler
Beiträge: 1224
Registriert: So 20. Mär 2016, 22:14
OS, Lazarus, FPC: Win7-64bit Laz1.9.0 FPC3.1.1 für Win, RPi, AVR embedded
CPU-Target: Raspberry Pi 3

Re: Pascalio Probleme

Beitrag von Timm Thaler »

Und uses bcm2708; dürfte auch falsch sein, bei den neuen Raspies ist das bcm2835.

Du machst das sicher wegen des SPI. Ich bin da auch gerade dran und habe vor 2 Minuten einen entscheidenden Erfolg erzielt: Byte raus, Byte rein!

Marc
Lazarusforum e. V.
Beiträge: 208
Registriert: Fr 11. Nov 2016, 14:09
OS, Lazarus, FPC: Linux Mint 20 (WinXP VBox)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Pascalio Probleme

Beitrag von Marc »

Danke für den Tip. Ja ich will irgendeine von diesen Packages zum laufen kriegen.
Mir gehts im Moment tatsächlich um das SPI aber auch um den Rest.
Das 2708 für den verwendeten Chip steht ist mir noch nicht aufgefallen.

Hier : https://github.com/raspberrypi/linux/issues/22 steht : Technically 2708 is the family, and 2835 is a specific implementation.

Dann fast Ok aber da es ein Raspi 3 ist müsste es ev. 2837 sein? Aber es gibt sowieso nur eine bcm2708.pas Unit.

Super das es bei Dir läuft. :-)
Good code comes from experience, experience comes from bad code.

Timm Thaler
Beiträge: 1224
Registriert: So 20. Mär 2016, 22:14
OS, Lazarus, FPC: Win7-64bit Laz1.9.0 FPC3.1.1 für Win, RPi, AVR embedded
CPU-Target: Raspberry Pi 3

Re: Pascalio Probleme

Beitrag von Timm Thaler »

Marc hat geschrieben:Super das es bei Dir läuft. :-)


Ja, aber: Ich hab zwar die pascalio auch entdeckt, aber ich hab das erstmal mit eigenen Dateizugriffen umgesetzt. Inzwischen habe ich festgestellt, dass das die pascalio auch so macht.

Die Zugriffe sind gar nicht so schwierig, wenn man einmal verstanden hat was passiert und vor allem, welche Bits wo hingehören.

Antworten