Ich habe mir einen eigenständigen Arduino auf Steckbrett aufgebaut und, nachdem nun die Pin-Nummern ja nicht mehr dieselben sind wie auf dem Origininal -Arduino-Board, musste ich selbige ändern. Anstatt Pins 2, 3, 4, 5 ,6,7, 8, 13 und 9, 10, 11,12 verwende ich die äquivalenten Pins 4, 5, 6, 11, 12, 13, 14, 19, 15,16,17 und 18, also die entsprechenden Anschlüsse für den eigenständig aufgebauten Controller ohne das Arduino- Board, aber der Sketch läuft nicht (compilieren lässt er sich natürlich).
Auf dem Original- Uno-Board läuft der Sketch einwandfrei, in der Steckbrettversion nicht. Ich habe schon alles versucht.
Es handelt sich um diesen Countdown-Timer: Arduino Einstellbarer Countdown-Timer mit 7-Segment-Anzeige - Hackster.io
Ich möchte den eigenständig ohne Arduino-Board betreiben und dann zusammen mit einer selbstgeätzten Platine in ein hübsches Gehäuse einbauen.
Kann mir jemand einen guten Rat geben? Vielen Dank schon mal im Voraus!
Dan must du die Pins nach Datenblatt anpassen nicht nach Steckbrett.
Schätze mall dass das ist ein ATMEGA328P- PN in DIP /DIL Format, ist dein Sketch schon drauf ?
Foto machen und einstellen.
angesehen. Das passt 1:1 - Du benutzt die selben Pins.
Also brauchst Du nix anpassen.
Das Foto vom Aufbau wäre trotzdem hilfreich Die PIN-Zuweisung ist nicht an die Pins des Controllers gebunden. Dazwischen gibt es noch ein Mapping. Siehe
Du kannst jetzt ein eigenes Mapping machen, aber das halte ich für nicht zielführend.
Baue Deinen Sketch um, das die PIN-Zuweisungen denen auf dem Arduino entsprechen.
Mach mal nen Foto vom Aufbau. Dann mappen wir das um.
Wenn du in der Software die #define Anweisungen auf die Pinnummern korrekt umgestellt hast und es funktioniert nicht, bleibt eigentlich nur ein „Verkabelungsfehler“ auf dem Steckbrett und/oder falsche Komponenten.
Bei 7-Segmentanzeigen wird sich gerne mal bei der gemeinsamen Kathode oder Anode vertan.
Mit einem FTDI Adapter der an GND und dem TX Pin (PD1 Pinnummer 3) angeschlossen ist, kannst Du den Sketch mit Hilfe von Serial.print auch debuggen.
Die Aussage beruht auf der Annahme, dass Du einen Atmega 328P verwendest. Leider hast Du weder deinen angepassten Code hier gezeigt, noch hast Du mitgeteilt welchen MC du verwendest.
Da kann eine Aussage nur vage bleiben. Deine Zahlenangaben deuten aber auf einen Atmega hin.
Wenn das Hochladen der Software per ISP funktioniert, kann es ja nicht so ganz falsch angeklemmt sein. Allerdings wurde nur davon gesprochen, dass der Code sich compilieren lässt. Es bestehen also noch Zweifel, ob der Code überhaupt auf dem MC angekommen ist.
Es ist ein Atmega328P, also der gängige für den UNO. Leider habe ich keinen Schaltplan, sondern nur das Platinen-Layout, ich habe den ATMega328P also schon auf einem eigenen , wirklich richtig verdrahteten Print aufgebaut. Photos schicke ich dann gleich mal.
Danke einstweilen!
Ich habe den Controller mit den äquivalenten, neuen Pineinstellungen auf dem Originial-UNO-Board geflasht und dann den µC in die Fassung meines Eigenbaus gesteckt.
Was sollen die Platinenbildchen helfen, wenn Du mit deinem Breadboardaufbau Probleme hast? Aber wenn da „garantiert“ alles richtig aufgebaut ist, kann es ja nur noch die Software sein.
Ja eben und drum dachte ich mir, dass die Schaltung mit den angepassten Pins passt. Es braucht meiner Ansicht nach sonst nichts geändert werden? Ich arbeite mit dem internen Takt, also verwende den 16MHz-Quarz nicht und das Display hat Common Cathode. das hab ich noch umgestellt.
Irgendwo verrenst du dich zwischen deinem "Programmieren auf dem Arduino Board" und "Kein Quartz". Andererseits hast du auf der Selbstbauplatine auch einen Quartz,... super verwirrend - auch für mich.
F1: Wie flasht du deinen 328 genau? Wenn du keinen Quartz nutzt, kanns ja nicht mit dem UNO Bootloader und somit auch nicht mit den UNO Pinmapping sein.
F2: Wenn über USB/einen Bootloader - welcher Core genau mit welchen Einstellungen?
F3: Bitte stelle einen Schaltplan zur Verfügung. Die bisherigen Bilder taugen nix.
F4: ein erster Hardware-Test soll wohl immer ein einfacher Blinksketch mit Arduino Pin 13 sein? Läuft der bei dir?