Go Down

Topic: Millis Befehl, Steuerung Schattenbahnof.  (Read 2307 times) previous topic - next topic

kgbrus

Keineswegs, kann ich zumindest von mir behaupten.
Das hast Du mißverstanden.

Der Standard-Arduino ist der UNO, der mit acht Bits arbeitet. Daher beziehen sich viele Aussagen auf einen µC mit acht Bits. Der springende Punkt ist aber, Du hast keinen UNO. Daher passen manche Aussagen, die für den UNO richtig sind, nicht für Deinen µC, weil der eben mit 32 Bits werkelt.

Ich nutze einen Teensy 3.2 und einen ESP32, ebenfalls beide mit einem 32-Bit µC, und falle immer mal wieder auf diese Problematik herein. Diese Erfahrung und meine Abwehrstrategie versuche ich an Dich weiterzugeben.

Oder ganz kurz: Die Arduino-Referenz trifft in manchen Teilen auf den von Dir verwendeten µC nicht zu.


Das verstehe ich auch, aber ist das wirklich Wissen, was ich jetzt für mein aktuelles Projekt brauche? der Int Befehl funktioniert auf dem STM32 anscheinend einwandfrei. DEin Hinweis das er nicht auf allen MCU bzw Plattformen funktioniert und aus welchem Grund ist eine gute Info. 
int - uint8_t - uint_least8t-Oktett... Sorry brauche ich alle nicht nicht da wo ich mich gerade bewege. int reicht mir.
Für euch Profis mag das selbstverständlich sein für mich nicht.
Anderes Beispiel ich kämpfe mich mit eurer Hilfe durch arrays. Ich will Combie nicht zu nahe treten. aber dann kommt "schmeckt mir nicht" und ein Code der zu 50% aus Bahnhof und koffer klauen für mich besteht.
Wie gesagt ihr meint es sicher gut und prinzipiell bin ich dankbar aber ich bin da gerade überfordert. 
Ihr habt mit Sicherheit auch recht wenn, man programmiert um immer wieder mal Projekte zu machen. Wo man auch verschiedenste MCU´s braucht, je nach anwendung. 
Hab ich aber alles nicht. Nur die Moba steuern und sonst erstmal nix.

combie

#166
Oct 15, 2020, 12:21 pm Last Edit: Oct 15, 2020, 12:25 pm by combie
Quote
Ich will Combie nicht zu nahe treten.
Du trittst mit nicht zu nahe, sondern du entfernst dich von mir.

Vergleich:
Ein Zimmermanns Meister geht mit seinem neuen Stift auf die Baustelle.
Dieser Auszubildende erklärt dem Meister, an seinem ersten Tag, was und in welcher Reihenfolge er lernen will und wie man Dachstühle baut.

Du siehst...

Der Meister wird dem Lehrling den Kopf waschen!

Und jetzt zu dir:
Du bist herzerfrischend Kenntnis frei.
Das ist nicht schlimm.
Das waren wir alle mal.

Du möchtest aber bestimmen/entscheiden, was zu lernen ist, hast aber keine Ahnung, was es alles zu lernen gibt. Diese Entscheidungen sind völlig von Fakten befreit. Triffst Urteile über mich und andere. Urteile ohne Fundament. Das können nur Vor- oder Fehlurteile werden.

Du magst bisher mit dieser Strategie gut durchs Leben kommen sein.
Bei mir kommst du da nicht mit durch.
Und bei der Sprache, C++, die du ja verwendest, auch nicht.
Denn die kennt da keine Gnade und wird dir Beinchen um Beinchen stellen.

Ich kann gehen, und mich distanzieren, von deinem Getue...
Was ich hier mit dann auch einleite.

Wie du siehst, kannst du mir nicht zu nahe treten, sondern du blockierst dich selber.


Es ist offensichtlich, dass uns die Umstände alleine nicht glücklich oder unglücklich machen.
Es ist die Art unserer Reaktion darauf, die unsere Gefühle bestimmt.

agmue

der Int Befehl funktioniert auf dem STM32 anscheinend einwandfrei.
Das bezweifle ich, denn einen "Int Befehl" gibt es nicht. Es handelt sich um einen Datentyp, der angibt, welchen Zahlenumfang Du als ganze Zahl speichern kannst.

Das verstehe ich auch, aber ist das wirklich Wissen, was ich jetzt für mein aktuelles Projekt brauche?
Meine Einschätzung:
  • Datentypen zu verstehen, ist grundlegend wichtig. Dabei reicht die Spanne von kosmetisch über speichersparend bis essenziell.
  • Schleifen und Felder erhöhen, wie auch schon geschrieben wurde, die Übersichtlichkeit und Wartbarkeit des Programms und helfen daher, Fehler zu vermeiden. Nicht zwingend notwendig, aber sinnvoll.
  • Strukturen und Klassen erhöhen weiter die Übersichtlichkeit und Wartbarkeit des Programms und helfen daher, Fehler zu vermeiden. Nicht zwingend notwendig, aber sinnvoll.

... aber ich bin da gerade überfordert.
Ob Du genügend Grips hast, Deinen Schattenbahnhof zu programmieren, kann ich natürlich nicht beurteilen. Man kann immer nur das realisieren, was im Rahmen der eigenen Möglichkeiten ist. Aber man kann seine Möglichkeiten erweitern, Du hast ja schon verschiedene Hürden überwunden, also nur zu!

Die Vorstellungskraft ist wichtiger als Wissen, denn Wissen ist begrenzt. (Albert Einstein)

kgbrus

Du trittst mit nicht zu nahe, sondern du entfernst dich von mir.

Vergleich:
Ein Zimmermanns Meister geht mit seinem neuen Stift auf die Baustelle.
Dieser Auszubildende erklärt dem Meister, an seinem ersten Tag, was und in welcher Reihenfolge er lernen will und wie man Dachstühle baut.

Du siehst...

Der Meister wird dem Lehrling den Kopf waschen!

Und jetzt zu dir:
Du bist herzerfrischend Kenntnis frei.
Das ist nicht schlimm.
Das waren wir alle mal.

Du möchtest aber bestimmen/entscheiden, was zu lernen ist, hast aber keine Ahnung, was es alles zu lernen gibt. Diese Entscheidungen sind völlig von Fakten befreit. Triffst Urteile über mich und andere. Urteile ohne Fundament. Das können nur Vor- oder Fehlurteile werden.

Du magst bisher mit dieser Strategie gut durchs Leben kommen sein.
Bei mir kommst du da nicht mit durch.
Und bei der Sprache, C++, die du ja verwendest, auch nicht.
Denn die kennt da keine Gnade und wird dir Beinchen um Beinchen stellen.

Ich kann gehen, und mich distanzieren, von deinem Getue...
Was ich hier mit dann auch einleite.

Wie du siehst, kannst du mir nicht zu nahe treten, sondern du blockierst dich selber.



Dazu nur eines, ich habe weder über dich noch sonstwen hoier ein Urteil gefällt.  Aber gut. Dann wäre zwischen uns alles gesagt.

michael_x

Quote
Es handelt sich um einen Datentyp, der angibt, welchen Zahlenumfang Du als ganze Zahl speichern kannst.
Und hier noch schlimmer, int ist der Standard-Datentyp für Ganzzahlen des jeweiligen Controllers/Prozessors. sizeof(int) kann der Compiler festlegen, darf nur nicht kleiner als sizeof(short) sein oder größer als sizeof(long) sein, aber gerne auch gleich.

Wenn es auf die genaue Größe ankommt, solltest du besser gar nicht erst int verwenden, weil man zu schnell irgendwelche Annahmen statt sizeof verwendet.

Wenn es nicht auf Wertebereich/Größe ankommt, ist es gut, aber das müsstest du selber wissen. Und hoffen, dass die von dir bevorzugten Libraries es richtig machen.

Dass combie gerne mal mehr (oder anderes) erzählt als du hören willst, hat auch sein Gutes. Dadurch werden solche Threads für mehr Leute interessant. Du hast ihn zwar angefangen, aber gehören tut er dir nach der ersten Antwort nicht mehr allein. :)


kgbrus

Quote
Das bezweifle ich, denn einen "Int Befehl" gibt es nicht. Es handelt sich um einen Datentyp, der angibt, welchen Zahlenumfang Du als ganze Zahl speichern kannst.
Sorry hab ich mich falsch ausgedrückt.
Quote
Meine Einschätzung:
Da gebe ich dir durchaus Recht. Im Moment aber nur die Ding, die ich auch brauche. Das mit dem Init Befehl war auch nur ein Beispiel.
Quote
Ob Du genügend Grips hast, Deinen Schattenbahnhof zu programmieren, kann ich natürlich nicht beurteilen. Man kann immer nur das realisieren, was im Rahmen der eigenen Möglichkeiten ist. Aber man kann seine Möglichkeiten erweitern, Du hast ja schon verschiedene Hürden überwunden, also nur zu!
Wie Ihr an dem Video gesehen habt, habe ich das hinbekommen. Die Programierung ist nicht die Beste, vieles hätte man sauberer oder aber auch kürzer lösen können. Aber es läuft und 300 Zeilen Code sind nicht so unübersichtlich. Auch in 6 Monaten nicht.

kgbrus

Und hier noch schlimmer, int ist der Standard-Datentyp für Ganzzahlen des jeweiligen Controllers/Prozessors. sizeof(int) kann der Compiler festlegen, darf nur nicht kleiner als sizeof(short) sein oder größer als sizeof(long) sein, aber gerne auch gleich.

Wenn es auf die genaue Größe ankommt, solltest du besser gar nicht erst int verwenden, weil man zu schnell irgendwelche Annahmen statt sizeof verwendet.

Wenn es nicht auf Wertebereich/Größe ankommt, ist es gut, aber das müsstest du selber wissen. Und hoffen, dass die von dir bevorzugten Libraries es richtig machen.

Dass combie gerne mal mehr (oder anderes) erzählt als du hören willst, hat auch sein Gutes. Dadurch werden solche Threads für mehr Leute interessant. Du hast ihn zwar angefangen, aber gehören tut er dir nach der ersten Antwort nicht mehr allein. :)


Beim int ging es ursprünglich um:
Code: [Select]
const int AutoIn = PB5;
 Ein Eingang beim STM32 der genau 2 Zustände haben kann... Und was ist draus geworden?
Ganz ursprünglich hatte ich nach dem Fehler in meinem code um den Millis Befehl gefragt. Das ich Klammern zu viel hatte hab ich dann irgendwann selbst raus gefunden.
Ich hatte zwischendurch noch eine Frage zu State gestellt, hat keiner was zu gesagt ist dann unter dem ganzen "ich lass mal einen raushängen" wohl unter gegangen. nicht zum ersten mal...schade eigentlich
 

noiasca

#172
Oct 15, 2020, 01:28 pm Last Edit: Oct 15, 2020, 01:43 pm by noiasca
Quote
Beim int ging es ursprünglich um:

const int AutoIn = PB5;


Ein Eingang beim STM32 der genau 2 Zustände haben kann... Und was ist draus geworden?
nein das ist falsch gedacht. Es geht nicht um die zwei Zustände sondern um eine Nummer von 0..255 die den Pin identifiziert. Also  musst du in der (konstanten) Variable nicht 2 Zustände speichern, sondern einen Pin. Und der geht nun mal von 0..255 (Sonderfälle außen vor).

zum Rest: Bleib einfach in der Sache. Wenn du Fragen hast, stelle sie.
Werden sie nicht beantwortet - stelle sie nochmal bis du deine Antwort bekommst. Angriffe auf deine Person sind entweder nicht gewollt oder werden nur von dir so empfunden. Komplett egal. Ignore derartiges. Bleibe bei deine Sachthema und gut ist.

Das derartige Themen zu Abschweifungen führen ist ganz normal. Für dich vielleicht verwirrend, aber es liegt an dir das Thema in die Richtung zu steuern die du willst.

how to react on postings:
- post helped: provide your final sketch, say thank you & give karma.
- post not understood: Ask as long as you understand the post
- post is off topic (or you think it is): Stay to your topic. Ask again.
- else: Ask again.

Go Up