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
Zahlenwerte mit Drehknopf einstellen und auf Display anzeigen
08.08.2014, 19:02
Beitrag #9
RE: Zahlenwerte mit Drehknopf einstellen und auf Display anzeigen
(08.08.2014 17:33)Cray-1 schrieb:  Hallo Leute,

ich habe mir einen Encoder zugelegt, alles funktioniert soweit. Nur benötige ich auch Zahlen mit einer Nachkommastelle.
Es ist dies der Encoder, der beispielhaft auf der Arduino-Seite angeboten wird:http://playground.arduino.cc/Main/RotaryEncoders

Weiß jemand von euch, wie man die Nachkommastelle programmieren kann?

Danke schon mal im voraus
Cray-1

..ist doch ganz einfach, die Variable wo du per Encoder rauf und runter zählst läßt von 0 bis 1000 laufen und dann zum weiterverwenden teilste durch 10...so ähnlich habe ich das auch mal gemacht...allerdings in C...

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
08.08.2014, 19:03
Beitrag #10
RE: Zahlenwerte mit Drehknopf einstellen und auf Display anzeigen
Kann ein Encoder nur ganze Zahlen ausgeben, oder kann man das so programmieren, dass zum Beispiel 10,6 angezeigt wird?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
08.08.2014, 19:20
Beitrag #11
RE: Zahlenwerte mit Drehknopf einstellen und auf Display anzeigen
(08.08.2014 19:03)Cray-1 schrieb:  Kann ein Encoder nur ganze Zahlen ausgeben, oder kann man das so programmieren, dass zum Beispiel 10,6 angezeigt wird?

..ein Encoder liefert nur Impulse ab...siehe Datenblatt... daraus eine Zahl ob mit oder ohne Kommastellen machen obliegt dem Programmierer..

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
08.08.2014, 20:11
Beitrag #12
RE: Zahlenwerte mit Drehknopf einstellen und auf Display anzeigen
Könntest Du mir den C-Code dazu geben, wäre super nett.

Gruß
Cray-1
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
10.08.2014, 08:01
Beitrag #13
RE: Zahlenwerte mit Drehknopf einstellen und auf Display anzeigen
(08.08.2014 20:11)Cray-1 schrieb:  Könntest Du mir den C-Code dazu geben, wäre super nett.

Gruß
Cray-1

....also hier der C-Code....nix Arduino also..
Abfrage 3 kanaliger Encoder auf den Port-Bits 0 bis 2
Code:
// ##### einlesen ALPS Encoder

buffer = ~PING; // ALPS einlesen   ! 8 Bit Port

encstate = buffer & 0x07; // Encoder ausmaskieren

if(encstate != encold){

if(encstate == 1 & encold == 2){enccount ++;
                                                encold = encstate; } // Plus 1

if(encstate == 2 & encold == 4){enccount ++;
                                                encold = encstate; } // Plus 1

if(encstate == 4 & encold == 1){enccount ++;
                                               encold = encstate; } // Plus 1

if(encstate == 1 & encold == 4){enccount --;
                                                encold = encstate; } // Minus 1

if(encstate == 2 & encold == 1){enccount --;
                                                encold = encstate; } // Minus 1

if(encstate == 4 & encold == 2){enccount --;
                                                encold = encstate; } // Minus 1

}

Und hier das umsetzen auf die eine Nachkommastelle, zuerst Wertebegrenzung:
Code:
// Sollfrequenz bestimmen ENDLOSSCHLEIFE
zherzold = zherz ; // alten zherz Wert speichern
zherz = enccount; // mal sehen wie das ist

//######## Wertebegrenzung
if(zherz >= 1000)zherz = 1000;
if(zherz <= 0)zherz = 0;
enccount = zherz;

// fout anzeigen 1.ste Zeile
herze = zherz / 10; // Zehntel abschneiden
herzz = zherz - herze * 10; // Herz Zehntel
sprintf(lcdout,"fout: %3d.%1d Hz", herze, herzz); // ausgabe ueber String vorbereiten
lcdcur(0,0); // Cursor setzen
lcdstr(lcdout);  // String auf LCD ausgeben
Wie du siehst ging es hier um die Anzeige einer Frequenz.
lg
bk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  2,8" Touchscreen Display Shield - so gehts avoid 1 233 04.06.2018 11:57
Letzter Beitrag: Crazy
  Problem mit TFT Display Anzeige wechseln Thor Wallhall 9 550 02.06.2018 23:30
Letzter Beitrag: Thor Wallhall
Sad Hilfe bei 2.4 TFT Display Harry Hirsch 56 3.529 27.05.2018 22:07
Letzter Beitrag: hotsystems
  TFT Display will nicht so wie ich Franzel007 10 647 12.05.2018 09:28
Letzter Beitrag: amithlon
  Schrifttypen einbinden für TFT Display Thor Wallhall 35 2.145 05.04.2018 22:24
Letzter Beitrag: Thor Wallhall
  Einen Startwert für den Millis() Zähler einstellen?? Franz54 9 636 01.04.2018 17:01
Letzter Beitrag: Franz54
  Fehlende Einerstelle auf LCD Display Ardu2018 8 597 26.03.2018 09:45
Letzter Beitrag: Tommy56
  Arduino und Nextion Display Diskusguppy 16 1.307 08.03.2018 02:26
Letzter Beitrag: Diskusguppy
  Problem mit OLED 0.96" Display torsten_156 5 1.920 07.03.2018 23:27
Letzter Beitrag: Tommy56
  OLED Display 1,3" DonCamillo 1 263 07.03.2018 23:12
Letzter Beitrag: Tommy56

Gehe zu:


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