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
Lazarus Mega32u4 , seriell (CDC , Vitueller Comport)
-
- Beiträge: 210
- Registriert: Do 24. Jan 2013, 21:22
Lazarus Mega32u4 , seriell (CDC , Vitueller Comport)
www.flz-vortex.de
- kupferstecher
- Beiträge: 431
- Registriert: Do 17. Nov 2016, 11:52
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
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
-
- Beiträge: 210
- Registriert: Do 24. Jan 2013, 21:22
Re: Lazarus Mega32u4 , seriell (CDC , Vitueller Comport)
Hi,
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
danke für die Infos , aber das übersteigt dann doch meine Fähigkeiten .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
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
-
- 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)
Kannst auch mal nach AppNotes von Atmel zum Mega32u4 und Usb suchen. Da dürfte auch beschrieben sein, wie man den USB Port nutzt.