INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Arduino interconnect
02.06.2015, 15:16
Beitrag #1
Arduino interconnect
Ich möchte folgendes realisieren. An Arduino A soll ein LCD Panel angeschlossen werden. Er übernimmt auch die Berechnung der Grafiken u.ä. die auf dem LCD angezeigt werden.
Arduino B soll lediglich Sensorwerte abfragen, also zur I/O genutzt werden.

Möglichkeiten diese zu verbinden gibt es sicher viele. Hab bspw die ExtraCore Library gefunden. Eigentlich macht die genau was ich benötige, aber ich sehe da keine Möglichkeit Interrupts einzubinden. Dies benötige ich aber da ich die Drehzahl messen will. Wie stelle ich das an?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
02.06.2015, 15:56
Beitrag #2
RE: Arduino interconnect
Hi,
verbinde die Teile doch einfach über die serielle Schnittstelle.
Gruß,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
02.06.2015, 16:12 (Dieser Beitrag wurde zuletzt bearbeitet: 02.06.2015 16:18 von DaniDD.)
Beitrag #3
RE: Arduino interconnect
Es geht nicht um die Verkabelung, eher um einen einfachen Weg für den Datenaustausch.

Ok, hab jetzt selber heraus gefunden dass es eigentlich mit Wire. doch recht simpel funktionieren müsste.
Ist eigentlich der I²C Bus bei den Due und dem Mega/Uno auf einem identischen Pegel oder brauche ich einen Pegelwandler?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
03.06.2015, 06:14
Beitrag #4
RE: Arduino interconnect
(02.06.2015 22:38)t.a.f.k.a.Z. schrieb:  Due: 3,3 Volt
Mega/Uno: 5 Volt
also ist ein Level-Shifter durchaus angebracht

Moin,
warte mal.... normalerweise ist auf den Arduinos kein Pull Up Widerstand für die I2C Leitungen drauf....auser beim DUE bei TWI-0 wobei der eh auf 3,3V läuft. Siehe Text:

I2C Beschreibung DUE:
TWI 2: SDA1 and SCL1.
Support TWI communication using the Wire library. SDA1 and SCL1 can be controlled using the Wire1 class provided by the Wire library. While SDA and SCL have internal pullup resistors, SDA1 and SCL1 have not. Adding two pullup resistor on SDA1 and SCL1 lines is required for using Wire1.

Da der Bus eh auf open Kollektor beruht könnte man es versuchen einen Mega oder UNO mit dem DUE ohne Levelshifter zu koppeln. Von den Pegeln her müßte es reichen.
Aber Sicherheitshalber bei aktiviertem I2C am UNO bzw. Mega mal die Pegel an den Ports messen und zwar ohne Pullup Widerstände.
lg
bk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
10.06.2015, 12:17 (Dieser Beitrag wurde zuletzt bearbeitet: 10.06.2015 12:30 von DaniDD.)
Beitrag #5
RE: Arduino interconnect
So, zur Info ich habe beide Arduinos direkt verbunden und es gibt da keine Probleme. Smile

Ich hätte da aber eine weitere Frage, ich habe an dem einen Arduino einen Temperatursensor DS18B20 angeschlossen. Diese Werte sollen auf dem 2. Arduino auf dem LCD ausgegeben werden. Die Temperaturwerte bekomme ich als float oder als int16_t (Wert muss durch 128 geteilt werden). Ich vermute zweiteres kann man besser übertragen?
Ich muss zugeben meine C Kenntnisse sind dank Java u.ä. leicht eingerostet, daher habe ich mir jetzt erstmal geholfen in dem ich den int16_t mit itoa in eine char* konvertiere die übertrage und auf der anderen seiten dann umgekehrt mit atoi erst mal zu int16_t und dann zu float wandle. Sicher nicht der beste Weg. Schon mal weil ich dafür 5-6 Chars benötige statt 2.

Das int16_t besteht doch aus 2 Byte. Wie übertrage ich die und wandle die auf der anderen Seite zurück?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
10.06.2015, 13:53
Beitrag #6
RE: Arduino interconnect
(10.06.2015 12:17)DaniDD schrieb:  Das int16_t besteht doch aus 2 Byte. Wie übertrage ich die und wandle die auf der anderen Seite zurück?
Hi,
senden in etwa so:
Code:
int16_t blabla = ...

byte* blablaBytePtr = (byte*)(&blabla);

send(blablaBytePtr[0]);
send(blablaBytePtr[1]);

Empfangen ungefähr so:
Code:
int16_t blabla;

byte* blablaBytePtr = (byte*)(&blabla);

blablaBytePtr[0] = receive();
blablaBytePtr[1] = receive();

Gruß,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
10.06.2015, 14:18 (Dieser Beitrag wurde zuletzt bearbeitet: 10.06.2015 14:18 von DaniDD.)
Beitrag #7
RE: Arduino interconnect
Super danke, das probiere ich heute gleich aus Smile
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.06.2015, 09:41
Beitrag #8
RE: Arduino interconnect
So ich hab es endlich geschafft, klappt Smile

Ich bin da auf ein weiteres kleines Problem gestoßen. Können eigentlich beide Arduinos Master und Slave gleichzeitig sein? Bei meinem Test empfangen die dann nichts.
Also Arduino A sendet an Arduino B, Arduino B bekommt ein Event ausgelöst und gibt das gesendete aus.
Dann im Loop sendet Arduino B was an Arduino A, Arduino A bekommt ein Event ausgelöst und gibt das auf seiner Seriellen Konsole aus.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Arduino Ethernet mit USB 2 Serial Converter/Welche Einstellungen im Arduino-Sketch lociluke 1 1.104 05.05.2015 13:40
Letzter Beitrag: Bitklopfer
  Arduino Mega-Projekt mit EEPROM auf Arduino Due portieren Foto-Ralf 17 3.124 16.03.2015 12:06
Letzter Beitrag: Foto-Ralf

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste