Show Posts
Pages: 1 [2] 3 4 ... 95
16  International / Deutsch / Re: Array auswählen on: April 23, 2014, 07:16:04 am
Ich verstehe den Sinn hinter dieser Funktion noch immer nicht. Wo ist der Mehrwert hinter einer solchen Funktion?
Auch wenn ich dir praktisch Recht gebe,
hat "Daten-Abstraktion" einen Sinn. Dem Aufrufer kann es dann egal sein, ob die Zahl, die er über einen Index adressiert, im RAM oder sonstwo, in Form eines Arrays oder einer anderen Sammlung liegt oder gar nur bei Anfrage ausgerechnet wird. ...
Das verstehe ich, finde das gerade in C/C++ bei Arrays aber gefährlich, da zur Laufzeit der Funktion ja keine Informationen über die Größe des Arrays vorliegen. Bei einem Array im Quellcode kommt man evtl. noch auf die Idee mal zu schauen ob der Index "out of bound" ist. Bei einer abstrahierten Funktion ist das schon nicht mehr so offensichtlich.
17  International / Deutsch / Re: Array auswählen on: April 23, 2014, 06:38:11 am
Ich verstehe den Sinn hinter dieser Funktion noch immer nicht. Wo ist der Mehrwert hinter einer solchen Funktion?

Mario.
18  International / Deutsch / Re: Array auswählen on: April 23, 2014, 02:49:53 am
Wenn alle Arrays vom gleichen Typ sind, dann kannst Du einen Pointer auf das Array übergeben, wenn die Arrays unterschiedliche Typen haben, wird es schwerer.
Was aber meinst Du genau mit "Arrayindexe" auslesen? Kannst Du ein Beispiel geben?

Denn ein
int a =readValue( myarray, 5);
ist ja auch nicht besser als
int a = myarray[5];

Mario.
19  International / Deutsch / Re: Bei Funktionsaufruf etwas einmalig ausführen on: April 23, 2014, 02:01:48 am
Ein kurzer Hinweis noch zu den globalen Variablen. Man versucht in C sowas gern zu vermeiden, da es sehr schnell zu Überschneidungen der Namen kommen kann. Wenn Du Deine Funktion irgendwann mal woanders einsetzen willst, mußt Du immer daran denken das die gobale Variable dazu gehört. Wenn dann Dein zweites Programm zufällig schon eine solche Variable hat, mußt Du alles umeseln oder noch schlimmer, es fällt erstmal gar nicht auf, weil der Compiler nicht meckert, Dein Programm sich aber seltsam verhält weil FunctionInitialised an anderer Stelle immer wieder verändert wird.

Verwendest Du eine lokale Variable innerhalb der Funktion, dann ist es nicht schlimm, wenn Dein Programm schon eine gleiche, globale Variable hat. Denn die Funktion wird immer die lokale Variable verwenden. Damit wird Code portabler.

Mario.
20  International / Deutsch / Re: Bei Funktionsaufruf etwas einmalig ausführen on: April 23, 2014, 12:25:20 am
Du kannst innerhalb der Funktion eine Variable als "static" deklarieren. Diese behält dann auch zwischen den Aufrufen ihren Wert und Du kannst "zählen" wie oft eine Funktion aufgerufen wurde.
Code:
void setup() {
 Serial.begin(9600);
}

void loop() {
 single();
 delay(1000);
}

void single() {
 static int count = 0;

 if(count == 0) {
  Serial.println("erster Aufruf von Single");
  count++;
 }
 Serial.print("single() wurde ");
 Serial.print(count);
 Serial.println(" mal aufgerufen.");
 count++;
}
Die Ausgabe "erster Aufruf von Single" erscheint nur ein Mal, obwohl die Funktion immer wieder aufgerufen wird.

Mario.
21  International / Deutsch / Re: Arduino Ethernet MAC Adresse nur 9 Stellen ? on: April 22, 2014, 02:29:27 pm
auch wenn ich es im Internet auf einer Seite mache ?
also nicht nur im Heimnetzwerk ?
Auch dann.
MAC-Adressen spielen nur in einem "lokalen" Netz eine direkte Rolle (zumindest bei TCP/IP und wenn keine Netze auf Layer 2 gebridged werden). Alles andere wird per Routing gemacht, das ist Layer 3 (IP) und dafür sind dann solche Dinge wie Gateway, Subnet etc. wichtig.
Auch wenn Dein Arduino direkt im Internet "sichtbar" ist, steht in nahazu allen Fällen noch ein Router davor, selbst wenn der Arduino eine öffentliche IP bekommt und keine private wie 192.168.x.y oder 10.a.b.c oder 172.a.b.c
Allerdings sind MAC-Adressbereiche Hersteller gebunden und man sollte schauen, das man keine MAC aus einem verbreiteten Bereich verwendet. Die Effekte von zwei gleichen MAC Adressen im gleichen Subnet sind sehr "lustig" und ohne tiefere Kenntnisse schwer zu debuggen.
Siehe auch hier: http://de.wikipedia.org/wiki/MAC-Adresse#Herstellerkennungen
Wenn man 00-50-C2 für die ersten drei Byte verwendet, sollte man (wenn der Wikipedia Artikel stimmt) nicht großartig Gefahr laufen dem eigenen Router die MAC zu klauen. :-)
22  International / Deutsch / Re: Arduino <-> Raspberry <-> MySQL Serial Communication on: April 22, 2014, 02:19:52 pm
Grundlegend hat der Ansatz vom "Ardudome" Projekt das Problem das alle Aktionen von den PHP-Scripten initiiert werden und somit immer ein Browser auf die Seite zugreifen muss, sonst passiert nix.

Was Du möchtest ist aber, das der Arduino den Raspberry über eine ständig (oder mindestens beim Starten) aktive serielle Verbindung ansprechen kann. Das geht aber nur, wenn auf dem Raspberry jederzeit irgendein Programm auf der seriellen Schnittstelle lauscht, ob der Arduino Anfragen schickt. Denn der Raspberry kann ja nicht "wissen" wann der Arduino gerade mal einen Reset bekommt.

Das ist ein ganz anderes Konzept. Das würde ich mit einem zusätzlichen Programm / Script auf dem Raspberry lösen, das als "Middleware" eine Schnittstelle zwischen der seriellen Konsole des Arduino und z.B. einem TCP-Socket auf dem Raspberry bereit stellt.
Mario.
23  International / Deutsch / Re: Arduino über Raspberry via PHP ansteuern - Wie? on: April 16, 2014, 07:48:30 am
Diese Zeile macht aus einem String einen Integerwert. Da der "umgebende" Code fehlt, kann man leider nicht im Kontext sehen was da passiert. Aber eine der Variablen $i, $pin werden wohl einen Wert haben, der beim Array als Index nicht vorhanden ist.

Mario.
24  International / Deutsch / Re: OT:Welchen Kondensator brauche ich ? on: April 16, 2014, 02:56:01 am
Steht doch im Datenblatt:
http://www.st.com/web/en/resource/technical/document/datasheet/CD00000546.pdf (Seite 7)
Du brauchst auf der Input-Seite 0,1µF (100nF) Kerko (ungepolt) und auf der Output-Seite 2,2µF Elko (gepolt).

Mario.
25  International / Deutsch / Re: Arduino Host - EthernetShield - WLan Router"Client" - FritzBox on: April 16, 2014, 02:52:24 am
Der WR702 nutzten wir auf der Arbeit. Leider mit Problemen deswegen sind wir auf den WL0158 gegangen der ist bei Reichelt sogar günstiger.
@Volvodani: Welche Probleme waren denn das? Ich habe die Dinger bisher problemlos im Einsatz, aber mögliche Schwachstellen zu kennen kann ja nicht verkehrt sein.

Mario.
26  International / Deutsch / Re: Arduino Host - EthernetShield - WLan Router"Client" - FritzBox on: April 16, 2014, 01:10:38 am
Die Adresse setzt Du nur auf dem Arduino, sprich kein DHCP sondern direkt eine IP setzen. Zumindest solange der Repeater, der hier ja als WLAN-Client arbeitet, nicht selbst DHCP macht und so ein Endgerät anbindet. Dann funktioniert das nicht, außer der Repeater kann NAT. Wenn der Repeater "nur" als WLAN-Verlängerung arbeitet solltest Du Deinen Arduino unter seiner gesetzten IP erreichen können.

Ich habe mit diesem Kollegen hier sehr gute Erfahrungen gemacht (kleiner und günstiger):
TP-Link TL-WR702N
Siehe [url http://www.ichbinzustaendig.de/2014/04/07/arduino-environmental-net-server.html]hier:[/url]
27  Community / Exhibition / Gallery / Re: Ardomotic 2.0 - Web Interface for Arduino on: April 14, 2014, 09:39:59 am
Sounds like an interesting project. But one question about that:
Quote
The "Address" is the address of the server, which can be either an IP or DNS for your server.
When connecting from the same network where the Arduino is located, you can just use the Arduino IP address.

How should this work, the only access to the Arduino is over your webservice. So you always need access from the internet to the Arduino-Server. Or is there a way to have the frontend service running on an local webserver (not Arduino).

How is the access to the Arduino protected against unauthorized connections? IMHO the Arduino is not able to do some session-encryption fpr the access from outside.

Mario,
28  International / Deutsch / Re: Anfänger: Wie mit Arduino und DHT11 Datenserver realisieren? on: April 07, 2014, 02:38:05 am
Schau mal hier:
http://jleopold.de/2011/03/16/arduino-daten-logger-mysql-php/
Eine kurze Suche nach "mysql php logger" hier im Forum lieferte recht schnell das passende Ergebnis.
Mario.
29  International / Deutsch / Re: Logging Programm gesucht on: March 28, 2014, 10:35:17 am
Ich habe gelesen, dass Arduino "logging" nicht "erlaubt" und somit stellt sich für mich jetzt die Frage:
Wo hast Du das denn gelesen und was soll damit gemeint sein?
Arduino verbietet zunächst mal nix, außer die widerrechtliche Verwendung des Namens und des Logos :-)
Am Ende geht es ja darum, das Du am PC ein Programm hast, das die über die serielle Schnittstelle ankommenden Daten auswertet.
Das kannst Du z.B. mit Processing machen.

Funktioniert denn das Übertragen vom Arduino per Funk schon auf dem PC, wenn Du den Serial Monitor der IDE verwendest?

Mario.
30  International / Deutsch / Re: Antrax GPS/GSM Shield in Verbindung mit Web Server on: March 27, 2014, 08:05:16 am
Wenn Du den Code postest, dann können wir Dir evtl. sogar sagen warum das passiert. Aber ohne Code müssen wir auf die Glaskugel von Uwe warten.
Pages: 1 [2] 3 4 ... 95