Lazarus Mega32u4 , seriell (CDC , Vitueller Comport)

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut

Lazarus Mega32u4 , seriell (CDC , Vitueller Comport)

Beitragvon Frank Ranis » 18. Jan 2019, 07:52 Lazarus Mega32u4 , seriell (CDC , Vitueller Comport)

Hallo ,

habe mir einen Arduino-Micro-Clone (Prozessor Mega32u4) selber gebaut (Eigenbau aus Interesse am Basteln).

Per Arduino-IDE nen Bootloader drauf gepackt und dann damit per Arduino-IDE diverse Beispiele ausprobiert.
Bis hier alles gut , läuft soweit.

Wechsel auf Lazarus:
Zunächst habe ich die laut

http://wiki.freepascal.org/AVR_Embedded ... Arduino/de

von Mathias (vielen Dank für die Anleitungen)

und FPCdeluxe nen passendes Lazarus gebaut und erfolgreich das erste Blinki-Prog kompiliert und per AVRDUDE auf den

Prozessor geladen .

Nun soll es an die Serielle Verbindung gehen , darann bin ich aber gescheitert.
Der Mega32u4 hat ja eine eingebaute USB-Schnittstelle (also ohne FTDI) .
Die Arduino-IDE packt beim Compilieren eines Programmes , ohne Zutun des Programmierers , eine USB-Routine vor den eigentlichen Programmcode ,
der dann die dauerhafte Einrichtung und Kommunikation per virtuellen COM-Port gewärleistet , wenn man den Arduino-Micro in PC steckt.

Frage:
Hat jemand schon so eine USB-Routine in Pascal oder ASM gebaut , die man dann vor dem Setupteil im Pascal-Programm einbauen kann ?

Gruß

Frank
www.flz-vortex.de
Frank Ranis
 
Beiträge: 149
Registriert: 24. Jan 2013, 21:22
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z) | 
CPU-Target: xxBit
Nach oben

Beitragvon kupferstecher » 18. Jan 2019, 10:55 Re: Lazarus Mega32u4 , seriell (CDC , Vitueller Comport)

Hallo Frank,

obs passenden Pascalcode oder Assembler gibt, weiß ich nicht. Du kannst aber versuchen den Arduinocode in deinem Lazarusprojekt einzubinden. Arduino ist ja C++, deren Klassen können nicht mit Freepascal angesprochen werden. "Normaler" C-Code ist aber recht einfach einzubinden. Letztlich benötigst du ja nur ein paar Funktionen aus der Arduino-Bibliothek, der Aufwand muss also nicht sehr groß sein.

Im ersten Link wird auch auf C++ eingegangen.

ftp://ftp.freepascal.org/fpc/docs-pdf/CinFreePascal.pdf
http://wiki.freepascal.org/Passing_Pasc ... C_Routines
http://wiki.freepascal.org/Creating_bin ... _libraries
kupferstecher
 
Beiträge: 217
Registriert: 17. Nov 2016, 11:52

Beitragvon Frank Ranis » 18. Jan 2019, 13:32 Re: Lazarus Mega32u4 , seriell (CDC , Vitueller Comport)

Hi,

kupferstecher hat geschrieben:Hallo Frank,

obs passenden Pascalcode oder Assembler gibt, weiß ich nicht. Du kannst aber versuchen den Arduinocode in deinem Lazarusprojekt einzubinden. Arduino ist ja C++, deren Klassen können nicht mit Freepascal angesprochen werden. "Normaler" C-Code ist aber recht einfach einzubinden. Letztlich benötigst du ja nur ein paar Funktionen aus der Arduino-Bibliothek, der Aufwand muss also nicht sehr groß sein.

Im ersten Link wird auch auf C++ eingegangen.

ftp://ftp.freepascal.org/fpc/docs-pdf/CinFreePascal.pdf
http://wiki.freepascal.org/Passing_Pasc ... C_Routines
http://wiki.freepascal.org/Creating_bin ... _libraries


danke für die Infos , aber das übersteigt dann doch meine Fähigkeiten .
Zumal ich nicht mal die Stelle im Arduino-Ordner finden kann , wo diese Einbindung des USB-CDC-Teiles stattfindet.
Und meine Kenntnisse bez. C gehen gegen Null.

Danke

Gruß

Frank
www.flz-vortex.de
Frank Ranis
 
Beiträge: 149
Registriert: 24. Jan 2013, 21:22
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z) | 
CPU-Target: xxBit
Nach oben

Beitragvon Timm Thaler » 18. Jan 2019, 14:16 Re: Lazarus Mega32u4 , seriell (CDC , Vitueller Comport)

Kannst auch mal nach AppNotes von Atmel zum Mega32u4 und Usb suchen. Da dürfte auch beschrieben sein, wie man den USB Port nutzt.
Timm Thaler
 
Beiträge: 944
Registriert: 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
Nach oben

• Themenende •

Zurück zu Freepascal



Wer ist online?

Mitglieder in diesem Forum: Exabot [Bot] und 3 Gäste

porpoises-institution
accuracy-worried