Loading...
  Show Posts
Pages: 1 [2] 3 4 ... 6
16  International / Deutsch / Re: Statt TSOP eine direkte Verbindung vom Arduino möglich? on: November 12, 2012, 02:21:57 pm
Einen konkreten Vorschlag für einen Transistor habe ich nicht. Aber ich würde einfach mal in der Bastelkiste herumwühlen und experimentieren... Allerdings denke ich das du selbst mit der IR Lib Probleme bekommen wirst. Der TSOP invertiert das empfangene signal. Und mit der lib würdest du ja das signal für die LED Ausgeben und nicht das Invertierte.

ABER das weis ich nicht 100% sondern glaube mich an die Fakten zu erinnern und habe daher Zweifel.

Gruß derRobert
17  International / Deutsch / Re: Statt TSOP eine direkte Verbindung vom Arduino möglich? on: November 12, 2012, 11:51:31 am
Die rein Elektrische Verbindung kannst du mittels eines Transistors Realisieren. Dieser wirkt wie der TSOP und bekommt seine Signale halt vom Arduino und nicht vom Licht.

Allerdings ist dann noch ein wenig Programmiererei von Nöten.
Denn ein Infrarot Signal ist nicht nur einfaches Gemorse.

Ein direktes Anschließen funktioniert meiner Meinung nach nicht.
Gruß derRobert

EDIT:

Hier mal der Aufbau des Signals am Beispiel von RC5 http://www.sprut.de/electronic/ir/rc5.htm
18  International / Deutsch / Re: Server/Client Problem... on: November 12, 2012, 01:20:25 am
wie man das sieht?
Mit einem codeschnippsel und der Erklärung aus dem Playground.
Beides steht im Post über dir!

Wie wir darauf kommen?
Bittere Erfahrung!!!

Wenn der RAM voll ist dann macht der Arduino nicht mehr was du ihm mit deinem Programm sagst sondern völlig undefinierte Dinge. Daher ist es Ratsam zu allererst ab zu klären wie es um den Speicher steht.

Und die Menge an Serial.print und Client.print in deinem Code, Ist sehr Speicherhungrig


Und hier habe ich ebend noch was gefunden:

Using Flash Memory for string storage.
Ab Arduino IDE Version 1.0 wurde die F()-Syntax eingeführt. 
Mit ihr kann man Strings im Flash-Speicher anstatt im RAM ablegen.
Beispiel:
Code:
Serial.println(F("This string will be stored in flash memory"));

Ähnlich funktioniert auch
Code:
#include <avr/pgmspace.h>
printf_P(PSTR("This string will be stored in flash memory"));
Dazu ist aber das Include der obengenannte Bibiothek notwendig.

http://www.arduino.cc/playground/Main/Printf

Grüße Uwe
19  International / Deutsch / Re: Server/Client Problem... on: November 11, 2012, 03:37:23 pm
Bei deinem eigentlichen Problem kann ich dir zwar nicht helfen aber, Ich kann dir nur dazu Raten deinen Ram zu Sparen. Denn wenn der voll läuft dann reagiert dein Arduino unkontrolliert.

Um heraus zu finden wie viel RAM frei ist nutze ich das hier:

http://www.arduino.cc/playground/Code/AvailableMemory

Code:
int freeRam () {
  extern int __heap_start, *__brkval;
  int v;
  return (int) &v - (__brkval == 0 ? (int) &__heap_start : (int) __brkval);
}
// Irgendwo in einer HTML Tabelle>>>

client << F("<th colspan='4'align='center'>Diagnosezeile<br> Freier Speicher = "); //Wird direkt aus dem Flash gelesen
client.print(freeRam());      // client.print wird aus dem RAM geholt
client << F(" Byte<br>");      // ist wieder vom Flash und belastet somit den RAM nicht

Und das Zauberwort zum Ram Sparen lautet Progmem
Dazu gibt es auch eine recht einfache Bibliothek: http://arduiniana.org/libraries/Flash/

Das ist das F()-Makro was pylon schon erwähnt hat.
Nachdem du wieder ein paar Byte RAM frei hast ist es möglich das dein Code schon Funktioniert....

Gruß derRobert
20  International / Deutsch / Re: Tiny85->Duemilanove->I2C brauche Denkanstoß!!! on: October 16, 2012, 12:39:16 pm
Bei mir steht aber auch
Code:
// sets function called on slave read
void USI_TWI_S::onRequest( void (*function)(void) )
{
  usi_onRequestPtr = function;
}


in der TinyWireS.cpp

Ich versteh die Welt nicht mehr....


Habe natürlich schon vor paar Tagen die alte gelöscht und die neue gedownloadet.
21  International / Deutsch / Re: Tiny85->Duemilanove->I2C brauche Denkanstoß!!! on: October 16, 2012, 11:44:03 am
ich hatte die genutzt die ich oben auch verlinkt habe.  Ich werd wohl mal alles löschen und dann die libs neu downloaden. so viele sinds ja noch nicht.

kann gut sein das da was schief gelaufen ist da ich anfang des Jahres schon mal mit der Tiny I2C Geschichte experimentiert habe. Im sommer verschwindet die Bastelei allerdings in Kisten und im Herbst steht man dann erneut vor den Angefangenen Sachen smiley-wink

nur um auf nummer sicher zu gehen, Bitte poste mal den Link deiner Bezugsquelle.
und dann versuche ich meine zu löschen und deine dann ein zu fügen

Danke derRobert
22  International / Deutsch / Re: Tiny85->Duemilanove->I2C brauche Denkanstoß!!! on: October 16, 2012, 11:11:47 am
Wollte grad noch mal bissel spielen und jetzt weis ich wieder warum ich darauf gekommen bin das es keine onrequest handler gibt.

beim versuch zu kompilieren bekomme ich diese Meldung:  error: 'class USI_TWI_S' has no member named 'onRequest'

Code:
#define I2C_SLAVE_ADDRESS 0x26
#include <TinyWireS.h>
#ifndef TWI_RX_BUFFER_SIZE
#define TWI_RX_BUFFER_SIZE ( 16 )
#endif


void setup()
{
    TinyWireS.begin(I2C_SLAVE_ADDRESS);
    TinyWireS.onRequest(requestEvent);


   
   
}
void requestEvent()
{
  Wire.write("hello ");
}

void loop()
{
   delay(100)
}
23  International / Deutsch / Re: Tiny85->Duemilanove->I2C brauche Denkanstoß!!! on: October 16, 2012, 10:46:36 am
Ich Danke dir für deine Geduld. ich muss das jetzt erstmal irgendwie verdauen und immer wieder dein Geschriebenes und das Beispiel hoch und runter lesen.

Eventuell machts dann mal klick oder ich sollte mir ein anderes Hobby suchen smiley-wink

Bis jetzt verstehe ich nur Bahnhof und weis auch nicht wo das Problem genau liegt.

Ich werde mal mit den codeschnippseln spielen und sehen was passiert. (Hoffentlich sehe ich was)


EDIT: Ach ja der Schaltplan wurde Vergrößert
24  International / Deutsch / Re: Tiny85->Duemilanove->I2C brauche Denkanstoß!!! on: October 16, 2012, 09:48:53 am
In welcher art und weise ich ein Register Erstelle/Definiere. Also wie das auf dem Slave aus zu sehen hat. Das ist mir unklar.


Auch wenn der Tiny nie etwas anderes machen soll als die eine Variable zu senden würde ich das ganze doch richtig machen wollen. Damit ich das ganze mal lerne.

EDIT:

Öhm ja. Die Antwort könnte Lauten "Das steht in dem genanneten Beispiel, du Depp"

Ich seh da aber kein Stich.  Ich brauch da ne Antwort for Dummies
25  International / Deutsch / Re: Tiny85->Duemilanove->I2C brauche Denkanstoß!!! on: October 16, 2012, 09:10:18 am
@ pylon

Leider habe ich deine Antwort nicht gesehen. Sollte wahrscheinlich öfter mal auf Reload drücken. Hatte den Tab noch offen

Jetzt wo du es sagst.... dort steht was von onRequest.

Werde mir das näher ansehen.    Aber warum steht dann in der Beschreibung

"TODO:   (by others!)
   - onReceive and onRequest handlers are not implimented.
   - merge this class with TinyWireM for master & slave support in one library"


Danke ich werde dann mal weiter versuchen. Und melde mich ganz bestimmt bald wieder


Da stellt sich gleich noch ne Frage....

Wenn ich nun einen Slave erstelle also meinen Tiny der wirklich nur den wert einer Variable übergeben soll. muss ich da mit registern arbeiten? bzw wie würde ich das überhaupt anstellen?  Gibts da evtl ne gute Anleitung?


Gruß derRobert
 
26  International / Deutsch / Re: Tiny85->Duemilanove->I2C brauche Denkanstoß!!! on: October 15, 2012, 02:37:12 pm
Keiner ne Idee? oder ist diese Frage keiner Antwort würdig???
27  International / Deutsch / Re: Tiny85->Duemilanove->I2C brauche Denkanstoß!!! on: October 14, 2012, 04:44:36 am
Ich habe hier noch mal einen Schaltplan gemalt um zu Zeigen wie ich das ganze verkabelt habe.



Das sollte für den Master doch funktionieren oder?   
(Ist ja aus einem Beispiel)

Code:
#include <Wire.h>

void setup()
{
  Wire.begin();        // join i2c bus (address optional for master)
  Serial.begin(9600);  // start serial for output
}

void loop()
{
  Wire.requestFrom(0x26, 6);    // request 6 bytes from slave device 0x26

  while(Wire.available())    // slave may send less than requested
  {
    char c = Wire.read(); // receive a byte as character
    Serial.print(c);         // print the character
  }

  delay(500);
}

Aber wie mache ich es jetzt das der Slave sich angesprochen fühlt und dann auch was sendet?

Gruß derRobert
28  International / Deutsch / Re: Tiny85->Duemilanove->I2C brauche Denkanstoß!!! on: October 13, 2012, 12:28:20 pm
Ich habe jetzt noch einmal in der Library für den Tiny gestöbert und festgestellt das es keinen onRequest Handler gibt. Aber das wäre doch eigentlich der korrekte weg oder?

Master (Duemilanove) sendet Request an Slave(Tiny) und Tiny sendet dann was er soll und der Master empfängt mittels  while(Wire.available())   


Wie bewerkstellige ich das jetzt ohne die onRequestfunktion?????

Danke und Gruß
derRobert
29  International / Deutsch / Re: Relais Stört DS18B20 kommunikation? on: October 13, 2012, 10:55:40 am
Eventuell könnten die Störungen behoben werden wenn man die Relaiskarten gegen Triacs  oder Solid State Relais tauscht.
Oder Ihr versucht es mal damit http://de.wikipedia.org/wiki/Snubber

Das ist nur das was mir da als erstes Eingefallen ist. Erfahrung in der Praktischen Umsetzung habe ich da leider keine. Aber evtl hilft ja um in die richtige Richtung zu Denken.

Gruß derRobert
30  International / Deutsch / Tiny85->Duemilanove->I2C brauche Denkanstoß!!! on: October 13, 2012, 10:25:00 am
Hallo@all,
Ich bin hier schon seit 2 Tagen drann mit I2C zu spielen und verzweifle bald.

Ich möchte von einem Tiny85 Daten erhalten und Blick hier einfach nicht durch.

Der Tiny soll als Infrarot empfänger immer dann den Tastenwert an den Duemilanove schicken wenn er sich ändert.

Für den Tiny habe ich folgende Library gefunden https://github.com/rambo/TinyWire

und am Duemilanove nehm ich Wire.h

Aber ich bekomme es nichteinmal hin das ich einfach nur einen Zahl vom Tiny anfordern kann.

Irgendwo fehlt mir hier der Einstieg.  Aus den Beispielen werde ich auch nicht schlau.

Mir würde es schon mal reichen wenn der tiny alle 5 sekunden einen Wert von "1234" schickt und der Duemilanove den dann in ne Variable packt.

Hat jemand von euch schon einen Tiny als I2C Slave verwendet und so Abgefragt?

Danke und Gruß derRobert
Pages: 1 [2] 3 4 ... 6