Brauche dringend hilfe

na also... wird doch. jetzt nur noch ein paar verzweigungen um die range abzustecken und schon ist's fertig :smiley:

So wars geplant. :wink:

Jetzt müssen wir die zwei Zahlen noch in Balken umwandeln und fertig. :slight_smile:

Hab jetzt Feierabend, aber die Anderen scheinen grade so richtig in Fahrt zu sein... XD Bis Morgen!

Joghurt:
Ja, aber das das accx ausschließlich in der loop() benutzt wird hab ichs aus Gründen der Übersichtlichkeit einfach reingezogen... :wink:

Ja, hab ich auch gerade gesehen. Trotzdem würde byte wohl ausreichen.

@konni: Setz mal spaßeshalber ein delay(500); in die loop-Funktion.

sth77:
@konni: Setz mal spaßeshalber ein delay(500); in die loop-Funktion.

...vergiss aber nicht das anschließend wieder auszubauen, sonst reagiert das Display träge und verpasst ggf. Beschleunigungsspitzen!

Btw. wie wärs denn mit so nem "Maximalwertpunkt" am Ende des Balkens, falls jemand dazu Lust hat...? :smiley:
Sowas wies das in den alten Sterteoanlagen gab, wo der Maximalwert der letzten 10 Sekunden oder so mit ner einzeln leuchtenden LED markiert war.

Kein Problem, Serial Monitor war ja nur zum gucken ob das Nunchuck funktioniert.

Da Du ja jetzt sogar schon was auf dem Display hast kann man die Werte ja eigentlich auch da ausgeben... :smiley:

konni87:
danke an yogurt
und an den rest grande problem hab grad den serial monitor geöffnet jetz zeigt mein display nemme die zahlen sonder nur noch hyroglyphen an

Drück den Reset-Button vom Arduino. Das Fehlverhalten wundert mich jetzt aber, schließlich ist in Joghurts Code keine Initialisierung der seriellen Schnittstelle drin. Vielleicht kam das Display aufgrund der hohen Geschwindigkeit durcheinander. Wie gesagt, ich würde zumindest noch das delay reinsetzen.

erst mal würd ich gern des zittern weg bekommen das ich seh was die anzeigen

deshalb das delay(500) in den loop

konni87:
wie wat wo? ich bin anfänger ne noch ne stufe drunter wie schreib ich des in den loop?

Es gibt gleich Haue! :smiley: Du hast doch deine loop-Funktion:

void loop () {
  // bla bla bla
  
  delay (500);   // 500 Millisekunden Pause
}

Einfach ans Ende der Funktion die kleine Zeile einfügen.

konni87:
den seriel brauch ich ja eigentlich jetz nemme oder?hab ja alles auf display

Ja, eigentlich nicht. :slight_smile:

Du machst es ihm aber auch arg leicht sth77... als nächstes muss man ihm das tippen erklären und anschließend das atmen. und dann machen wir es ganz allein. Ein bisschen eigenanteil und initiative sollte schon vorhanden sein.

ok hab ich jetz ham sich die zeile oben nach unten verschoben und es zittert nemme is aber extrem träge

Und wieso könnte das so sein?

EDIT: Ich geb dir nen Tipp:
delay (500); // 500 Millisekunden Pause

Die hyroglyphen liegen mMn an schlechter verkabelung und ncht am delay; hatte ich auch schon - ein wackler im Clock- oder Reset-Pin und schon hast du die von dir beschriebenen zeichen. dann hilft nur noch ein neutstart des arduinos

Die falschen zeichen auf dem Display können mehrere Ursachen haben: kalte Lötstelle, Aufbau auf einem Steckbrett und dadurch schlechter Kontakt. Wenn da mal ein Patzer in der Datenübertragung drin ist, also ein Kabel leicht wackelt, kann das das Display durcheinanderbringen. Vielleicht kann es auch nur nicht so schnell aktualisieren, das können wir schlecht beurteilen.
Nun musst du uns aber noch das Minimum und Maximum der Zahlen nennen...

Das mit den 100-999 nehme ich dir nicht ab. :smiley:

Wenn du den Code von Joghurt nimmst, kannst du mal unter der von mir vorgeschlagenen delay-Anweisung noch ein lcd.clear(); setzen?

[edit] Um meinen Gedanken dahinter zu erklären: Durch diese Anweisung wird das Display gelöscht. Andernfalls bleiben immer 3 Zahlen stehen, wenn ein Wert zum Beispiel 185 und es kommt eine Aktualisierung auf 75, wird an der entsprechenden Position auch 75 geschrieben. Diese Zahl ist aber zweistellig, die dritte Stelle der 185 bleibt aber stehen - das Ergebnis auf dem Display wäre somit 755. Wie gesagt, es ist nur die Darstellung, der ausgelesene Wert ist richtig.

Laut Code:

  accx  = nunchuck_accelx(); // ranges from approx 70 - 182
  accy  = nunchuck_accely(); // ranges from approx 65 - 173

ist wegen dem fehlenden clear

edit: zu spät :sunglasses:

Mappen auf 0-15 und einen Kasten im display verschieben????

Ist dann aber nicht sehr genau

MueThoS:
Mappen auf 0-15 und einen Kasten im display verschieben????

Ist dann aber nicht sehr genau

jepp :grin:

konni87:
hääääääääää

Ja, so ist das, wenn man die Arduino-Programmierung nicht beherrscht. Macht jetzt aber auch nichts mehr, wir sind ja fast durch. :wink:
Leg dich mal fest, wie die Darstellung werden soll - wir sehen es als sportliche Herausforderung, das zu verwirklichen.

Ich würde es folgendermaßen machen:

|-------O------|
|-------OO-----|
|-------OOO----|
|-------OOOO---|
|-------OOOOO--|
|-------OOOOOO-|
|-------OOOOOOO|
|OOOOOOO-------|
|-OOOOOO-------|
|--OOOOO-------|
|---OOOO-------|
|----OOO-------|
|-----OO-------|
|------O-------|
|--------------|

Würde jeweils eine Zeile des Displays für eine Bewegungsrichtung des Nunchuck nehmen, dann hast Du nicht nur einen Schräglagensensor (auf einer Zeile) sondern auch gleich eine Brems- und Beschleunigungsanzeige (auf der anderen Zeile). :slight_smile:

Ich kann nicht richtig mit machen bin unterwegs!
Ich hätte noch 8sonderzeichen gemacht um die auflösung zu verbessern
Aber kann mich da jetzt nicht dran setzen, sorry