Ein Array als Funktionsparameter ohne vorherige Typdeklaration ist ein Open Array (Dokumentation) und damit weder statischer noch dynamischer Array.Timm Thaler hat geschrieben:Aber ist das Array in der Routine nun ein "dynamisches Array" in dem Sinn, den Pascal dafür verwendet (http://wiki.freepascal.org/Dynamic_array), oder kann man das so nicht sagen?
Tutorial Arduino programmieren,
-
- Lazarusforum e. V.
- Beiträge: 3177
- Registriert: Di 22. Jul 2008, 19:27
- OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
- CPU-Target: 32bit x86 armhf
- Wohnort: Köln
- Kontaktdaten:
Re: Tutorial Arduino programmieren,
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
-
- Lazarusforum e. V.
- Beiträge: 7192
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
Re: Tutorial Arduino programmieren,
Ich habe mal das Tutorial ausprobiert und kann nun erfolgreich ein Arduino Nano flashen....
Dabei gibt es derzeit noch zwei Sachen, die mir bisher aufgefallen sind:
1. Nach dem Uploaden, möchte die IDE gerne das Programm starten, welches es natürlich nicht gibt. Ich habe die Taste F9 wie in der Anleitung beschrieben geändert...
2. http://wiki.freepascal.org/AVR_Embedded ... _Delays/de
Da gibt es die Beispiel Funktion: delay_ms
Jedoch wird nicht erwähnt, welchen wert man bei fcpu angeben muss/könnte...
Ansonsten sehr gut geschrieben. Selten so ein Detail reiches Tutorial gelesen....
Die Hex Datei vom Blink Beispiel in Lazarus ist etwas größer als die von Arduino....
Was ich etwas schade finde ist noch die Handharbung: z.b. wenn sich der USB Port ändert, muss ich umständlich in das Dialog und es dort anpassen.
Und auch, wenn ich ein anderen MC ausprobieren möchte...
Schöner wäre es hier, ein Dialog zu haben, vielleicht sogar im OI? Dann könnten relativ leicht einige Parameter ausgewählt werden...
Ich finde es aber schon erstaunlich, wie einfach es inzwischen ist, das ganze erst mal zum Laufen zu bekommen....
Dabei gibt es derzeit noch zwei Sachen, die mir bisher aufgefallen sind:
1. Nach dem Uploaden, möchte die IDE gerne das Programm starten, welches es natürlich nicht gibt. Ich habe die Taste F9 wie in der Anleitung beschrieben geändert...
2. http://wiki.freepascal.org/AVR_Embedded ... _Delays/de
Da gibt es die Beispiel Funktion: delay_ms
Jedoch wird nicht erwähnt, welchen wert man bei fcpu angeben muss/könnte...
Ansonsten sehr gut geschrieben. Selten so ein Detail reiches Tutorial gelesen....
Die Hex Datei vom Blink Beispiel in Lazarus ist etwas größer als die von Arduino....
Was ich etwas schade finde ist noch die Handharbung: z.b. wenn sich der USB Port ändert, muss ich umständlich in das Dialog und es dort anpassen.
Und auch, wenn ich ein anderen MC ausprobieren möchte...
Schöner wäre es hier, ein Dialog zu haben, vielleicht sogar im OI? Dann könnten relativ leicht einige Parameter ausgewählt werden...
Ich finde es aber schon erstaunlich, wie einfach es inzwischen ist, das ganze erst mal zum Laufen zu bekommen....
MFG
Michael Springwald
Michael Springwald
-
- 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: Tutorial Arduino programmieren,
FPC macht wahrscheinlich mehr Sram Initialisierung am Anfang, das verläuft sich aber bei größeren Programmen.pluto hat geschrieben:Die Hex Datei vom Blink Beispiel in Lazarus ist etwas größer als die von Arduino....
-
- Beiträge: 6907
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Tutorial Arduino programmieren,
Dies ist leider ein alt bekanntes Problem. Lazarus wäre dafür fähig, man müsste (nur) eine passende Package coden. Siehe "Web-Project (pas2js)".Was ich etwas schade finde ist noch die Handharbung: z.b. wenn sich der USB Port ändert, muss ich umständlich in das Dialog und es dort anpassen.
Und auch, wenn ich ein anderen MC ausprobieren möchte...
Schöner wäre es hier, ein Dialog zu haben, vielleicht sogar im OI? Dann könnten relativ leicht einige Parameter ausgewählt werden...
Aber man müsste ein Programmierer finden, welcher das in Lazarus umsetzt.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
-
- Lazarusforum e. V.
- Beiträge: 7192
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
Re: Tutorial Arduino programmieren,
Es ist auch gar nicht so viel:FPC macht wahrscheinlich mehr Sram Initialisierung am Anfang, das verläuft sich aber bei größeren Programmen.
Arduino Blick Beispiel 928 Bytes
Das Blinkbeispiel vom Tutorial 991 Bytes
Ja, dass wäre Praktisch.. Ich könnte mir nur ein hilfsprogramm vorstellen im Moment, welches die entsprechende Config Ändern.Aber man müsste ein Programmierer finden, welcher das in Lazarus umsetzt.
Ich hoffe da findet sich jemand...
Ich frage mich: Gehen vielleicht sogar Makros? bzw. #defines? oder ähnliches?
Erst mal bin ich Überrascht, dass es relativ einfach ist, dass einzurichten und das es läuft...
MFG
Michael Springwald
Michael Springwald
-
- Beiträge: 6907
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Tutorial Arduino programmieren,
Mal schauen, ob man den Quelltext von "Web-Project (pas2js)" findet, vielleicht könnte man dis dann modifizieren.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
-
- Beiträge: 6907
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Tutorial Arduino programmieren,
Mit einer Abänderung dieser Package könnte man vielleicht AVR-Optionen einstellen.
http://svn.freepascal.org:8080/mfriebe/ ... nts/pas2js
http://svn.freepascal.org:8080/mfriebe/ ... nts/pas2js
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
-
- Lazarusforum e. V.
- Beiträge: 7192
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
Re: Tutorial Arduino programmieren,
Bei der Beispielfunktion
Gibt es ein Fehlermeldung: project1.pas(98,57) Warning: Calling convention directive ignored: "OldFPCCall"
Ich glaube darum klappt dieses Beispiel auch nicht...
Code: Alles auswählen
procedure UART_RX_Empfang; public Name 'USART__RX_ISR'; interrupt;
Ich glaube darum klappt dieses Beispiel auch nicht...
MFG
Michael Springwald
Michael Springwald
-
- Beiträge: 6907
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Tutorial Arduino programmieren,
Diese Warnung bekomme ich auch.Gibt es ein Fehlermeldung: project1.pas(98,57) Warning: Calling convention directive ignored: "OldFPCCall"
Was für einen AVR hast du probiert ?
Hast du dieses Beispiel hier probiert ? http://wiki.freepascal.org/AVR_Embedded ... angspuffer
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
-
- Beiträge: 6907
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Tutorial Arduino programmieren,
Schon mal ein Anfang. 

Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
-
- 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: Tutorial Arduino programmieren,
Ups, wo kommt das denn her?Mathias hat geschrieben:Schon mal ein Anfang.
Ich geb zu, ich nehm momentan immer ein vorhandenes AVR-Projekt und kopiere das, passe dann Unitnamen, Projektpfade, Compilereinstellungen an.
Das mach ich aber bei anderen Projekten auch so, weil man ja seltenst von Grund auf neu anfängt...

-
- Beiträge: 6907
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Tutorial Arduino programmieren,
Ich habe an der pas2js rumgebastelt.Ups, wo kommt das denn her?
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
-
- Lazarusforum e. V.
- Beiträge: 7192
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
Re: Tutorial Arduino programmieren,
Das was angegeben wurde im ersten Tutorial unterWas für einen AVR hast du probiert ?
"AVR-Crosscompiler bauen:"
Das habe ich übernommen.
Ja, genau...ast du dieses Beispiel hier probiert ? http://wiki.freepascal.org/AVR_Embedded ... angspuffer
MFG
Michael Springwald
Michael Springwald
-
- Beiträge: 6907
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Tutorial Arduino programmieren,
Hast du einen Atmeha328 verwendet, oder etwas anderes ?
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
-
- Lazarusforum e. V.
- Beiträge: 7192
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
Re: Tutorial Arduino programmieren,
Ich habe ein Arduino Nano mit einem atMega328 verwendet.
MFG
Michael Springwald
Michael Springwald