Hallo Profilab Gemeinde,
ich versuche Daten von PL zu einem Arduino zu senden. Leider klappt es nicht...
Ich haben eine ganz einfache Schaltung mit COM Zahl senden aufgebaut (siehe Anhang). Dann die richtige Adresse gewählt, COM6. Sonst erstmal alles gleich gelassen (z.B. Baud 9600).
Dann habe ich einen USB to TTL adapter an Pin 2 und 3 eines Arduino Unos angeschlossen, sowie GND verbunden und diesen Code aufgespielt.
Ich hatte gehofft, dass irgendetwas ankommt wenn ich den Taster bei PL drücke.
Kann mir bitte jemand helfen?
danke ben
#include <SoftwareSerial.h>
SoftwareSerial Serial1(2, 3); // RX, TX
void setup() {
Serial.begin(9600);
Serial1.begin(9600);
Serial.print("Test");
}
void loop() {
// put your main code here, to run repeatedly:
//read from port 1, send to port 0
if (Serial1.available()){
int inByte = Serial1.read();
Serial.write(inByte);
}
COM Zahl senden zu Arduino
COM Zahl senden zu Arduino
- Dateianhänge
-
- comZahlSenden.png (84.41 KiB) 3833 mal betrachtet
Re: COM Zahl senden zu Arduino
Etwas weiter bin ich gekommen. Habe dieses einfache Programm gefunden umd Daten vom PC zum arduino zu senden (ohne PL).
https://educ8s.tv/c-application-arduino ... e_vignette
Damit funktioniert die Kommunikation! Ich kann etwas in das Progamm schreiben und sehe das dann auf dem Serial Monitor.
Also scheint mein Fehler in PL zu liegen. Aber wo?
https://educ8s.tv/c-application-arduino ... e_vignette
Damit funktioniert die Kommunikation! Ich kann etwas in das Progamm schreiben und sehe das dann auf dem Serial Monitor.
Also scheint mein Fehler in PL zu liegen. Aber wo?
- Dateianhänge
-
- Screenshot 2024-01-27 181700.png (187.8 KiB) 3828 mal betrachtet
Re: COM Zahl senden zu Arduino
Wenn der Arduino Serial Monitor die Schnitstelle öffnet, kann sie nicht anderswo (Profilab) parallel verwendet werden. Das hatten wir kürzlich schon einmal. Also Serial Monitor oder Arduino IDE schliessen.
viewtopic.php?f=53&t=3116
viewtopic.php?f=53&t=3116
ABACOM support
Re: COM Zahl senden zu Arduino
Danke für eure große Geduld mit unseren dummen Fragen!
Jetzt klappt es, leider weiss ich nicht was ich geändert habe .
Ich will versuchen das aufzuschreiben, evtl hilft es ja noch jemand anderem.
Dass ich jede Schnittstelle nur einmal nutzen kann, habe ich verstanden. Daher habe ich einen USB to TTL CP2102 Converter genutzt um eine zweite Schnittstelle zu bekommen. Über den USB to TTL an pin 2 u 3 rede ich mit PL über com 6. Der serial monitor ist an Com 5 über die normale usb Verbindung des nano.
jetzt kann man an PL einen Wert einstellen und über den Taster an den Arduino schicken.
Das adruino program oben funktionert auch, liefert aber die gesendete Zahl nur als String, um damit rechnen zu können habe ich das mit etwas Hilfe von ChatGPT in eine Float Variable umgewandelt. Ich hänge die PL und die arduino datei an.
Danke auch für das coole Programm, PL ist wirklich klasse!
gruss, ben
Jetzt klappt es, leider weiss ich nicht was ich geändert habe .
Ich will versuchen das aufzuschreiben, evtl hilft es ja noch jemand anderem.
Dass ich jede Schnittstelle nur einmal nutzen kann, habe ich verstanden. Daher habe ich einen USB to TTL CP2102 Converter genutzt um eine zweite Schnittstelle zu bekommen. Über den USB to TTL an pin 2 u 3 rede ich mit PL über com 6. Der serial monitor ist an Com 5 über die normale usb Verbindung des nano.
jetzt kann man an PL einen Wert einstellen und über den Taster an den Arduino schicken.
Das adruino program oben funktionert auch, liefert aber die gesendete Zahl nur als String, um damit rechnen zu können habe ich das mit etwas Hilfe von ChatGPT in eine Float Variable umgewandelt. Ich hänge die PL und die arduino datei an.
Danke auch für das coole Programm, PL ist wirklich klasse!
gruss, ben
- Dateianhänge
-
- sendToArduino.zip
- (1.57 KiB) 308-mal heruntergeladen
Re: COM Zahl senden zu Arduino
Inzwischen bin ich wieder etwas schlauer geworden, ich habe es geschafft zu senden und zu empfangen.
Siehe Beispiel anbei.
Was ich unbedingt empfehlen kann ist zum Testen einen FTDI Adapter zu verwenden. Dann könnt ihr profilab über den FTDI Adapter (https://www.youtube.com/watch?v=Cb21y910CKE) mit dem Arduino verbinden und über den normalen USB Port wie gewohnt den Serial Monitor verwenden. Wenn es dann klappt, könnt ihr den FTDI Adapter entfernen und PL über den normalen USB Port verbinden (siehe // *** mit <SoftwareSerial.h> im code), dann aber die Arduino IDE nach dem Compilieren schliessen.
Ich verwende das Ganze um 8 digtale und einen analoges Signal zu senden und dann zurück zu PL zu schicken um zu prüfen ob alles richtig angekommen ist. Manchmal verliert der arduino leider die Verbindung (weiss nicht warum) dann starte ich den PC über eine .bat Datei aus PL neu.
Evtl hilft das ja jemand der/die ein ähnliches Problem hat.
Siehe Beispiel anbei.
Was ich unbedingt empfehlen kann ist zum Testen einen FTDI Adapter zu verwenden. Dann könnt ihr profilab über den FTDI Adapter (https://www.youtube.com/watch?v=Cb21y910CKE) mit dem Arduino verbinden und über den normalen USB Port wie gewohnt den Serial Monitor verwenden. Wenn es dann klappt, könnt ihr den FTDI Adapter entfernen und PL über den normalen USB Port verbinden (siehe // *** mit <SoftwareSerial.h> im code), dann aber die Arduino IDE nach dem Compilieren schliessen.
Ich verwende das Ganze um 8 digtale und einen analoges Signal zu senden und dann zurück zu PL zu schicken um zu prüfen ob alles richtig angekommen ist. Manchmal verliert der arduino leider die Verbindung (weiss nicht warum) dann starte ich den PC über eine .bat Datei aus PL neu.
Evtl hilft das ja jemand der/die ein ähnliches Problem hat.
Re: COM Zahl senden zu Arduino
Hi Ben-N
Dein Empfangsbaustein der Schnittstelle sollte mit einem eigenen Takt versorgt werden damit rechtzeitig und schnell genug die Daten abgeholt werden
Anbei mal ein Beispiel
Gruß
Dein Empfangsbaustein der Schnittstelle sollte mit einem eigenen Takt versorgt werden damit rechtzeitig und schnell genug die Daten abgeholt werden
Anbei mal ein Beispiel
Gruß