Show Posts
Pages: 1 [2] 3
16  International / Deutsch / Arduino due NeoMatrix video wall on: May 26, 2014, 01:36:30 am
Hallo, ich habe eine 8x8 NeoMatrix und möchte dort mit einem Arduino Due zur Laufzeit (am besten 25 pro Sekunde) Bilder anzeigen.

Was meint ihr, wie ich das realisieren kann? Meint ihr, dass das überhaupt möglich ist?
Die Bilder sollen über USB übertragen werden.

Ich hoffe, dass ihr mir ein paar Informationen geben könnt, denn ich stehe gerade völlig auf dem Schlauch und finde auch keine wirkliche Hilfe im Netz.

Viele Grüße
17  International / Deutsch / Re: Ausgabe auf serproxy.exe konsole on: May 29, 2013, 01:27:46 am
Ok also wir haben jetzt die sourcen für den serproxy gefunden und dort eine Ausgabe eingebaut.
Funktioniert bestens. Jetzt kann ich mir über Serial.println() etwas an Flash senden und es wird gleichzeitig auch auf der Konsole ausgegeben.
So erspar ich mir nervige Textfelder für eine Ausgabe in Flash.

Viele Dank für die Antwort
18  International / Deutsch / Ausgabe auf serproxy.exe konsole on: May 28, 2013, 07:12:47 am
Hallo ich habe eine Flash Applikation, die über der serproxy.exe mit Arduino kommuniziert.
Wenn ich das Arduino script innerhalb der Arduino IDE ausführe (Serial Monitor) mit Serial.println(...); etwas ausgeben lassen.
Wenn das script jedoch auf dem Board geflasht ist kann ich diese Ausgabe nicht in der Konsole vom serproxy.exe sehen.

Wie kann ich das realisieren, dass ich mir irgendwelche Werte grafisch ausgeben lassen kann?
printf(...); geht leider auch nicht.

Vielen Dank schonmal im Voraus
19  International / Deutsch / Re: neue LPD8806 mit 52 LEDs/m (neue library?) on: February 28, 2013, 08:55:28 am
Ja super!

das wars.

Vielen dank
20  International / Deutsch / Re: neue LPD8806 mit 52 LEDs/m (neue library?) on: February 28, 2013, 08:08:51 am
Ich habe hier mal ein script, dass mit den alten strips wunderbar läuft.
Das neue strip bleibt aus

Code:
#include "LPD8806.h"
#include "SPI.h"
#include "SimpleTimer.h"

int dataPin1 = 5;
int clockPin1 = 4;

int stripLengthv = 38;
int totalLength = stripLengthv;

LPD8806 strip1 = LPD8806(stripLengthv, dataPin1, clockPin1);



int aktPixel;
int aktPart;


char incoming = '0';                    // incoming serial data
unsigned char incomingString[5];
int counter = 0;


unsigned long millisdelaydelta=1000;   // for blinking
unsigned long startMillis;

uint8_t aktR;
uint8_t aktG;
uint8_t aktB;
uint8_t d;                             // dimmfactor

#define EOL_DELIMITER '\n'            // for flash
#define LED_PIN 13

int rainbowIndex = 0;



//----SETUP-------------------------------------------------------------------------------------------------------------------------

void setup()
{
  Serial.flush();
   
  counter = 0;
 
  for(int i=0; i<6; i++)
  {
    strip1.begin();
    strip1.show();
  }
 
  //stripLength = strip.numPixels(); // NEW

  Serial.begin(9600);

  Serial.print("INITIALIZING");
  Serial.print(EOL_DELIMITER);


  Serial.print("READY");
  Serial.print(EOL_DELIMITER);
  //clearAllLeds();
  pinMode(LED_PIN, OUTPUT);
 
  //blinkTimer.setInterval(100, LedBlink);
 
  Serial.flush();
 
 
}


//----LOOP-------------------------------------------------------------------------------------------------------------------------

void loop()
{
  rainbowIndex = (rainbowIndex+1)%384;
 
  Wheel(rainbowIndex);
 
  for (int i=0; i < totalLength; i++) {
    paint(i);
  }
 
  showStrip();

  delay(10);
}

void showStrip()
{
  for(int i=0; i<6; i++)
  {
    strip1.show();
  }
}

void paint(int pixelPos)
{
  strip1.setPixelColor(pixelPos, aktR, aktG, aktB);
}

void Wheel(uint16_t WheelPos)
{
  byte r, g, b;
  switch(WheelPos / 128)
  {
  case 0:
    r = 127 - WheelPos % 128;   //Red down
    g = WheelPos % 128;      // Green up
    b = 0;                  //blue off
    break;
  case 1:
    g = 127 - WheelPos % 128;  //green down
    b = WheelPos % 128;      //blue up
    r = 0;                  //red off
    break;
  case 2:
    b = 127 - WheelPos % 128;  //blue down
    r = WheelPos % 128;      //red up
    g = 0;                  //green off
    break;
  }
 
  aktR = r;
  aktG = g;
  aktB = b;
}


21  International / Deutsch / Re: neue LPD8806 mit 52 LEDs/m (neue library?) on: February 28, 2013, 07:53:59 am
ja es sind LPD8806 verbaut.

aber selbst wenn die anzahl der LEDs nicht stimmt sollte doch zumindest irgendetwas leuchten.
Es bleibt aber leider komplett dunkel
22  International / Deutsch / neue LPD8806 mit 52 LEDs/m (neue library?) on: February 28, 2013, 03:26:49 am
Moin moin.

hab heute eine Rolle von den LPD8806 mit den 52 LEDs pro Meter bekommen zum testen.
Habe bisher immer die mit den 32 verwendet.

Eigentlich dachte ich, das ließe sich einfach um stecken und gut ist.
Anscheinend nicht....

Kann es sein, dass es für diese eine neue library gibt?
Wenn ja wo findet man die?

Danke und viele Grüße
23  International / Deutsch / Re: LPD8806 & FastSPI on: December 04, 2012, 11:02:28 am
ok ein blick ins pin mapping zeigt dass die pins 51 und 52 korrekt sind...nun läuft alles smiley
vielen dank
24  International / Deutsch / Re: LPD8806 & FastSPI on: December 04, 2012, 10:01:43 am
Die Verdrahtung habe leider nicht ich gemacht, aber soweit ich das sehe ist ein band an den pins 50 und 51
weitere bänder an den pins 2-11, aber die dürften dann unter FastSPI ja eh nicht laufen.

ist das korrekt so?
25  International / Deutsch / LPD8806 & FastSPI on: December 04, 2012, 03:23:40 am
Hallo,

ich versuch gerade mal das FastSPI example zum laufen zu bringen aber so richtig will nichts leuchten.
Ist erstmal nur ein ganz simpler funktionscheck.

script sieht so aus. kann mir jemand sagen wo mein fehler liegt?
die ausgabe von "setup" und "loop" funktioniert.

Code:
#include <FastSPI_LED.h>

#define NUM_LEDS 20

// Sometimes chipsets wire in a backwards sort of way
struct CRGB { unsigned char b; unsigned char r; unsigned char g; };
//struct CRGB { unsigned char r; unsigned char g; unsigned char b; };
struct CRGB *leds;

#define PIN 13

int colorSetted = 0;

void setup()
{
  Serial.begin(9600);
 
  FastSPI_LED.setLeds(NUM_LEDS);
  FastSPI_LED.setChipset(CFastSPI_LED::SPI_LPD8806);
  FastSPI_LED.setCPUPercentage(50);
 
  FastSPI_LED.setPin(PIN);
 
  FastSPI_LED.init();
  FastSPI_LED.start();

  leds = (struct CRGB*)FastSPI_LED.getRGBData();
 
  Serial.println("Setup");
}

void loop()
{
  if(colorSetted == 0)
  {
    Serial.println("loop");
   
    for(int i=0; i<NUM_LEDS; i++)
    {
      leds[i].r = 127;
      leds[i].g = 0;
      leds[i].b = 0;
    }
     
    FastSPI_LED.show();
    colorSetted = 1;
  }
}
26  International / Deutsch / Re: Zufallszahl, aber jede nur ein mal on: October 04, 2012, 01:44:23 am
Hat super funktioniert....vielen dank
27  International / Deutsch / Zufallszahl, aber jede nur ein mal on: October 02, 2012, 03:41:52 am
Hallo,

ich habe ein Led strip und möchte nach und nach alle LEDs per zufall angehen lassen.
Bei jedem loop soll eine weitere LED angehen.
Das heißt im random muss überprüft werden, ob die LED schon an ist.
Hier kann man also alle eingeschalteten LEDs in ein Array schmeißen und immer schön schleifen durchlaufen...
Ist mir etwas zu aufwändig.

Hier nun meine Idee (die so richtig nicht funktiniert)

Ich möchte gerne ein Array mit allen LED IDs füllen

Code:
int totalLength = stripLengthv + stripLengthvr + stripLengthhr + stripLengthh + stripLengthhl + stripLengthvl;
int numberArray[totalLength]; //funktioniert leider nicht... "array bound is not an integer constant"


Code:
for(int i=0; i<totalLength; i++)
{
  numberArray[i] = i;
}

im loop möchte ich dann ein element per zufall auswählen und dieses aus dem array löschen.

Code:
int aktPixel = random(totalLength);
paintPixel(numberArray[aktPixel ]);
numberArray.splice(aktPixel, 0);

leider sind diese sachen die ich hier geschrieben hab actionscript3 code und ich weiß sie so recht nicht auf arduino zu transferieren.

also meine zulösenden probleme sind:

1. die totalLength ist in einer variable gespeichert und ich möchte ein Array mit dieser Länge erzeugen
Komischerweise wird ein integer Variable nicht als Längendefinition für ein Array akzeptiert. Was kann ich tun?

2. wie kann ich elemente aus einem Array komplett löschen?
Also so, dass sich gleichzeitig alle nachfolgenden elemente nach vorne schieben und sich die gesamlänge verkürzt?


hoffe mir kann jemand helfen.

viele grüße
28  International / Deutsch / Re: Geschwindigkeit von Arduino erhöhen on: September 14, 2012, 09:22:45 am
jap wird gemacht.

clearOtherLeds() ist aber noch nicht überall draußen....bisher nur in leftCometSolo() und ricgtCometSolo()
den rest ziehe ich am montag nach
29  International / Deutsch / Re: Geschwindigkeit von Arduino erhöhen on: September 14, 2012, 08:28:57 am
es hat mir einfach keien ruhe gelassen.....

ich habe das weglassen der clearOtherLeds jetzt einmal versucht....hat einiges an speed gebracht....ich schätze mal 10-20% etwa....das is schonmal gut...vielen vielen dank schonmal...wenn noch weitere solcher dinge auffallen wär das echt genial....

30  International / Deutsch / Re: Geschwindigkeit von Arduino erhöhen on: September 14, 2012, 08:07:50 am
hallo entschuldigt die lange pause...bin mit dem kram gerade ziemlich im stress

hier nun die verbesserte paint samt umrechnung auf die sternförmige verdrahtung:

Code:
void paint(int pixelPos, int r, int g, int b)
{
  calculatePxForStar(pixelPos);
 
  strips[aktPart].setPixelColor(aktPixel, r*brightness/100, g*brightness/100, b*brightness/100);
}

Code:
void calculatePxForStar(int pixel)
{
  int tempLength = 0;
  //int tempPixel = pixel%totalLength;
  int tempPixel = makeModulo(pixel);
 
  for(int i=0; i<HALO_SIZE; i++)
  {
    tempLength += ledLengthArray[i];
   
    if(tempLength >= tempPixel)
    {
      aktPart = i;
      aktPixel = tempPixel - (tempLength - ledLengthArray[i]) - 1;
     
      break;
    }
  }
}

den zweiten tipp von dir werde ich nächste woche mal probieren wenn es an die optimierung geht...gerade muss erstmal alles funktionieren....tut es aber zum glück auch schon fast smiley-wink

ich meld mich dann nochmal....da geht noch was ^^
Pages: 1 [2] 3