Show Posts
Pages: 1 ... 118 119 [120] 121 122 ... 350
1786  Using Arduino / Networking, Protocols, and Devices / Re: 2 I2C devices same adress on: June 17, 2013, 04:48:47 am
You can try another solution: a I2C multiplexer like the LTC4312 (http://www.linear.com/product/LTC4312). This way you don't have to switch your Arduino.
1787  Using Arduino / Networking, Protocols, and Devices / Re: noob help Arduino freezes accessing RTC when LCD shield is installed on: June 17, 2013, 04:31:49 am
Post the sketch you're experimenting with. Are you calling the wire.c functions directly?
1788  Using Arduino / Networking, Protocols, and Devices / Re: LTC2400 ADC apply on Arduino Due on: June 17, 2013, 04:25:18 am
Quote
But I was trying to set both low for the most of time. SD is low all the time, ADC is low when it's doing work.
I will need them both low to work at the same time. Is that possible?

A chip select signal is LOW active which means that the chip is activated on LOW and deactivated on HIGH. So you have to try to let the chip select lines be HIGH as often as possible.
Only one of them must be low at any given time because else you're sending commands to multiple devices which may even result in short circuits on the MISO line.
1789  Using Arduino / Networking, Protocols, and Devices / Re: LTC2400 ADC apply on Arduino Due on: June 14, 2013, 11:07:54 am
Quote
Could anyone check it for me to see what did I write wrong or it's not the right way to use SPI for two device?

What does happen then? Theoretically it should work like that. You just have to ensure that only one chip select is in LOW state at the same time.
1790  Using Arduino / Networking, Protocols, and Devices / Re: Arduino and K-Line on: June 14, 2013, 11:01:07 am
Quote
can I just send it commends from arduino for it to send in HEX to the ecu?

AFAIK this depends on the car and the ECU used. If your car supports it, you should be able to do that or at least send it in HEX to the ELM and the chip is responsible to send it to the ECU in the correct format.
1791  Using Arduino / Sensors / Re: Lilypad Erratic Temperature Sensor Output on: June 14, 2013, 10:58:29 am
You have negative results from analogRead()? Please post the actual output you get.


This code
Code:
float voltage = reading * (5000 / 1024); //5000mV supplied by USB

probably doesn't produce what you expect it to. It's exactly the same as

Code:
float voltage = reading * 4;

That's the different between integer and float arithmetics.
1792  Using Arduino / Networking, Protocols, and Devices / Re: Arduino and K-Line on: June 14, 2013, 08:37:01 am
This

https://www.sparkfun.com/products/9555

or any other ELM327 based products should be able to communicate over a K-Line bus (ISO 14230).
1793  Using Arduino / Networking, Protocols, and Devices / Re: noob help Arduino freezes accessing RTC when LCD shield is installed on: June 14, 2013, 07:47:39 am
Try measuring the voltage between the GND and 5V pins once without the LCD module and once with the module installed. My guess is that in the second case the voltage is significantly below 5V. If the voltage drops the DS1307 goes into a no-communication state, if it drops further it changes to battery backup.

Have you tried to run it with an external power supply?
1794  International / Deutsch / Re: Arduino Mega: nur 1 von 4 UARTS (Serial 1-4) funktioniert, warum? on: June 14, 2013, 07:39:36 am
Quote
Aber wenn man einen 2. versucht zu initialisieren, dann bekommt man mit SerialX.available() immer ein negatives Ergebnis.

Das glaube ich nicht. Es kann 0 sein, aber negativ? Nach Deiner Beschreibung sollte

Code:
void setup() {
  Serial.begin(19200);
  Serial1.begin(19200);
}

void loop() {
  Serial.println(Serial1.available());
}

immer einen negativen Output liefern. Ist das bei Dir wirklich der Fall? Falls ja, welche Version der IDE setzt Du ein?
1795  International / Deutsch / Re: multiple values von processing an arduino senden on: June 14, 2013, 03:35:31 am
Code:
void draw() {     
  int value1 = 2500;
  int value2 = 1000;
 
  // load up all the values into a byte array
  // then send the full byte array out over serial
  // NOTE: This only works for values from 0-255 
  byte out[] = new byte[2];
  out[0] = byte(value1);
  out[1] = byte(value2);
  port.write(out);
}

Hast Du schon mal etwas von Datentypen und deren Grösse bzw. Wertebereich gehört? Wenn Du einen Integer-Wert von 1000 einer Byte-Variablen zuweist, die Werte bis max. 255 aufnehmen kann, wirst Du nicht die wahrscheinlich erwartete Reaktion vom System bekommen.
Zudem solltest Du Ganzzahl-Werte, die mehr als ein Byte beanspruchen, explizit in die Network-Byte-Order (http://de.wikipedia.org/wiki/Byte-Reihenfolge) konvertieren, da Du sonst unangenehme Überraschungen erleben könntest.
1796  International / Deutsch / Re: Allgemeine Fragen Bluetooth "JY-MCU" on: June 14, 2013, 03:25:14 am
Quote
Die Bluesmirth Module sind ja schon teuer...

Abgesehen von den bereits von jurs erwähnten technischen Unterschieden, gibt es noch einen relevanten Punkt: die Bluesmirth Module sind dokumentiert. Bei den Ebay-Teilen kann man von Dokumentation nicht wirklich sprechen. Wenn Du Glück hast, kriegst Du einen Link auf ein zweiseitiges Datenblatt, das die Grösse spezifiziert, mehr habe zumindest ich bisher nicht erlebt. Den Rest musst Du mühsam auf dem Internet zusammensuchen und Du weisst nie genau, ob das auch wirklich für Dein Modul gilt.
Was Dir wichtiger ist, musst Du selbst entscheiden.
1797  Using Arduino / Networking, Protocols, and Devices / Re: LTC2400 ADC apply on Arduino Due on: June 13, 2013, 12:13:08 pm
Code:
cbi(PORTB,LTC_SCK);      // LTC2400 SCK low

gets

Code:
digitalWrite(SCKL, LOW);

Code:
sbi (DDRB,LTC_CS);       // LTC2400 CS HIGH

(the comment is wrong!) gets

Code:
pinMode(SS, OUTPUT);

Code:
cbi (DDRB,LTC_MISO);
sbi (DDRB,LTC_SCK);

gets

Code:
pinMode(MISO, INPUT);
pinMode(SCKL, OUTPUT);

but all that stuff is not necessary, it's all in

Code:
SPI.begin();

The relevant parts replaced could look like this (not tested, just a quick hack, I don't have the hardware):

Code:
#include <SPI.h>

void setup() {

 pinMode(SS, OUTPUT);
 digitalWrite(SS, HIGH);
 SPI.begin();

 Serial.begin(57600);
 Serial.println("LTC2400 ADC Test");

}
float volt;
float v_ref=3.0;          // Reference Voltage, 5.0 Volt for LT1021 or 3.0 for LP2950-3

long int ltw = 0;         // ADC Data ling int
int cnt;                  // counter
byte b0;                  //
byte sig;                 // sign bit flag
char st1[20];             // float voltage text

/********************************************************************/
void loop() {

 digitalWrite(SS, LOW);
 delayMicroseconds(1);
 if (digitalRead(MISO) == LOW) {   // ADC Converter ready ?
   ltw=0;
   sig=0;

   b0 = SPI_read();             // read 4 bytes adc raw data with SPI
   if ((b0 & 0x20) ==0) sig=1;  // is input negative ?
   b0 &=0x1F;                   // discard bit 25..31
   ltw |= b0;
   ltw <<= 8;
   b0 = SPI_read();
   ltw |= b0;
   ltw <<= 8;
   b0 = SPI_read();
   ltw |= b0;
   ltw <<= 8;
   b0 = SPI_read();
   ltw |= b0;

   delayMicroseconds(1);

   digitalWrite(SS, HIGH);      // LTC2400 CS HIGH
   delay(200);

   if (sig) ltw |= 0xf0000000;    // if input negative insert sign bit
   ltw=ltw/16;                    // scale result down , last 4 bits have no information
   volt = ltw * v_ref / 16777216; // max scale

   Serial.print(cnt++);
   Serial.print(";  ");
   printFloat(volt,6);           // print voltage as floating number
   Serial.println("  ");

 }
 digitalWrite(SS, HIGH); // LTC2400 CS hi
 delay(20);

}
/********************************************************************/
byte SPI_read()
{
 return SPI.transfer(0x00);
}
/********************************************************************/

This assumes that the chip is connected to SPI with the standard pins (SDO -> MISO, SCK -> SCKL, CS -> SS).
1798  Using Arduino / Networking, Protocols, and Devices / Re: LTC2400 ADC apply on Arduino Due on: June 13, 2013, 11:20:22 am
That sketch is written for an ATmega based Arduino. On a Due you cannot use the direct port manipulation commands of the ATmega platform, so you have to rewrite the sketch to use digitalWrite() instead of the port manipulations and the SPI library instead of the register manipulations in the sketch.
1799  International / Deutsch / Re: TMS320C2x DSP Starter Kit on: June 13, 2013, 10:06:31 am
Inwiefern hat das was mit dem Arduino zu tun, ausser dass Du ihn als USB2Serial missbrauchst? Ich glaube, Du bist im falschen Forum.
1800  International / Deutsch / Re: Allgemeine Fragen Bluetooth "JY-MCU" on: June 13, 2013, 10:02:20 am
Quote
1. Kann ich zwei Module koppeln ?

Theoretisch sollte das möglich sein, auch wenn ich es selbst noch nie versucht habe.

Quote
2.Hat einer von euch damit gute bzw. schlechte Erfahrungen gemacht ?

Die Module sind so ziemlich das Unterste von billig, das Du finden kannst. Ich habe zwar ein Modul mit dem gleichen Chip im Einsatz, aber je nach eingebrannter Firmware können sich die Dinger ziemlich unterscheiden und wenn Du beim Chinesen auf Ebay kaufst, weisst Du nie genau, was du schlussendlich kriegst. Als ich zu dem Teil mal ein Datenblatt gefunden und es zum Laufen gekriegt hatte, tat es dann aber schön brav Dienst. Also: gemischte Gefühle und viel Unsicherheit.
Pages: 1 ... 118 119 [120] 121 122 ... 350