Loading...
  Show Posts
Pages: 1 ... 4 5 [6] 7
76  International / Deutsch / Re: rmp3-shield funktioniert nicht mit Mega on: April 21, 2012, 07:15:45 am
rouge robitics rmp3 http://www.roguerobotics.com/products/electronics/rmp3

Der Code ist von der Beispielseite übernommen und auf 1.0 angepasst.
77  International / Deutsch / [gelöst] rmp3-shield funktioniert nicht mit Mega on: April 21, 2012, 05:26:30 am
Hi,
heute hab ich mein neues Arduino mega1280 ausprobiert und wollte es auch gleich mit o.g. shield verbinden.
Allerdings tut sich (fast) überhaupt nix.
Mit meinem Uno funktioniert alles wunderbar. Auch habe ich testweise eine Led an das Mega angeschlossen,
was prima funktioniert hat(upload funktioniert also).

Beim Uno wird neben der Musik über den Serial-monitor, das Wort xmas und der Name des Songs ausgegeben. Beim mega
kommt nur das Wort, sonst passiert nix. Hat irgendwer ne Idee woran das liegt?

LG

Sketch:
Code:
#include <RogueSD.h>
#include <RogueMP3.h>
#include <SoftwareSerial.h>
 
SoftwareSerial rmp3_serial(6, 7);
 
RogueMP3 rmp3(rmp3_serial);
RogueSD filecommands(rmp3_serial);
 
int numberOfSongs;
int lastSong;
char path[96];
 
const char *directory = "/XMAS";
 
 
void setup()
{
  Serial.begin(9600);
 
  Serial.println("Merry Xmas!");
 
  rmp3_serial.begin(9600);
 
  rmp3.sync();
  rmp3.stop();
 
  filecommands.sync();
 
  // mix up our random number generator
  randomSeed(analogRead(0));
 
  // get the number of songs available
  strcpy(path, directory);
  strcat(path, "/");
  strcat(path, "*.mp3");  // we have to do this because the IDE thinks that "/*" needs to be terminated everywhere
 
  numberOfSongs = filecommands.filecount(path);
 
  lastSong = -1;
}
 
 
 
void playNextSong()
{
  uint8_t s, i;
  char filename[80];
  char path[96];
  int nextSong = 0;
 
  if (numberOfSongs > 0)
  {
    // Select our next song randomly
    if (numberOfSongs > 2)
    {
      do
        nextSong = random(numberOfSongs);
      while (nextSong == lastSong);
    }
    else if (numberOfSongs == 2)
    {
      // we only have two songs
      if (lastSong == 0)
        nextSong = 1;
      else
        nextSong = 0;
    }
 
    // now, get our file name from file list
 
    filecommands.opendir(directory);
 
    for (i = 0; i <= nextSong; i++)
    {
      filecommands.readdir(filename, "*.mp3");
    }
 
    strcpy(path, directory);
    strcat(path, "/");
    strcat(path, filename);
 
    rmp3.playfile(path);
 
    Serial.print("Playing: ");
    Serial.println(path);
 
    lastSong = nextSong;
  }
  else
  {
    Serial.println("No files to play.");
  }
}
 
 
void loop()
{
  char c;
  uint8_t i;
  uint8_t lastvolume = 20;
  int16_t newtime;
 
  playbackinfo playinfo;
 
  char status = 'S';
  uint8_t playing = 1;
  uint8_t volume = 20;
  uint8_t boostOn = false;
 
  volume = rmp3.getvolume();  // this only gets the left volume
 
  playNextSong();
 
  while(1)
  {
    while(!Serial.available())
    {
      // we should do fancy stuff like flash lights on our Xmas tree here!
      // got lots of time!
      delay(200);
 
      status = rmp3.getplaybackstatus();
      playinfo = rmp3.getplaybackinfo();
 
      if (status == 'S' && playing)
        playNextSong();
    }
 
    // OOH!! got a character!
    c = Serial.read();
 
    switch(c)
    {
      case 'p':
        // pause
        if(status == 'D')
        {
          // fade in
          rmp3.playpause();
          rmp3.fade(volume, 400);
        }
        else if(status == 'P')
        {
          // fade out
          rmp3.fade(100, 400);
          rmp3.playpause();
        }
        else
        {
          // start playing
          playNextSong();
          playing = 1;
        }
        break;
      case 's':
        rmp3.stop();
        playing = 0;
        break;
      case 'n':
        playNextSong();
        playing = 1;
        break;
 
      case 'e':
        if(boostOn)
        {
          rmp3.setboost(0);
          boostOn = false;
        }
        else
        {
          rmp3.setboost(8, 6, 7, 3);
          boostOn = true;
        }
        break;
 
      case 'a':
        // jump back 5 seconds
        newtime = playinfo.position - 5;
        if (newtime < 0) newtime = 0;
        rmp3.jump(newtime);
        break;
 
      case 'd':
        // jump forward 5 seconds
        rmp3.jump(playinfo.position + 5);
        break;
 
      case 'k':
        if(volume < 254) volume++;
        if(status != 'D') rmp3.setvolume(volume);
        break;
 
      case 'i':
        if(volume > 0) volume--;
        if(status != 'D') rmp3.setvolume(volume);
        break;
 
    }
  }
}
nextSong = random(numberOfSongs);
 
78  International / Deutsch / Re: I0 Kommunikation on: April 08, 2012, 02:22:21 pm
Ich hab ja schon geschrieben, dass ich es nicht so machen werde. Ich werd einfach ein slot-in mit Taster nehmen und diesen dann überbrücken.
79  International / Deutsch / Re: I0 Kommunikation on: April 07, 2012, 02:13:46 pm
sry, dass ich erst jetzt antworte.
Also zu allererst hat das Gerät leider keinen eigenen IO-Pin, das läuft über S-ata mit.
Zur Erklärung: Ich habe mich die Tage mal wieder über die klapprigen Pcgehäuse geärgert
und bin dann auf die Idee gekommen, selbst ein Gehäuse aus MDF zu bauen. Als kleines
gimmick möchte ich auf normale Taster verzichten und ein, reset und cd-auswurf über
kapazitive Sensoren realisieren. Bei der Suche nach einem slot-in  Laufwerk sind mir dann
die für die Macbooks aufgefallen, besonders weil die keinen Taster haben. Das Laufwerk
sollte halt auch schon auswerfen können, bevor der Pc hochgefahren ist, von daher lässt
sich so ein slot-in leider nicht verwenden.

Ps: Es geht nicht darum Geld zu sparen.
80  International / Deutsch / I0 Kommunikation on: April 03, 2012, 12:41:11 pm
Hi,
ich würde gerne so ein Laufwerk in meinen Desktop-Pc einbauen.
Das Gerät hat keinen Taster und wird über einen I0-Anschluss gesteuert (also DVD auswurf). Diesen Auswurf würde ich gerne über ein Arduino realisieren, ist das möglich?
greetings
Nils
81  Using Arduino / Audio / Re: rmp3-shield compatible with arduino 1.0? on: March 16, 2012, 02:29:54 pm
It's working perfektly right now. Thumbs up for your great help  smiley
82  Using Arduino / Audio / Re: rmp3-shield compatible with arduino 1.0? on: March 16, 2012, 09:20:49 am
Hi,
i replaced the void with size_t. After compiling following errors appear:
Code:
In file included from sketch_mar16a.cpp:1:
C:\Users\Nils133\Desktop\arduino\arduino-1.0\libraries\RogueSD/RogueSD.h:184: error: conflicting return type specified for 'virtual void RogueSD::write(uint8_t)'
C:\Users\Nils133\Desktop\arduino\arduino-1.0\hardware\arduino\cores\arduino/Print.h:48: error:   overriding 'virtual size_t Print::write(uint8_t)'
I tried to replace the void in line 184, but then there were even more errors.
None the less the rmp3-library seems to be working. At least there was no error-message. So I think we are on the right way smiley
83  Using Arduino / Audio / Re: rmp3-shield compatible with arduino 1.0? on: March 10, 2012, 04:05:04 pm
thanks for the reply. I have no idea how to upgrade those librarys. There are three of them i need to use:
RougeMP3, RougeSD and NewSoftSerial. Do you got any hints, how I get them compatible with 1.0 IDE?

By the way, i bought a rmp3 some days ago and its working pretty fine with 0021, but i want to combine
it with some other components and therefore i need the rmp3 running on 1.0.
84  Using Arduino / Audio / rmp3-shield compatible with arduino 1.0? on: February 29, 2012, 07:08:12 am
Hi,
as the title says, i like to know, if the rmp3-shield is compatible with the new arduino version.
thx

greetings
Nils
85  International / Deutsch / Re: ultraschallsensor < 2cm on: February 10, 2012, 06:21:48 am
auf ebay.com hab ich folgenden Sensor gefunden:
http://www.ebay.com/itm/150723641717?ssPageName=STRK:MEWAX:IT&_trksid=p3984.m1423.l2649

Allerdings verstehe ich die Beschreibung nicht ganz. Liege ich richtig damit, dass der Sensor Gegenstände mit einem Abstand von 2-30 cm erkennt?
Falls das so ist, wie schließt man so ein Teil an? Gnd von Vcc sind ja klar. Out müsste dann an einen Analogeingang oder? Aber wofür ist jetzt en gut?
86  International / Deutsch / Re: ultraschallsensor < 2cm on: February 09, 2012, 11:28:38 am
hm ja, so ohne weiteres ist das nicht möglich. Der Sensor soll den Abstand von einer Hand zu der Oberfläche eines flachen Gehäuses erkennen.
Allerdings hab ich mir überlegt, ich könnte den Sensor in eine kleine Metallplatte einbauen und diese dann als kapazitiven Sensor verwenden.

Die Ultraschallsensoren bekommt man ja fast geschenkt, ich werd einfach mal einen bestellen und ein bisschen experimentieren.
87  International / Deutsch / Re: ultraschallsensor < 2cm on: February 09, 2012, 09:35:41 am
hmm das ist blöd :-/
Kennt irgendwer ne Möglichkeit von 0 bis 30cm zu messen?
88  International / Deutsch / ultraschallsensor < 2cm on: February 09, 2012, 06:57:29 am
Hi,
ich würde gerne mit meinem Arduino abstände messen. Dafür geeignet scheinen ja infrarot-Abstandssensoren oder
Ultraschallsensoren.
Nun möchte ich folgende Situationen unterscheiden können: 0 - 5cm (wobei der genaue Wert egal ist), 10 - 20cm,
mehr als 20cm
So ein Infrarotsensor scheint nicht die passenden Messebreiche abdecken zu können. Ich habe nur welche gefunden mit 0-1cm
und 10-xy cm.
So ein Ultraschallsensor scheint da schon besser zu passen mit 2-500cm. Jetzt frage ich mich, was das Gerät bei < 2cm macht.
Werden da zufällige Werte angezeigt, oder einfach nur <2cm?  Wie gesagt, der genaue Wert ist egal, es sollten nur nicht plötlich
große Werte ausgegeben werden.

Danke schonmal für die Hilfe!
89  International / Deutsch / Re: arduino uno vergisst programmierung on: February 06, 2012, 04:03:38 pm
ehm ja, weil es geleuchtet und Dinge angezeigt hat,
bin ich davon ausgegangen, dass alles stimmt  smiley-sweat
Ich hab jetzt zum vierten mal alles zusammen gesteckt.
Dabei hab ich vergessen das Resetkabel anzuschließen
und seitdem funktionierts^^ (In der Anleitung ist es eindeutig
angeschlossen)
Nur vertauscht sind die Displayhälften immernoch
Ich verwende diese Library:http://code.google.com/p/glcd-arduino/

Verkabelt ist alles wie angeben nach Panel Typ B (jetzt nur ohne reset smiley-grin).
Vllt hat ja schonmal jmd ein ähnliches Prob. gehabt oder kennt sich gut mit der
Library aus und weiß auf die Schnelle, welche Pins zu tauschen sind, ansonsten
werd ich wahrscheinlich auch früher oder später herausfinden, wo der Fehler liegt.

update: alles nochmal neu gesteckt und dabei 2 kabel getauscht, jetzt klappt endlich alles
90  International / Deutsch / Re: arduino uno vergisst programmierung on: February 06, 2012, 02:25:35 pm
Hi,
also die einzige Möglichkeit ist einen neuen Bootloader draufzuspielen, weil
es sich um einen Fehler beim Board handelt?
In in dem einen Link steht, dass das neuprogrammieren nicht mit dem Uno
funktioniert.
Da wird mir wohl nichts anderes übrig bleiben, als das Ding einzuschicken.
Ich hab auch grad keine Lust ein fehlerhaftes Produkt zu reparieren.
Danke für die Links, auch wenn alles etwas unübersichtlich ist.

E: Ich hab jetzt noch ein wenig ausprobiert und vllt liegt es nicht an einem
defekten bootloader. Ich hab mal Testweise alles abgezogen und das board
dann wieder eingesteckt, da hat nur die grüne Led geleuchtet. Bei einem
simplen sketch, mit einer blinkenden Led funktioniert alles.
Wenn ich allerdings das Glcd anschließe funktioniert der Sketch nur einmal.
Das Display zeigt alles an nur um die Mitte vertauscht, kontrast und Beleuchtung
funktionieren, gibt es eine Möglichkeit da dem Fehler auf die Spur zu kommen?
Pages: 1 ... 4 5 [6] 7