INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
TM1637 Display
17.07.2015, 15:42 (Dieser Beitrag wurde zuletzt bearbeitet: 17.07.2015 15:43 von F2Ingo.)
Beitrag #1
TM1637 Display
Hallo zusammen,
ich Google mir hier grad nen WolfWink

Ich habe hier ein 4 Digit 7 segment Display mit TM1637 Treiber.
Zahlen darstellen kann ich damit so wie ich mir das vorgestellt habe, aber den Dezimalpunkt bekomme ich nicht gesetzt.
Das Display hat 4 Punkte statt eines Doppelpunktes in der Mitte

http://www.ebay.de/itm/4-stellige-LED-Ro...3aab6e3778

Hat da schon jemand Erfahrung mit??

Gruß Ingo

Gruß Ingo Angel
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
18.07.2015, 10:39
Beitrag #2
RE: TM1637 Display
Hallo Ingo,

hast dud ir mal die Library angeguckt: https://github.com/avishorp/TM1637
Die Library hat auch eine Funktion showNumberDec() . Damit sollte es klappen.
Grüße Ricardo

Nüchtern betrachtet...ist besoffen besser Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
18.07.2015, 10:55
Beitrag #3
RE: TM1637 Display
Danke Ricardo,
aber auch damit hab ich es nicht hinbekommenConfused

Gruß Ingo

Gruß Ingo Angel
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
18.07.2015, 10:58
Beitrag #4
RE: TM1637 Display
Kannst du den Code mal reinstellen?
Grüße RK

Nüchtern betrachtet...ist besoffen besser Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
18.07.2015, 14:34
Beitrag #5
RE: TM1637 Display
Ich versuchs mal mit dem TestcodeRolleyes

Code:
#include <TM1637Display.h>


#define CLK 2
#define DIOA 3
#define DIOB 4
int sensorPin  = A0;
int sensorPin2 = A1;
int sensorValue  = 0;
int sensorValue2 = 0;



void setup()
{


}

void loop()
{
  display1();
  
  display2();
  
  
  
  delay(500);
  
}  

void display1()
{
  TM1637Display display(CLK, DIOA);
  display.setBrightness(8);
  sensorValue = analogRead(sensorPin);
  uint8_t segto;
  //segto = 0x80|display.encodeDigit((sensorValue/100)%10);
  //display.setSegments(&segto,1,1);
  display.showNumberDec(sensorValue,true,4);
  delay(1);
}

void display2()
{
   TM1637Display display(CLK, DIOB);
   display.setBrightness(8);
   sensorValue2 = analogRead(sensorPin2);
   display.showNumberDec(sensorValue2,true);
   delay(1);
}

Gruß Ingo

Gruß Ingo Angel
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
18.07.2015, 17:30
Beitrag #6
RE: TM1637 Display
Wenn du keine Komma Zahl erzeugst kann auch kein Dezimalpunkt angezeigt werden. Mach mal aus
Code:
int sensorValue  = 0;
sowas hier
Code:
float sensorValue  = 0.00;

Gruß
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
18.07.2015, 18:07
Beitrag #7
RE: TM1637 Display
Ist schon klar mit dem float,
aber die Library sieht das so nicht vor.Ich kann nicht 1.23 vorgeben, daraus wird dann nur 1 , alles nach dem Punkt fällt weg.

Gruß Ingo

Gruß Ingo Angel
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
18.07.2015, 19:59 (Dieser Beitrag wurde zuletzt bearbeitet: 18.07.2015 20:13 von rkuehle.)
Beitrag #8
RE: TM1637 Display
Zitat:display.showNumberDec(sensorValue2,true);
Laut Testsketch bzw. cpp Datei sagt dieser Aufruf nur aus, dass sensorValue mit führender 0 ausgegeben werden soll.
Der Aufruf den du meinst ist in der .h Datei so definiert:
Zitat:/* Displays the given argument as a decimal number
@param num The number to be shown
@param leading_zero When true, leading zeros are displayed. Otherwise unnecessary digits are
@param length The number of digits to set. The user must ensure that the number to be shown fits to the number of digits requested (for example, if two digits are to be displayed, the number must be between 0 to 99)
@param pos The position least significant digit (0 - leftmost, 3 - rightmost) */
void showNumberDec(int num, bool leading_zero = false, uint8_t length = 4, uint8_t pos = 0);
Bedeutet die Library stellt keine float-Werte dar, sondern nur int Werte zwischen deren Digits man einen Punkt plazieren kann.
Grüße Ricardo

Nüchtern betrachtet...ist besoffen besser Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Daten übergabe ans Nextion Display Franz54 53 1.717 09.10.2017 09:16
Letzter Beitrag: Franz54
  Nextion Display komma Zahlen darstellen becki133 8 420 18.09.2017 18:26
Letzter Beitrag: becki133
  433 MHz - Empfaenger + OLED display Matthias_Arduino 4 266 03.09.2017 17:25
Letzter Beitrag: hotsystems
Wink Arduino TFT Display MEGA 2560 Samsuino 47 3.235 24.07.2017 12:45
Letzter Beitrag: Harry Hirsch
  Nextion Display führt keine gesendeten Befehle aus re.eule 12 1.793 13.07.2017 21:46
Letzter Beitrag: SkobyMobil
  Waveform auf Nextion Display GuaAck 6 791 12.04.2017 19:08
Letzter Beitrag: SkobyMobil
  neues OLED Display nötig an vorhandenem uC Systemswerlich Ersatz hd311 7 407 26.03.2017 11:16
Letzter Beitrag: hd311
  Pinbelegung TFT-Display ILI9341 mingo 19 1.318 23.03.2017 17:49
Letzter Beitrag: oOSpikeOo
  Display über I2-Bus betreiben mfri 22 1.400 23.01.2017 11:06
Letzter Beitrag: renid55
  matrix display elegoo uno R3 starter set lecker16 7 1.106 23.11.2016 21:14
Letzter Beitrag: Bitklopfer

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste