Show Posts
Pages: [1] 2
1  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
2  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
3  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
4  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;
}


5  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
6  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
7  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
8  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?
9  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;
  }
}
10  International / Deutsch / Re: Zufallszahl, aber jede nur ein mal on: October 04, 2012, 01:44:23 am
Hat super funktioniert....vielen dank
11  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
12  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
13  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....

14  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 ^^
15  International / Deutsch / Re: SimpleTimer class -> timer mehrfach von Hand starten und ein mal durchlaufen on: September 14, 2012, 01:24:28 am
ah ok gut vielen dank
Pages: [1] 2