Lazarus Mega32u4 , seriell (CDC , Vitueller Comport)

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
Antworten
Frank Ranis
Beiträge: 201
Registriert: Do 24. Jan 2013, 21:22

Lazarus Mega32u4 , seriell (CDC , Vitueller Comport)

Beitrag von Frank Ranis »

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

Benutzeravatar
kupferstecher
Beiträge: 418
Registriert: Do 17. Nov 2016, 11:52

Re: Lazarus Mega32u4 , seriell (CDC , Vitueller Comport)

Beitrag von kupferstecher »

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

Frank Ranis
Beiträge: 201
Registriert: Do 24. Jan 2013, 21:22

Re: Lazarus Mega32u4 , seriell (CDC , Vitueller Comport)

Beitrag von Frank Ranis »

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

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: Lazarus Mega32u4 , seriell (CDC , Vitueller Comport)

Beitrag von Timm Thaler »

Kannst auch mal nach AppNotes von Atmel zum Mega32u4 und Usb suchen. Da dürfte auch beschrieben sein, wie man den USB Port nutzt.

Antworten