mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Arduino Sketch läuft auf neuem Board nicht


Autor: magnetto (Gast)
Datum:

Bewertung
-2 lesenswert
nicht lesenswert
Hallo zusammen,

ich habe einen Sketch geschrieben, der auf einem Uno R3 smd-Edition (vor 
ca. einem Jahr gekauft) wunderbar funktioniert. Zur Programmierung habe 
ich die Arduino IDE 1.0.5 verwendet.

Wenn ich nun den Sketch auf ein neues Board lade, funktioniert da 
allerdings gar nichts mehr, weder mit der alten noch mit der neuen IDE 
(1.6.8). Lediglich die Art und Weise, wie das Programm falsch umgesetzt 
wird, unterscheidet sich geringfügig.

Kann mir bitte jemand erklären, warum das so ist?

Gruß
Magnetto

Autor: Cyblord ---- (cyblord)
Datum:

Bewertung
3 lesenswert
nicht lesenswert
Die logische Schlussfolgerung wäre, die Boards sind nicht identisch.

Autor: magnetto (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Cyblord -. schrieb:
> Die logische Schlussfolgerung wäre, die Boards sind nicht identisch.

Bis auf die Tatsache, dass eines die smd-Edition ist und das andere 
nicht, fällt mir kein Unterschied auf.

Außerdem müssten doch bei simplen Standardbefehlen die Boards eigentlich 
exakt das gleiche machen, selbst wenn sie nicht identisch sind.
Was könnte es noch sein oder verstehe ich deine Antwort schlicht falsch?

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

eigentlich unterscheiden sich die ganzen UNO/Nano/ProMini-Versionen 
garnicht wirklich. Es ist immer ein ATMega328 drauf und an der seriellen 
hängt der USB-Adapter.
Unterschiede sind verschiedene Bootloader und verschiedene 
TTL-USB-Wandler.
Das hat aber nur Einfluß auf die Übertragung/Programmierung selbst, 
nicht auf Skezch und Inhalt. Das läuft immer auf einem Mega328 und die 
direkte Beschaltung des Mega328 ist prinzipiell identisch. Die I/Os 
landen auf den Anschlußpins des Arduino.

Was also genau passiert bei Dir?

Gruß aus Berlin
Michael

Autor: Arduino Fanboy (ufuf)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
magnetto schrieb:
> Kann mir bitte jemand erklären, warum das so ist?

Vermutlich machst du irgendwas falsch.

Autor: Spannungsteiler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
magnetto schrieb:
> Kann mir bitte jemand erklären, warum das so ist?

Dein Sketch hier hochzuladen wäre sicherlich hilfreich.
So könnte jemand ihn in sein eigenes Arduino R3-SMD hochladen und
probieren.

Eine andere Möglichkeit festzustellen ob dein R3 Board in Ordnung ist,
wäre, ein Beispielsketch aus Arduino-IDE zu nehmen, und schauen, ob der
in deinen beiden Boards funktionieren.

Autor: magnetto (Gast)
Datum:

Bewertung
-2 lesenswert
nicht lesenswert
Michael U. schrieb:
> Was also genau passiert bei Dir?

Vielen Dank für die Antwort!

ich nutze ein 2x16 LCD zur Ausgabe von Messwerten. Mit dem neu 
erworbenen Board zeigt das LCD nur Hieroglyphen an.

Ansonsten sind Code und Einstellungen identisch. Auf dem älteren Board 
funktioniert der Sketch aber auch mit neuerer IDE nicht.

Autor: Dieter S. (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
magnetto schrieb:
> Kann mir bitte jemand erklären, warum das so ist?

Dann poste doch mal die Fehlermeldung, die du erhältst.

Autor: magnetto (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Spannungsteiler schrieb:
> Eine andere Möglichkeit festzustellen ob dein R3 Board in Ordnung ist,
> wäre, ein Beispielsketch aus Arduino-IDE zu nehmen, und schauen, ob der
> in deinen beiden Boards funktionieren.

Danke, das ist ein sinnvoller Hinweis.
Allerdings funktioniert der Sketch nach wie vor mit IDE 1.0.5 auf dem 
smd-Board. Die neuen Boards habe ich mit Beispiel-Programmen auch 
geprüft, die funktionieren an sich auch.

Autor: Philipp K. (philipp_k59)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das muss so funktionieren..

Wird das neue programm denn auch Fehlerfrei hochgeladen?

Funktioniert ein Blinky, oder ein anderes Beispiel vernünftig?

Wenn die Beiden Boards verschiedene Quarze draufhaben und der Bootloader 
gleich angepasst ist, würde man nicht merken das die Timings halb so 
schnell oder doppelt so schnell  laufen..

Hast Du auf der Non SMD Edition einen eigenen Atmega verwendet?

Fragen über fragen.. und die Liste ist lang..

Autor: magnetto (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dieter S. schrieb:
> Dann poste doch mal die Fehlermeldung, die du erhältst.

Ich bekomme keine Fehlermeldung, die Ausgabe auf dem LCD sieht aus wie 
Salat und LED's, die leuchten sollen, leuchten z. B. bei der neuesten 
IDE 1.6.8 gar nicht.

Autor: Dieter S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das sieht nach einem Fehler mit einer Library aus, also bitte 
Fehlermeldung posten.

Autor: Dieter S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sorry hat sich überschnitten.

Wie lang sind deine Kabel zwischen dem Uno und dem Display?

Autor: Stephan G. (Firma: privat) (morob)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wo hast du das neue board gekauft?

Autor: Philipp K. (philipp_k59)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Wenn er die IDE nicht wechselt, und die verdrahtung identisch ist muss 
es funktionieren.. ohne wenn und aber.

Einziger rückcheck.. das gleiche nochmal auf die SMD Version Flashen.

Autor: Spannungsteiler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du mußt auch schauen daß jede IDE-Version auf die gleiche Library-Ordner
zugreift! Unter Datei/Voreinstellungen/Library Pfad eingeben !!!!

Möglicherweise benutzen deine verschiedene IDEs ihre eigene 
Library-Pfade,
wo sich eventuell unterschiedliche LiquidCristal-Libs befinden.

Autor: Dieter S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Und wichtige Frage:
Was ist das für ein neues Board, hast du noch nicht geschrieben.
Auch ein Uno?

Autor: magnetto (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Spannungsteiler schrieb:
> Möglicherweise benutzen deine verschiedene IDEs ihre eigene
> Library-Pfade,
> wo sich eventuell unterschiedliche LiquidCristal-Libs befinden.

Dann dürfte ich das Problem ja nicht haben, wenn ich mit der alten IDE 
auf das neue Board schreibe, aber das funktioniert ja auch nicht.

Habe natürlich deinen Hinweis dennoch verfolgt, vielen Dank dafür.
Hat leider nicht geholfen.

Autor: magnetto (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Das Kabel ist ca. 40 cm lang.

Das Board habe ich bei marotronics gekauft (ziemlich günstig, aber 
bisher funktionierten alle neuen Programme).

Das neue Board ist auch ein Uno.

Autor: Philipp K. (philipp_k59)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schonmal mit der alten IDE und Sketch wieder auf das alte Board 
geschrieben?

Autor: Stephan G. (Firma: privat) (morob)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
sicher das es da gleiche ist, der händler macht ja china importe. 
serielle schnittstelle kann da definitiv schon mal abweichen.

Autor: Dieter S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nochmal die Frage:
Was ist das "neue" für ein Board?
Am besten einen Link.

Autor: Spannungsteiler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie gesagt; vermutlich sind die LiquidCrystal.h Libs in deine IDEs
unterschiedlich.  Du kannst einen separaten Arduino/Library-Pfad
erstellen, dann alle Librarys dorthin kopieren und danach in deinem
IDE diesen Pfad als standardpfad für Libs angeben.

Nehme zuerst den >LiquidCrystal< aus dem IDE 1.0.5 und probiere es aus
Danach löscht du dieses Lib in deinem standardpfad (nicht im IDE-Lib 
Pfad!)
und ersetzt du ihn mit dem >LiquidCrystal< aus dem neueren IDE.

So kannst du vergleichen, welche Version LiquidCrystal.h richtig 
funktioniert.
Nach jeder Lib-Änderung und hin-her Kopieren, die IDE immer neu starten.
Beim Startvom IDE lesen sie sich die Libs immer neu ein!

In der Regel haben die IDEs die Library Liste hier;
...Programme/Arduino xxx/libraries

Autor: Stephan G. (Firma: privat) (morob)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: magnetto (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Spannungsteiler schrieb:
> Nach jeder Lib-Änderung und hin-her Kopieren, die IDE immer neu starten.
> Beim Startvom IDE lesen sie sich die Libs immer neu ein!

Okay, war jetzt doof, merk ich selbst.
Es war die Library und ich hab die IDE nicht neu gestartet, aber jetzt 
funktioniert es.

Vielen Dank an alle, die sich beteiligt haben!!!

Autor: Arduino Fanboy (ufuf)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
magnetto schrieb:
> ich nutze ein 2x16 LCD

Nanno.. immer diese sparsamen Angaben....

Darum diese Aussage:
Die I2C Pullups sind nicht klein genug.

Autor: Philipp K. (philipp_k59)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
magnetto schrieb:
> Okay, war jetzt doof, merk ich selbst.
> Es war die Library und ich hab die IDE nicht neu gestartet, aber jetzt
> funktioniert es.
>
> Vielen Dank an alle, die sich beteiligt haben!!!

Das nächste mal aufs alte Board ladend zurückprüfen ;)

So wäre es gleich eindeutig ein Softwarefehler gewesen.

Autor: magnetto (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Philipp K. schrieb:
> Das nächste mal aufs alte Board ladend zurückprüfen ;)
>
> So wäre es gleich eindeutig ein Softwarefehler gewesen.

Verstehe, ich schreib es mir hinter die Löffel!

Nochmal vielen Dank!

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.