Attiny26-16PU startet Programm nicht

#7767991
Lesenswert?

Hi ich neu in Sachen attiny und wollte für ein bauprojekt den attiny26-16PU programmieren und wollte zum testen eine LED blinken lassen. Meine Hardware: -Attiny26-16PU -Usbasp-clone -Led mit vorwiederstand software: -Avrdude zum flashen -Arduino IDE zum programm schreiben

Ich habe die hex Datei über Avrdude auf den attiny gespiel was auch geklappt halt laut der Rückmeldung von Avrdude(siehe Bild)

Leider Blinkt die Led nicht wenn ich sie anschließe und auch mit einem Multi Meter hab ich keine Veränderung an den Ausgabepins

Danke schonmal im voraus für eure Hilfe

#7768030
Lesenswert?

Wie gesagt ich bin nur neu mit Microchips mit einem nano schaff ich das. Ich wollte halt was neues ausprobieren und für ein Projekt einen attiny26-16 nutzten da es den in meinem lokalen Hardwarehandel zu kaufen gab. Ich Versuche mich hier nur weiterzubilden und Erfahrungen zu machen dabei ist man nun mal auf Erfahrung von anderen angewiesen. Deshalb habe ich ja auch hier diese Frage gestellt LG und danke für die Antworten die haben mich auf jeden Fall fürs erste weitergebracht

#7768051
Lesenswert?

Entschuldige wenn ich das jetzt so sagen muss, aber du hast das ganze System noch nicht verstanden. Das zeigt mir deine For-Schleife im Setup. Die kann da niemals hoch zählen. Übe doch besser noch mit den üblichen Boards und versuche besser erstmal das System zu verstehen, anhand der Beispiele. Ich könnte jetzt noch mehr Details bringen, aber du wirst eh drüber stolpern.

#7768059
Lesenswert?

Den Code habe ich mehrmals versucht mit Hilfe von ki anzupassen da ich nicht genau wusste wie ich die Pins definieren muss usw. da ich mich ja wie gesagt mit den attinys nicht auskenne das war halt die löung der ki gut hätte ich auch drauf kommen können aber ich lerne halt noch und ich möchte mir das Wissen halt einfach beibringen und für mein Projekt brauche ich halt einen attiny weil der arduino nano der ebenfalls verwendet wird zu wenig anschlüsse hat für mein Vorhaben somit möchte ich eine Kommunikation zwischen den beiden erstellen. Das Projekt war auch definitiv als Kernprojekt angesehen da ich darüber Versuche mehr über das genze zu lernen und als schüler fehlt mir halt einfach das wissen welches ich mir online einholen muss

#7768076
Lesenswert?

Pascal S. schrieb:

ersucht mit Hilfe von ki anzupassen da ich nicht genau wusste

Das scheint nicht eine strukturierte denkweise und lesen der Doku ersetzen zu können. Falls du das hier verlinkte framework nutzt, müsstest du D14 ansteuern, um am physischen PIN 9 eine ausgabe zu erhalten.

Frank G. schrieb:

Ich bin kein Arduino-Experte, aber stimmt deine Pinbelegung? https://github.com/Nich1con/ATtiny26-Core/blob/main/doc/ATtiny26-pinout.png

Wenn es rein um mehr I/O geht, schau dich mal nach schieberegistern und portexpandern um.

#7768113
Lesenswert?

Das hier blinkt bei mir:

1
#define led    PB6                   // physikalischer Anschluss 9 des ATtiny26
2
#define speed  500
3

4
void setup() 
5
{
6
  pinMode(led, OUTPUT);
7
}
8

9
void loop() 
10
{
11
  digitalWrite(led, HIGH);   // LED an
12
  delay(500);                // warten
13
  digitalWrite(led, LOW);    // LED aus
14
  delay(500);                // warten
15
}

ATtiny-Core ist:

https://github.com/SpenceKonde/ATTinyCore

#7768139
Lesenswert?

Pascal S. schrieb:

Den Code habe ich mehrmals versucht mit Hilfe von ki anzupassen da ich nicht genau wusste wie ich die Pins definieren muss usw. da ich mich ja wie gesagt mit den attinys nicht auskenne das war halt die löung der ki gut hätte ich auch drauf kommen können aber ich lerne halt noch und ich möchte mir das Wissen halt einfach beibringen und für mein Projekt brauche ich halt einen attiny weil der arduino nano der ebenfalls verwendet wird zu wenig anschlüsse hat für mein Vorhaben somit möchte ich eine Kommunikation zwischen den beiden erstellen. Das Projekt war auch definitiv als Kernprojekt angesehen da ich darüber Versuche mehr über das genze zu lernen und als schüler fehlt mir halt einfach das wissen welches ich mir online einholen muss

Sei mir bitte nicht böse, aber solche Textblöcke sind genau der Grund, warum der liebe Gott (oder war es der Deutschlehrer) das Komma erfand. Lass das doch mal auf Dich wirken und beantworte Dir die Frage, ob sauber gesetzte Kommas diesen Wust an Inhalt doch etwas besser hätte strukturieren können. Und dann denke mal darüber nach, ob der Deutschlehrer (vom lieben Gott können wir ja trotz mehrerer Jahrtausende einseitiger Kommunikation keine Antwort erwarten) nicht Recht hatte in den Versuchen, Dich auf eine professionelle Ausdrucksweise im Beruf, aber auch im allgemeinen Leben vorzubereiten.

Und Nein, man benutzt eine korrekte Schreibweise nicht nur in Ausnahmefällen, wenn man mit wichtigen Leuten redet. Man isst ja auch nicht nur dann mit Messer und Gabel, wenn man mit wichtigen Leuten zusammensitzt.

#7768174
Lesenswert?

Pascal S. schrieb:

Die LED ist an den Physischen Pin 9 angeschlossen

Der Code sieht o.k. aus, abgesehen davon, daß man Code nie als Bild postet, sondern als *.c oder *.ino.

Jede LED an den Arduino-Pins 0..5 sollte reihum 0,5s an sein und 5,5s aus. Was davon nun welchem AVR-Portpin entspricht, mußt Du schon selber ermitteln. Dafür sollte es eine Doku geben. Der physische Pin ist wiederum was ganz anderes, der hängt vom Gehäusetyp ab.

Man darf Pins auch so ansprechen, wie es im Datenblatt steht (A7..0, B7..0), dann fällt schonmal eine Fehlerquelle weg.

#7768180
Lesenswert?

Frank O. schrieb:

Peter schrieb:

So ein Quatsch.

Ausprobiert? Ich schon.

Ich auch. Und ja: For-schleifen sind in setup() natürlich möglich.

(ein klein wenig) verkürzt sieht die main() in arduino so aus:

1
void main(){
2
  setup();
3
  while(1){
4
    loop();
5
  }
6
}

Mit anderen Worten: Auch wenn setup nur einmal durchlaufen wird, ist es eine ganz normale Funktion, in der - wie Peter bereits schrieb - alle normalen Sprachkonstrukte möglich sind. Darunter auch Schleifen.

PS: Auch dieses Beispiel läuft (auch wenn es nicht sonderlich sinnvoll ist, weil es loop() ad Absurdum führt)

1
void setup(){
2
  pinMode(pin, OUTPUT);
3
  while(1){
4
    digitalWrite(pin, HIGH);
5
    delay(500);
6
    digitalWrite(pin, LOW);
7
    delay(500);
8
  }
9
}
10

11
void loop(){
12
 //wird nie aufgerufen
13
}
#7768181
Lesenswert?

Frank O. schrieb:

Peter schrieb:

So ein Quatsch.

Ausprobiert? Ich schon.

Ich auch. Peter hat (natürlich) Recht:

In der Arduino-Welt sind sowohl setup() wie auch loop() "stinknormale" Funktionen, welche in der implizit vorhandenen main Loop nacheinander aufgerufen werden.

Was genau in setup() oder in loop() geschieht, ist nun wirklich wurscht. Ich habe gerade erfolgreich sowohl eine einfach Loop über 1000 Iterationen wie auch eine Berechnung der ersten 1000 Stellen von Pi in setup() durchgeführt, und natürlich funktioniert das einwandfrei.

[Edit: Tobias war schneller :-) ]

#7768191
Lesenswert?

Hi Also, kurz gesagt, Setup ist ein Programmteil, in dem ein Controller eingerichtet wird und damit beim Starten 1x durchlaufen wird. Das heißt aber nicht, das da keine Schleife laufen darf wenn es doch sinnvoll wäre. Ich kann jederzeit in einem beliebigen Programmteil irgendwelche Schleifen laufen lassen. Nur das Setup darf natürlich nicht innerhalb des Hauptprogrammes wieder einbezogen werden. Und dann hat das eigentliche Programm die Möglichkeit, Timer zu nutzen, Ausgänge zu setzen und Eingänge zu lesen.
Nun zur Art der Programmierung. Klar, man kann mit Delay arbeiten, aber spätestens, wenn das Programm mal etwas sinnvolles machen sollte, sind Wartezeiten im Hauptprogramm unerwünscht. Man möchte doch bei der Bedienung nicht warten wollen, bis so eine Wartezeit abgelaufen ist und der Controller endlich den Programmteil aufruft, in dem er die Eingänge abfragt. Daher möchte ich Pascal den Rat geben, arbeite mit dem Timer. Allerdings kann ich dir in C nicht weiterhelfen, doch ich bin mir sicher, hier sind genügend Helfer, die dir da einen Tip geben können. Gruß oldmax

#7768326
Lesenswert?

... außerdem:

Zum Thema void setup()

Alle Vorredner haben "irgendwie" Recht, übersehen aber etwas, was der TO noch falsch gemacht hat!

1
// Vorsicht, nicht funktionierender Code hier !
2
void setup() 
3
{
4
  for (int i = 0; i< 6; i++) {
5
  pinMode(i, OUTPUT);
6
  }
7
}
8

9
// richtiger Code für Einstellung Standard PinMapping
10

11
#define led 14
12
void setup() 
13
{
14
  pinMode(led, OUTPUT);  
15
}

In "setup" kann sehr wohl eine Schleife abgearbeitet werden. Allerdings, die Funktion pinMode(pin, mode) für "pin" keine Variable verarbeiten, das muß eine Konstante sein.

Weshalb der Compiler hier nicht meckert ist natürlich übel.

Zudem für den TO (ein weiterer Fallstrick):

Im Menü "Werkzeuge" gibt es für "Boards" und einem eingebundenen Core für ATtiny einen Punkt "Pin mapping". Hier kann angegeben werden, ob die Standardmethode der Pinnummerierung gültig sein soll (Arduino Notation). im Standard muß der Pin für physikalischen Pin Nr. 9 "14" heißen:

pinMode(14, OUTPUT);

In der Einstellung "legacy" muß es heißen

pinMode(PB6)

Gast #7768335
Lesenswert?

Ralph S. schrieb:

In "setup" kann sehr wohl eine Schleife abgearbeitet werden. Allerdings, die Funktion pinMode(pin, mode) für "pin" keine Variable verarbeiten, das muß eine Konstante sein.

Weshalb der Compiler hier nicht meckert ist natürlich übel.

Aus https://github.com/arduino/ArduinoCore-avr/blob/master/cores/arduino/wiring_digital.c findest Du ein

1
void pinMode(uint8_t pin, uint8_t mode)

Das ist ein unsigned byte. Warum sollte der Compiler meckern?

Bei den 32-bit-Core ist es ein uint32_t.

#7768343
Lesenswert?

Frank G. schrieb:

Ich bin kein Arduino-Experte, aber stimmt deine Pinbelegung? https://github.com/Nich1con/ATtiny26-Core/blob/main/doc/ATtiny26-pinout.png

Das Bild erklärt schonmal, warum Pin 9 nicht als 0..5 angesprochen werden kann. Weiterhin wäre wichtig, ob es nur diese eine Zuordnung gibt und in welcher Lib das passiert. Mein Russisch ist schon etwas eingerostet, um alles zu verstehen.

(Firma: Jasinski) #7768399
Lesenswert?

Frank O. schrieb:

Nimm am besten einen Uno oder Nano (besser für Steckbrett). Da ist die LED passend für die Beispiele schon drauf. Arbeite dich durch die Beispiele durch. Dokumentation und alles andere gibt es auf Arduino.cc

Ja, es wäre das beste sich z.B. einen Arduino-Uno für den Anfang mit Blinkversuchen zu holen, falls man sich am Anfang schon für die Arduino-IDE entschieden hat – bei uns in Deutschland bestellt, kommt es nach 1-3 Tagen zu Hause an und dann wird das Teil via USB mit der IDE direkt verbunden, aber man kennt es ja von den Wackelkandidaten bestens – es wird einfach immer mit dem Kopf durch die Wand geschlagen, bis der Arzt kommt. Da werden lieber viele Wochen für Nichts vergeudet und seitenweise Beiträge dazu verfasst, nur um ein 5-Zeilen-Blink-Programm zum Laufen zu bringen oder den Port für die eigene LED zu finden, weil man von Anfang an so gut wie alles falsch entschieden hat und dann auch noch stur daran festhält, wenn Leute mit mehr Erfahrung einen anderen, besseren Weg aufzeigen möchten.

#7768403
Lesenswert?

Ich weiß das es einfacher ist einen arduino nanu zu verwenden, ich möchte auch eigentlich kein Blinklicht bauen sonder etwas anderes wofür ich einen zweiten Microcontroller brauche da das ganze nicht groß sein soll dachte ich mir ich nutze einen attiny und mein lokaler Hardwareladen hatte halt nur den 2616pu da. Und dann will ich mir Hilfe holen weil darüber nichts dokumentiert ist und viele sagen ich soll das lassen und lieber was anderes machen 🤷 Ich bin dankbar über die tollen Lösungsansätze aber alles andere ist einfach keine große Hilfe

#7768405
Lesenswert?

Thomas W. schrieb:

void pinMode(uint8_t pin, uint8_t mode)

Das ist ein unsigned byte. Warum sollte der Compiler meckern?

Er meckert ja auch nicht!

Peter D. schrieb:

Bestimmt wer?

Man kann sich Bitmasken und Portadressen auch aus Tabellen holen. Ist zwar ne Menge Code, aber es geht. Die Ports sind ja auch als SRAM gemappt und nicht nur als IO.

:-) stimmt absolut. Anfängerfreundlich ist das jedoch nicht! Einfach nur in einer Schleife den Wert einer Zählvariable an pinMode übergeben funktioniert jedenfalls nicht!

Peter D. schrieb:

Das Bild erklärt schonmal, warum Pin 9 nicht als 0..5 angesprochen werden kann. Weiterhin wäre wichtig, ob es nur diese eine Zuordnung

Da waren wir schon. Es gibt 2 Zuordnungen: Standard und Legacy. Bei Standard wird der Arduinopinname erwartet (hier 14), bei Legacy den Portpinnamen (hier PB6).

Pascal S. schrieb:

Wie genau hast du das mit Tinycore gemacht? Weil bei mir gibts da den attiny26-16PU nicht

Bei Datei=>Voreinstellungen siehst du, wo Arduino deine Sketches ablegt. Öffne diesen Ordner. Hast du hier noch kein Verzeichnis hardware, erstellst du einen Ordner "hardware".

In diesen Ordner kopierst du den Inhal des Zif-Files aus

https://github.com/SpenceKonde/ATTinyCore

Bei "Werkzeuge=>Board" erscheint jetzt ein Punkt "ATTinyCore" und dort gibt es einen Controller "ATtin26(No Bootloader)" ... Auswählen

Leider funktioniert das Auswählen (derzeit) nicht über

http://drazzy.com/package_drazzy.com_index.json

in den Voreinstellungen, weil die Seite derzeit "down" ist.

#7768450
Lesenswert?

Ralph S. schrieb:

Bei Datei=>Voreinstellungen siehst du, wo Arduino deine Sketches ablegt. Öffne diesen Ordner. Hast du hier noch kein Verzeichnis hardware, erstellst du einen Ordner "hardware".

In diesen Ordner kopierst du den Inhal des Zif-Files aus

https://github.com/SpenceKonde/ATTinyCore

Danke ich habe versucht Tinycore über die zusätzlichen Board URLs hinzuzufügen da gabs aber den attiny26 nicht. Ich probier mal obs klappt...XD

#7768461
Lesenswert?

Ralph S. schrieb:

In diesen Ordner kopierst du den Inhal des Zif-Files aus

https://github.com/SpenceKonde/ATTinyCore

Bei "Werkzeuge=>Board" erscheint jetzt ein Punkt "ATTinyCore" und dort gibt es einen Controller "ATtin26(No Bootloader)" ... Auswählen

Leider funktioniert das Auswählen (derzeit) nicht über

http://drazzy.com/package_drazzy.com_index.json

in den Voreinstellungen, weil die Seite derzeit "down" ist.

Also hab es Gerade getestet... LED blinkt und Upload war fehlerlos.

Danke nochmals an alle die mir geholfen haben eine Lösung für mein Problem zu finden

Gast #7768596
Lesenswert?

Peter schrieb:

Frank O. schrieb:

Das zeigt mir deine For-Schleife im Setup. Die kann da niemals hoch zählen.

So ein Quatsch. Setup ist eine normale Funktion. Darin sind alle normalen C-Konstrukte ( while, for, case ...) möglich.

Ja, ist mir auch aufgefallen im 1. Posting von Frank. Aber das könnte man evtl. ein wenig freundlicher ausdrücken.

ciao

Marci

#7768599
Lesenswert?

Marci W. schrieb:

Pascal S. schrieb:

Und dann will ich mir Hilfe holen weil darüber nichts dokumentiert ist

Was ist wo nicht dokumentiert?

ciao

Marci

:-) ich glaube bei keinem anderen Thema in der Mikrocontrollerwelt ist etwas so extrem dokumentiert wie bei Arduino.

Da wird es "fast" schon schwierig, die entscheidende Information herauszufiltern, weil einfach ewig viel geschrieben ist.

#7768605
Lesenswert?

Marci W. schrieb:

Ja, ist mir auch aufgefallen im 1. Posting von Frank. Aber das könnte man evtl. ein wenig freundlicher ausdrücken.

Es gibt hier übrigens zweimal Frank O und es sind auch definitiv zwei unterschiedliche Personen.

Ich werde das ausprobieren. Tatsächlich habe ich noch nie diesen Versuch unternommen, weil so was grundsätzlich nicht ins Setup von Arduino gehört. Aber, dass ich grundsätzlich recht damit habe, dass der TO erstmal ein bisschen lesen muss und Beispiele durcharbeiten sollte, ändert selbst eine vielleicht doch hochzählende For-Schleife nicht.

Ich finde es immer wieder erstaunlich, dass man ohne jegliche Grundlagen so anfangen kann. Man würde doch auch nicht in einen Jumbo-Jet ins Cockpit steigen, 300 Passagiere über den Atlantik fliegen wollen, nur weil man einem Sportflugzeug bei Start zugesehen hat. Zumindest möchte ich dort kein Passagier sein.

Beitrag #7768742 wurde von einem Moderator gelöscht.
#7768756
Lesenswert?

Dann muss ich mal zu Kreuze kriechen.

Ist wohl doch möglich. Und auch ohne, dass ich das ausprobiert habe. Das Beispiel für die For-Schleife macht genau das, was der TO machen wollte.

1
void setup() {
2
  // use a for loop to initialize each pin as an output:
3
  for (int thisPin = 2; thisPin < 8; thisPin++) {
4
    pinMode(thisPin, OUTPUT);
5
  }
6
}
#7769082
Lesenswert?

M.A. S. schrieb:

Ralph S. schrieb:

:-) ich glaube bei keinem anderen Thema in der Mikrocontrollerwelt ist etwas so extrem dokumentiert wie bei Arduino. Da wird es "fast" schon schwierig, die entscheidende Information herauszufiltern, weil einfach ewig viel geschrieben ist.

Vielleicht ist das ja im vorliegenden Falle das Problem.

Sherlock 🕵🏽‍♂️ schrieb:

Frank O. schrieb: Doch, genau diese Selbstüberschätzung ist heute allgegenwärtig.

Das ist keines Wegs Selbstüberschätzung. Ich setzt mit halt Ziele und mein Ziel war es halt attinys kennen zu lernen. Mit arduinos schaff ich da das ist auch nicht das Problem, mein Problem lag ja darin damit bei mir ein Fehler im starten vorlag und das würde ja Jetzt gelöst. Und gaze ehrlich ich finde es schon sehr frech wie sich hier manche erwachsene Menschen verhalten. Ich bin auch nur eine Person und es tut mir leid dass ich als 15-Jähriger schüler nicht das auf die Idee gekommen bin das was mit dem Plugin nicht stimmt da ich mich wie gesagt erst angefangen habe mich mit attinys zu beschäftigen. Und so leid es mir tut jeder fängt irgendwo mal an das war halt mein Start und da kann sich jeder gern drüebr lustig machen, aber die ist nun mal mein Hobby und ich bin immernoch erst 15 und so ein Verhalten von Erwachsenen gebildeten Menschen geht echt gar nicht so leid es mir tut. Die Jugend von heute ist die Zukunft da ist nun mal so. Ich möchte halt etwas aus mir machen damit ich früh Erfahrung sammeln kann und somit später einen hohen Schulabschluss und einen gut bezahlten Job bekomme. Und von diesem Geld muss ich dann die Rente zahlen für Leute die sich über meinen Start in die attinys lustig machen... Ich hoffe diese Nachricht bringt sid mal dazu zu überdenken mit wem sie wie online schreiben und wie sie dort mit anderen Leuten umgehen, vor allem mit Jugendlichen und Kindern. Sie wissen nie wie sehr solche Nachrichten andere verletzen können...

In diesem Sinne schönen Abend noch Mfg Pascal

#7769083
Lesenswert?

Sherlock 🕵🏽‍♂️ schrieb:

Frank O. schrieb: Doch, genau diese Selbstüberschätzung ist heute allgegenwärtig.

Das ist keines Wegs Selbstüberschätzung. Ich setzt mit halt Ziele und mein Ziel war es halt attinys kennen zu lernen. Mit arduinos schaff ich da das ist auch nicht das Problem, mein Problem lag ja darin damit bei mir ein Fehler im starten vorlag und das würde ja Jetzt gelöst. Und gaze ehrlich ich finde es schon sehr frech wie sich hier manche erwachsene Menschen verhalten. Ich bin auch nur eine Person und es tut mir leid dass ich als 15-Jähriger schüler nicht das auf die Idee gekommen bin das was mit dem Plugin nicht stimmt da ich mich wie gesagt erst angefangen habe mich mit attinys zu beschäftigen. Und so leid es mir tut jeder fängt irgendwo mal an das war halt mein Start und da kann sich jeder gern drüebr lustig machen, aber die ist nun mal mein Hobby und ich bin immernoch erst 15 und so ein Verhalten von Erwachsenen gebildeten Menschen geht echt gar nicht so leid es mir tut. Die Jugend von heute ist die Zukunft, das ist nun mal so. Ich möchte halt etwas aus mir machen, damit ich früh Erfahrung sammeln kann und somit später einen hohen Schulabschluss und einen gut bezahlten Job bekomme. Und von diesem Geld muss ich dann die Rente zahlen für Leute die sich über meinen Start in die attinys lustig machen... Ich hoffe diese Nachricht bringt sie mal dazu zu überdenken mit wem sie wie online schreiben und wie sie dort mit anderen Leuten umgehen, vor allem mit Jugendlichen und Kindern wenn sie ein eigentlich doch sehr tolles und spannendes Hobby anfangen möchten.

In diesem Sinne schönen Abend noch Mfg Pascal

#7769117
Lesenswert?

@Pascal: Ich habe auch irgendwann mit Attiny angefangen. OK, da war ich keine 15, aber das Alter spielt keine Rolle.

Aber ich habe es anders angefangen als Du: Ich habe mir beim Hersteller des Mikrocontrollers das Datenblatt herunter geladen und es durch /gearbeitet/, denn ich wollte den Chip kennen lernen. Ich konnte schon C. Auch das hatte ich mir aber vorher strukturiert und systematisch /erarbeitet/.

Ja, klar, man kann sich heute von der AI den Code auswürfeln lassen, ihn in den µC laden und schauen, was passiert. Oder ob etwas passiert. Wenn nicht, lässt man die AI halt noch einmal würfeln. -> Minimaler Aufwand Aber auch kaum Ertrag. Denn /Lernen/ setzt nun einmal immer auch /Verständnis/ voraus, und dafür muss man auch Aufwand treiben.

Wenn Du aber jede Form von Aufwand so konsequent vermeidest, dass Du z.B. Deine Texte ohne Punkt und Komma und mit fragwürdiger Groß- und Kleinschreibung dahin rotzt, so dass sie schwer lesbar werden, dann musst Du Dich auch fragen lassen, warum irgendjemand mehr Arbeit zum Lesen dieser Texte aufwenden sollte, als Dir das Schreiben Wert war.

Pascal S. schrieb:

Ich möchte halt etwas aus mir machen, damit ich früh Erfahrung sammeln kann

Das finde ich sehr löblich und wünsche Dir bei Deinem Hobby viel Spaß. Der kommt ganz von selbst, wenn man etwas so sehr verstanden hat, dass man damit kreativ werden kann.

Pascal S. schrieb:

Die Jugend von heute ist die Zukunft, das ist nun mal so.

Das ist richtig. Das war immer so, schon bei den alten Römern. Allerdings ist die Zukunft nicht unbedingt immer besser geworden. Manchmal gab es heftige Rückschläge, auch schon bei den alten Römern... Ich wünsche Dir und Deiner Generation, dass Ihr das Zeug dazu habt zu stemmen, was auf Euch zukommt.

#7769127
Lesenswert?

Hi danke erstmal für deine Antwort in der man icht nur kritisiert wird.

Ich habe mir beim Hersteller des Mikrocontrollers das Datenblatt herunter geladen und es durch /gearbeitet/, denn ich wollte den Chip kennen lernen.

Ich hab mir auch schon das Datenblatt durchgelesen aber das wahrscheinlich nicht aufmerksam genug. Und wie schon so oft erklärt war ich mit den attinys so gar nicht vertraut und wusste deswegen auch nicht wie genau ich die Pins definieren muss, usw. Ich habe dann erstmal geschaut wie ich den Controller überhaupt mit meinem PC verbinden kann und das hat schon sehr lange gedauert da ich außer dem Datenblatt sehr sehr wenig zu dem attiny26 online gefunden habe. Mein Idee des Lernens war es damit anzufangen simple Projekte zu erstellen wie zum Beispiel eine blinkende Led. Gerade bei solchen Projekten lerne ich persönlich am meisten da ich halt zu der Theorie auch Praxis habe. Ich weiß ich hätte anderst anfangen könenn aber ich finde jeder hat seine eigene Art Dinge zu lernen und zu verstehen.

Wenn Du aber jede Form von Aufwand so konsequent vermeidest, dass Du

Den Aufwand vermeide ich nicht ich habe den attinys seit knapp einem Monat und habe bis zu diesem Beitrag versucht das Teil so zum laufen zu bringen damit ich wenigstens eine sichtlichen Output habe das es funktioniert. Leider habe ich das alleine nicht geschafft und habe mir deshalb Hilfe geholt. Klar hätte ich auch noch weiter selbst probieren können, aber es nützt mir persönlich viel mehr wenn ich Sachen von anderen, die Erfahrung haben, erklärt bekomme, da ich so einfach persönlich besser lerne und nicht meine eh schon sehr ausgenutzte Freizeit damit verschwende Dinge zu machen wo ich nicht genau weiß was ich mache.

z.B. Deine Texte ohne Punkt und Komma und mit fragwürdiger Groß- und Kleinschreibung dahin rotzt, so dass sie schwer lesbar werden, dann

Gut über meine Rechtschreibung lässt sich streiten, ich weiß das ich nicht wirklich richtig schreibe, habe aber damit auch im generellen Problem und Versuche mich auch zu verbessern, aber es fällt mir halt noch etwas schwer. Troz allem habe ich versucht nach dem Hinweis das mein Text so viele fahler hat, so richtig wie möglich zu schreiben. Und ich persönlich fand die Nachricht um mich darauf hinzuweisen alles andere als freundlich ausgedrückt.

Und ja ich kann an sich gut mit Kritik umgehen und bin auch oft sehr froh kritisiert zu werden, weil mich das auch weiter bringt. Aber halt auch nur wenn man diese Kritik freundlich ausdrückt und nicht gleich irgendwelche Anschuldigungen stellt obwohl man den Hintergrund nicht kennt.

Ich bin sehr froh über deine Nachricht, da es mir zeigt, dass sich nicht alle Menschen hier so unfreundlich sind. Ich ebenso froh über deine kritik und Hinweise was ich besser machen hätte können. Ich werde versuchen diese Sachen beim nächsten mal zu beachten.

Ich wünsche dir ebenso weiterhin alles gute und nur das beste Mfg Pascal

Gast #7769135
Lesenswert?

Pascal S. schrieb:

z.B. Deine Texte ohne Punkt und Komma und mit fragwürdiger Groß- und Kleinschreibung dahin rotzt, so dass sie schwer lesbar werden, dann

Gut über meine Rechtschreibung lässt sich streiten, ich weiß das ich nicht wirklich richtig schreibe, habe aber damit auch im generellen Problem und Versuche mich auch zu verbessern, aber es fällt mir halt noch etwas schwer. Troz allem habe ich versucht nach dem Hinweis das mein Text so viele fahler hat, so richtig wie möglich zu schreiben. Und ich persönlich fand die Nachricht um mich darauf hinzuweisen alles andere als freundlich ausgedrückt.

Du willst ja was von mir (mein Wissen) und dann erwarte ich eine gewisse Mitarbeit. Du wirst das auch noch spaeter lernen, dass schriftlicher Ausdruck entscheidet ob Du ernst genommen wirst oder nicht. Ist zwar bloed, ist aber so.

Und wenn Du selbst einraeumst dass Du Probleme mit dem Ausdruck Probleme hast: Schreibe den Text in einer Textverarbeitung (Word/Libreoffice) und dann sind sehr viele Fehler weg (ist mein Ansatz).

Vor vielen Jahren habe ich mal folgendes Bonmot gesehen, ist etwas Wahres dran:

1
"Good spelling, punctuation, and formatting are essentially the on-line
2
equivalent of bathing." -- Elf Sternberg

Gruesse

#7769224
Lesenswert?

Pascal S. schrieb:

ich finde jeder hat seine eigene Art Dinge zu lernen und zu verstehen

Ja, es gibt viele Arten, Dinge zu lernen. Aber nur eine Art zu verstehen. Wenn also am Ende kein tieferes Verständnis herauskommt, solltest Du die Art zu lernen ändern.

"Verstehen" heißt auch nicht "Das kann ich jetzt. Ich hab's auswendig gelernt." Wenn Du z.B. an dieser Stelle hier:

Pascal S. schrieb:

wusste deswegen auch nicht wie genau ich die Pins definieren muss

/gelernt/ hast, dass Du PB6 schreiben musst, dann hilft Dir das zwar für den Augenblick. Wenn Du aber weißt, /warum/ das /wo/ definiert ist, /wie/ PB6 beim Kompilieren übersetzt wird und /warum/ eine (und genau diese) Integer an dieser Stelle /welche/ Auswirkungen hat, dann hast Du etwas /verstanden/, was Du auch später wieder gebrauchen kannst.

Gast #7769226
Lesenswert?

Pascal S. schrieb:

Ich habe dann erstmal geschaut wie ich den Controller überhaupt mit meinem PC verbinden kann und das hat schon sehr lange gedauert da ich außer dem Datenblatt sehr sehr wenig zu dem attiny26 online gefunden habe.

Deswegen fängt man mit Bauteilen an, zu denen man genug leicht verständliche Doku findet.

Im konkreten Fall hast du gleich vier Baustellen gleichzeitig:

  • Programmiersprache lernen
  • Mikrocontroller kennen lernen
  • Arduino Framework kennen lernen
  • "fremdes" Plugin in Arduino verwenden

So geht das nicht. Man lernt nicht vier Sachen gleichzeitig, die gegenseitig voneinander abhängig sind. Jedenfalls nicht, ohne einen erfahrenen Lehrer direkt neben sich sitzen zu haben.

Da du Arduino benutzen möchtest, mache das mit fertigen Arduino Modulen* die von der Arduino IDE direkt (ohne fremdes Plugin) unterstützt werden. Nach ersten Erfolgserlebnissen solltest du dich mit den den Datenblättern der verwendeten Bauteile auf den Modulen beschäftigen. Versuche z.B. heraus zu finden, welche Funktionen diese noch bieten, die Arduino dir womöglich vorenthalten hat. So lernst du, mit den Datenblättern zu arbeiten.

Erst danach bist du bereit, Arduino-Fremde Hardware mit 3rd parts Plugins zu versuchen. Denn bei denen ist immer irgendwas anders, eingeschränkt und schlechter dokumentiert. Das ist der Level für Fortgeschrittene.

*) Sollte dein Arduino Modul nicht auf Anhieb funktionieren, verschwende nicht deine Zeit und Nerven damit. Lege es zur Seite und kaufe ein originales, das garantiert funktioniert. Chinesische Nachbauten funktionieren nicht immer problemlos, und die dann ans Laufen zu bringen (falls das überhaupt geht) ist wieder auf dem Level der Fortgeschrittenen. Darum kannst du dich später kümmern.

Bei der Firma Funduino bekommst du Sets mit durchdachten deutschen Anleitungen, die auch in weiterführenden Schulen verwendet werden. Zum Beispiel kann ich dir das empfehlen: https://funduinoshop.com/funduino-education/funduino/funduino-cube/funduino-cube-arduino-kompatibles-entwicklerboard-inkl.-arbeitsbuch Wenn du dich damit ausgetobt hast, kannst du die Teile für eigene Aufbauten verwenden. Sie sind alle einzeln erhältlich, billig und marktüblich.

Lass dich nicht von "alles ganz einfach" Versprechen der jeweiligen Autoren blenden. Das ist in den allermeisten Fällen schlicht gelogen.

Noch was: Inzwischen kann man die Version 2 der Arduino IDE empfehlen. Insbesondere, weil man dort mit gedrückter Strg Taste auf Schlüsselwörter klicken kann, die direkt zur Deklaration des Wortes führen. Ich empfinde das extrem hilfreich, um die Programmcodes zu verstehen.

#7769234
Lesenswert?

Pascal S. schrieb:

Und ich persönlich fand die Nachricht um mich darauf hinzuweisen alles andere als freundlich ausgedrückt.

Hmmm, falls Du damit meinen Beitrag vom 03.11.2024, 07:55 meinst, so habe ich mir damit die allergrößte Mühe gegeben, meine Meinung kultiviert und fair zu formulieren. Solltest Du also tatsächlich meine Antwort mit Deiner Bemerkung gemeint haben, so würde mich ernsthaft interesssieren, was darin "alles andere als freundlich" war.

Zugegeben, meine atheistischen Tendenzen hätte ich unterdrücken können, aber dass das der Hauptgrund deiner Kritik sein sollte, kann ich nun wirklich nicht glauben.

#7769281
Lesenswert?

Sherlock 🕵🏽‍♂️ schrieb:

Thilo L. schrieb:

meinen Beitrag vom 03.11.2024, 07:55

Ah, du meinst den 4.11. Dem markierten text zu zitieren wäre einfacher und klarer gewesen. Thilo L. schrieb:

Sei mir bitte nicht böse... Ich meine in keinem Falle deinen Texte, diese waren ja allzeit netz formuliert und auch nur kritik. Mit sowas habe ich überhaupt kein Problem Ich finde nur so Aussagen wie " Selbstüberschätzung" usw. Nicht gerade freundlich ausgedrückt.

Gast #7769306
Lesenswert?

Roland F. schrieb:

Aber ich habe es anders angefangen als Du:...

Aber garantiert nicht als 15-Jähriger.

Wenn du dich da mal nicht irrst. Ich bin nicht er, aber ich habe mit 15 meine ersten Programme auf einem geliehenen C64 geschrieben. Nur ein Jahr später dann auf PC und Mikrocontrollern. Da war ich sicher nicht der einzige.

Ich konnte schon C.

Da warst du wie alt?

In meinem Fall war es Basic mit 15 und Pascal mit 16.

Eins meiner wenigen Assembler-Programme auf PC hat sogar einen Wettbewerb gewonnen. Da ging es um den kleinsten schönen Bildschirmschoner-Effekt (als reguläres Programm für DOS, nicht TSR). Meins stellte ein animiert waberndes Plasma dar, mit nur 99 Bytes. Da war ich auch noch nicht volljährig, und in Mathe erheblich fitter als heute.

Gast #7769312
Lesenswert?

Roland F. schrieb:

Hallo, Np R. schrieb im Beitrag #7769117:

Aber ich habe es anders angefangen als Du:...

Aber garantiert nicht als 15-Jähriger.

Np R. schrieb:

Ich konnte schon C. Auch das hatte ich mir aber vorher strukturiert und systematisch erarbeitet.

Da warst du wie alt?

TRS-80 (Basic und Z80-Assembler), einen Junior (6502), der Massenspeicher war ein Kassettenrecorder. Da war ich 15. War ca. 1980.

Gast #7769313
Lesenswert?

In den 70er Jahren waren Computer aller Art für Technik Nerds extrem faszinierend, aber leider unbezahlbar. Erst in den 80er Jahren wurden die Sachen für wohlhabende Familien bezahlbar und in den 90er Jahren dann für alle.

Heute wachsen unsere Kids mit Smartphones auf, und der ganze Haushalt steht voller programmierter Geräte. Daran ist nichts mehr so besonders, wie damals.

#7769371
Lesenswert?

Roland F. schrieb:

Aber garantiert nicht als 15-Jähriger.

Nein. Als 13-Jähriger. Allerdings nicht mit AVRs.

Wie ich aber oben schon schrieb, spielt das Alter (fast) keine Rolle.

Du bist ja kein Baby mehr, von dem man eigenes strukturiertes Lernen nicht erwarten kann sondern dem man erst einmal ein Mobile übers Bettchen hängt, damit es erst einmal dreidimensionale Wahrnehmung lernt. Du kannst die Dinge schon selber strukturiert angehen.

Lernen macht nun einmal Mühe und Arbeit. Für den Einen weniger, für den Anderen mehr. Aber das Schöne ist ja gerade, wenn aus den Mühen ein Erfolg wird.

Leider sieht man oft, dass die Anderen (denen das Lernen schwerer fällt) nach einem schnellen Erfolg suchen, ohne die Mühe zu investieren und strukturiert vorzugehen. Die verlieren dann genau deshalb leider auch schnell die Lust. Die Einen (denen das Lernen leichter fällt) suchen sich dagegen ganz automatisch schwerere Aufgaben, die Mühe erfordern, und investieren diese Mühe auch.

Denn so einfach ist die Welt ja auch nicht wie hier: Pascal S. schrieb im Beitrag #7769083:

von diesem Geld muss ich dann die Rente zahlen für Leute die sich über meinen Start in die attinys lustig machen

Aus Deiner Generation werden nur wenige für die Älteren die Rente zahlen. Nämlich die Leistungsträger. Die Anderen hängen den Leistungsträgern noch als zusätzliches Senklot am Hals.

Gast #7769388
Lesenswert?

Roland F. schrieb:

Und da hast dann als 15-Jähriger als erstes die notwendige Systemdokumentation besorgt und dir "strukturiert und systematisch" den C64 erarbeitet?

Ja. Ich hatte den Schaltplan und die Datenblätter der programmierbaren IC's vorliegen. Es gab sogar ein komplette ROM-Listing als Buch, wo quasi jede einzelne Zeile kommentiert/erklärt wurde.

Auch beim PC bin ich anfangs so vorgegangen. Ich erinnere mich noch gut an die Datenblätter der Sound-Chips und des Floppy-Controllers. Mit meinem Floppy-Treiber konnte man doppelt so schnell Disketten lesen und bis zu 4x so schnell kopieren, als DOS. Vielleicht sagt dir "VgaCopy" etwas. Die HW Zugriffe auf Floppy-Controllers und Soundkarte stammen von mir. Die Idee und GUI stammen von einem damaligen Freund.

Ab Windows 95 endeten allerdings allmählich die direkten Hardware-Zugriffe.

Np R. schrieb:

Lernen macht nun einmal Mühe und Arbeit

Ja ne, is klar.

Andere Generation halt.

Gast #7769583
Lesenswert?

Hallo Pascal, hallo Leute,

Sherlock 🕵🏽‍♂️ schrieb:

So geht das nicht. Man lernt nicht vier Sachen gleichzeitig, die gegenseitig voneinander abhängig sind. Jedenfalls nicht, ohne einen erfahrenen Lehrer direkt neben sich sitzen zu haben.

Na ja, in seinem konkreten Fall: wie hätte Pascal das anders machen sollen? Er will halt in C ein Programm für einen Mikrocontroller schreiben, in Arduino, und von dort in den uC laden. Soll er mit Assembler anfangen und sich die eigene Toolchain selbst bauen?

Pascal S. schrieb:

Die Jugend von heute ist die Zukunft da ist nun mal so.

Wir brauchen die Jugend nicht, denn die KI wird in Kürze übernehmen ;-) ;-) <SCNR> (bitte nicht böse nehmen!)

Btw.: was solltest Du uns damit sagen? Solche Aussagen sind für mich eigentlich No Gos, ebenso wie die Aussage meines Vaters: "so lange du noch Deine Füße unter meinen Tisch..." Da war das Abendessen aber mal sowas von gegessen...

Im Übrigen: hast Du Dir das "Datenblatt" des Attiny wirklich angeschaut, und das Pinout Deines Boards? Und Blinkprogramme für den Attiny mit Arduino wird es vermutlich auch reichhaltig geben.

Zuletzt muss ich mich aber doch noch auf Deine Seite stellen: So arg viel hast Du ja nicht falsch gemacht. Immerhin konntest Du das Programm übersetzen und in den uC flashen. Es hakte lediglich an der Port-Initialisierung(*) Also hast Du schon einen großen Teil der Skill-Liste von Sherlock gemeistert! Aber strukturiert lernen wird dir in Zukunft sicher bessere und schnellere Erfolge bescheren als ausprobieren, das als Tipp. Mach weiter mit Deinem Hobby! Elektronik ist auch heute noch ein sehr interessantes Gebiet, auch wieder zum Basteln! (das war leider lange Zeit nicht mehr so, bevor dann die Maker-Szene erwachte).

ciao

Marci

#7770805
Lesenswert?

Frank O. schrieb:

Ich finde es immer wieder erstaunlich, dass man ohne jegliche Grundlagen so anfangen kann.

Dabei ist es genau das, was einen Anfänger auszeichnet: keine Grundlagen zu haben und sie sich erarbeiten zu wollen. Verrückt! :-)

Beim Erarbeiten gibt es dann unterschiedliche Ansätze: die, die erst einmal jedwede verfügbare Dokumentation durchkauen und jene, die schnell versuchen, etwas praktisch umzusetzen. Letzteres kostet zwar oft zerstörte Bauelemente, bietet dafür aber (vielleicht) schnellere Erfolgserlebnisse und Lernerfolge. Beide Ansätze funktionieren ähnlich gut, auch wenn überzeugte Anhänger eines dieser Ansätze sich nur selten vorstellen können, daß auch der andere klappt.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren