Show Posts
Pages: 1 [2] 3 4 ... 7
16  International / Deutsch / Re: Fahrtenregler mit Arduino bauen on: November 25, 2012, 04:13:03 pm
Ja es ist ein Rechtecksignal

Code:
timestamp= pulseIn(2,LOW);

 serial.println(timestamp);

zeigt dir kontinuierlich die Dauer zwischen Low und Low an. diese Dauer verändert sich jeh nach Hebelstellung.

Gruß
derRobert

17  International / Deutsch / Re: Fahrtenregler mit Arduino bauen on: November 25, 2012, 07:32:59 am
Der Empfänger gibt ja ein Gepulstes Signal aus welches sich jeh nach gebelstellung am Sender ändert.

Dieses Signal kannst du mit pulsIn(pin,zustand) Abfragen und dann evtl. mit map() verarbeiten.

http://www.arduino.cc/en/Reference/PulseIn
http://www.arduino.cc/es/Reference/Map


mit pulseIn habe ich mir einen Tiny programmiert der eine Kamera ein und ausschaltet.

evtl hilft dir das weiter

Code:
#include <SoftwareSerial.h>
#define rxPin 3
#define txPin 4
SoftwareSerial serial(rxPin, txPin);

unsigned long timestamp2 = 0;
int timestamp3 = 0;



void setup(){

  pinMode(2,INPUT);
  pinMode(0,OUTPUT);
  digitalWrite (0, LOW);
   serial.begin(4800);
}


void loop(){

timestamp3= pulseIn(2,LOW);
timestamp2= timestamp3 / 100;
 serial.println(timestamp2);
 



  switch (timestamp2){
  case 193:
  rc1();
    break;
  case 185:
    rc2();
    break;
  }


}
void rc1()
{
  digitalWrite(0, HIGH);
  delay(300);
  digitalWrite(0, LOW);
 
}

void rc2()
{
  digitalWrite(0, HIGH);
  delay(3000);
  digitalWrite(0, LOW);
 
}
18  International / Deutsch / Re: ds1820 mehrere DeviceAdressen in Array packen on: November 24, 2012, 07:03:15 pm
dein Array wäre 24 Bytes groß und jede adresse besteht aus 8 Bytes .

Also Adresse 1 wäre nicht sensorAdress[1]

sondern sensorAdress[0] sensorAdress[1]sensorAdress[2]sensorAdress[3]sensorAdress[4]sensorAdress[5]sensorAdress[6]sensorAdress[7]

Die Adressen sind richtig im Array eingetragen. Aber der Aufruf ist nicht so einfach wie du es dir denkst.
Allerdings muss ich leider zu geben das du für den Aufruf an sich jemanden anderes fragen musst. ich schaffe das auf die schnelle auch nicht.... smiley-sad

Gruß derRobert
19  International / Deutsch / Re: SHT25@I2C will nicht on: November 24, 2012, 08:33:20 am
Wenn ich den Schaltplan richtig verstehe ist die TX Leitung des Levelconverters nur Unidirectional. Aber eine I2C Leitung ist doch Bidirectional oder????



Ich bin mir nicht sicher. Aber Logisch erscheint mir das nicht.
Gruß derRobert

20  International / Deutsch / Re: SHT25@I2C will nicht on: November 24, 2012, 07:23:03 am
Das wäre dann auf der 3,3V Seite.
versuche es mal mit zusätzlichen PullUp's auf der 5V Seite.
21  International / Deutsch / Re: SHT25@I2C will nicht on: November 24, 2012, 06:13:54 am
In deinem Schaltplan fehlen die Pullup Widerstände (4,7k bis 10k) für SDA und SCL. 
evtl. Verläuft die Kommunikation nicht sauber.... 

Gruß derRobert
22  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
23  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
24  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
25  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
26  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.
27  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
28  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)
}
29  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
30  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
Pages: 1 [2] 3 4 ... 7