Go Down

Topic: 7Segment display (Read 2304 times) previous topic - next topic

playprogramm

Guten Abend
ich habe mir die 7-Segment anzeige von sparkfun gekauft http://www.watterott.com/de/7-Segment-LED-Anzeige-blau-seriell
und jetzt schaffe ich es nicht die dots zu verändern oder die digits nicht einzeln steuern

(das mit dem anzeigen habe ich schon geschafft)
Quote

boolean segmentout (int zahl)
{
    if(zahl<10){Serial1.print('0');}
    if(zahl<100){Serial1.print('0');}
    if(zahl<1000){Serial1.print('0');}
    Serial1.print(zahl);
   
    return (true);
}


aber die helligkeit oder ähnliches funktioniert nicht ich habe schon alles versucht

danke schon mal für antworten
Gruß Simon

Megaionstorm

#1
Mar 12, 2011, 01:45 pm Last Edit: Mar 12, 2011, 01:49 pm by Megaionstorm Reason: 1
Habe das Display zwar nicht versuche mich aber mal mit der Lösung.

Display mit Arduino über I2C verbinden.
Analog 5 Arduino mit SDA des Displays.
Analog 6 Arduino mit SCL des Displays.

Code: [Select]
#include <Wire.h>

void setup()
{
}

void  loop()
{
byte display_add = 0x70 >> 1; // Hier die I2C Adresse des Displays eintragen, ist hier als Bsp. 0x70

 Wire.beginTransmission(display_add); // Übertragungsanfang zum Display
 Wire.send(0x00); // 1. Digit = 0
 Wire.send(0x01); // 2. Digit = 1
 Wire.send(0x02); // 3. Digit = 2
 Wire.send(0x03); // 4. Digit = 3
 Wire.endTransmission();     // Übertragungsende
 delay(50);
}


Es sollten, von links nach rechts, die Zahlen 0123 auf dem Display erscheinen.
Mein Arduino Projekte Blog:
http://ardu-megatank.blogspot.de/

playprogramm

danke für die Hilfe aber es läuft leider immer noch nicht
nur wildes unwillkürliches geblinke

Gruß Simon

Megaionstorm

#3
Mar 12, 2011, 08:11 pm Last Edit: Mar 12, 2011, 08:18 pm by Megaionstorm Reason: 1
Verbinde TX des Arduino mit RX des Displays und versuch dann mal diesen Code:

Code: [Select]
void setup()
{
 Serial.begin(9600);
 Serial.print(0x7F); // Kommando zum setzen der Baud-Rate
 Serial.print(2);    // Baud-Rate 9600
}

void loop()
{
Serial.print(0x00); // 1. Digit = 0
Serial.print(0x01); // 2. Digit = 1
Serial.print(0x02); // 3. Digit = 2
Serial.print(0x03); // 4. Digit = 3
delay(10000);
}
Mein Arduino Projekte Blog:
http://ardu-megatank.blogspot.de/

playprogramm

gut danke

ich bekomme die zahlen jetzt drauf aber wie stelle ich die Helligkeit ein?
in der bedienungsanleitung steht das man da mehrere sachen schicken muss

(0x77)
und dann eine zahl zwischen 0 und 254 um die Helligkeit einzustellen
aber das bekomme ich nicht hin ich habe gedacht das man das so schreiben kann:

Code: [Select]

Serial1.print(0x77); //Angabe des Spezialzeichens(steht so in der Bedienungsanleitung
Serial1.print(200);  //helligkeits wert

Serial1.print(0x77);//Angabe des Spezialzeichens(steht so in der Bedienungsanleitung
Serial1.print(0x04);//dezimal stellen der Uhr


Megaionstorm

#5
Mar 12, 2011, 10:32 pm Last Edit: Mar 12, 2011, 11:58 pm by Megaionstorm Reason: 1
Das mit der Helligkeit müsste eigentlich so funktionieren:

Code: [Select]
Serial.print(0x7A); // Befehl für Helligkeit ändern
Serial.print(200);  // Neue Helligkeit, hier 1/5 der maximalen Helligkeit
Mein Arduino Projekte Blog:
http://ardu-megatank.blogspot.de/

playprogramm

funktioniert leider nicht auch nich...

Gruß simon

Megaionstorm

#7
Mar 12, 2011, 11:55 pm Last Edit: Mar 12, 2011, 11:58 pm by Megaionstorm Reason: 1
Seite 2:
http://www.sparkfun.com/datasheets/Components/LED/7-Segment/SFE-0012-DS-7segmentSerial-v41.pdf

Quote
Example: to set the display to its dimmest level, send the special character, 0x7A, followed by 254. So send: (0x7A)(0xFE)


Code: [Select]
Serial.print(0x7A); // Befehl für Helligkeit ändern
Serial.print(0);    // Neue Helligkeit, jetzt maximal
Mein Arduino Projekte Blog:
http://ardu-megatank.blogspot.de/

playprogramm

funktioniert immer noch nicht

Code: [Select]

void setup()
{
 
  Serial1.begin(9600);
  Serial1.print(0x7F);
  Serial1.print(2);
  Serial1.print(0x7A);
  Serial1.print(0xFE);
  Serial1.end();
}

ergebnis; 5402 das zeigt das display dann!

wieso funktioniert das nicht so wie es soll??

Megaionstorm

http://www.arunet.co.uk/tkboyd/ec/ec1led4x7ser.htm
Mein Arduino Projekte Blog:
http://ardu-megatank.blogspot.de/

Go Up