INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Programm für die RealTimeClock DS1307 funktioniert mit der IDE 1.6.1 nicht mehr
20.03.2015, 00:02
Beitrag #1
Programm für die RealTimeClock DS1307 funktioniert mit der IDE 1.6.1 nicht mehr
Hallo,

ich habe ein Programm um eine DS1307 auszulesen und die Zeit auf einem LCD anzuzeigen. Hat alles wunderbar unter der IDE 1.0.6 funktioniert. Jetzt wollte ich das Programm mit der aktuellen 1.6.1 auf den Arduino hochladen und bekomme folgende Fehlermeldung:

Zitat:In file included from C:\PAF\arduino-1-6-1\libraries\Time\DateStrings.cpp:11:0:
C:\PAF\arduino-1-6-1\libraries\Time\DateStrings.cpp:41:22: error: variable 'monthNames_P' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
PGM_P monthNames_P[] PROGMEM =
^
C:\PAF\arduino-1-6-1\libraries\Time\DateStrings.cpp:58:20: error: variable 'dayNames_P' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
PGM_P dayNames_P[] PROGMEM = { dayStr0,dayStr1,dayStr2,dayStr3,dayStr4,dayStr5,dayStr6,dayStr7};
^
C:\PAF\arduino-1-6-1\libraries\Time\DateStrings.cpp:59:24: error: variable 'dayShortNames_P' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
char dayShortNames_P[] PROGMEM = "ErrSunMonTueWedThrFriSat";

Die Time-Library habe ich von Arduino-Playground.

Hat mir jemand einen Tipp?

Danke

Ralf
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
20.03.2015, 09:00 (Dieser Beitrag wurde zuletzt bearbeitet: 20.03.2015 09:01 von tito-t.)
Beitrag #2
RE: Programm für die RealTimeClock DS1307 funktioniert mit der IDE 1.6.1 nicht mehr
so etwas kenne ich auch von meinen Displays-Fonts!

such mal in libraries\Time\DateStrings.cpp
die Deklaration von "monthNames_P"
sicher steht da was in der Art wie
char monthNames_P[]; oder ähnliches.

setz einfach "const" davor per Editor:
const char monthNames_P[];

und schau mal was dann passiert!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
20.03.2015, 10:35
Beitrag #3
RE: Programm für die RealTimeClock DS1307 funktioniert mit der IDE 1.6.1 nicht mehr
Hallo Ralf,

liest Du nur die RTC aus oder auch den (optionalen) DS18x20? Ich bin nämlich noch auf der Suche nach einem solchen Sketch.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
20.03.2015, 16:59
Beitrag #4
RE: Programm für die RealTimeClock DS1307 funktioniert mit der IDE 1.6.1 nicht mehr
Hallo Ralf,

soweit ich informiert bin, gibt es eine neuere/angepasste Time-Library mit der das beschriebene Problem behoben sein soll.

Download: Arduino Time Library

Gruß
Arne

ExclamationMit zunehmender Anzahl qualifizierter Informationen bei einer Problemstellung, erhöht sich zwangsläufig die Gefahr auf eine zielführende Antwort.Exclamation
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
20.03.2015, 22:15
Beitrag #5
RE: Programm für die RealTimeClock DS1307 funktioniert mit der IDE 1.6.1 nicht mehr
Hallo,

der Link von Arne brachte die Lösung. Danke hierfür.

@Gelegenheitsbastler: Mein Modul besitzt nur die RTC, daher kann ich Dir zum DS18x20 nichts sagen.
Wampo hat aber vor ein paar Tagen unter Projekte zwei Programme vorgestellt die den Temperatursensor verwenden.


Gruss Ralf
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
20.03.2015, 22:27 (Dieser Beitrag wurde zuletzt bearbeitet: 20.03.2015 22:30 von tito-t.)
Beitrag #6
RE: Programm für die RealTimeClock DS1307 funktioniert mit der IDE 1.6.1 nicht mehr
und was steht da???

const char monthStr1[] PROGMEM = "January";
const char monthStr2[] PROGMEM = "February";
const char monthStr3[] PROGMEM = "March";
const char monthStr4[] PROGMEM = "April";
const char monthStr5[] PROGMEM = "May";
const char monthStr6[] PROGMEM = "June";
const char monthStr7[] PROGMEM = "July";
const char monthStr8[] PROGMEM = "August";
const char monthStr9[] PROGMEM = "September";
const char monthStr10[] PROGMEM = "October";
const char monthStr11[] PROGMEM = "November";
const char monthStr12[] PROGMEM = "December";


ich wette, du hast meinen Tipp noch nichtmal ausprobiert, oder?

aber der Link von Arne brachte die Lösung, gelle? Angry
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.03.2015, 00:15
Beitrag #7
RE: Programm für die RealTimeClock DS1307 funktioniert mit der IDE 1.6.1 nicht mehr
Hallo tito-t,

ich muss wohl sagen, dass ich es nicht getestet habe.
Ein Grund dafür war, dass ich der Meiniung bin, dass in Librarys besser die was verändern sollten die WIRKLICH wissen was sie tun - und da zähle ich mich nicht dazu.
Ein weiterer Grund war, dass es einfacher war die Library herunterzuladen.

Der wirkliche Grund war die Kombination aus beidem oben genannten. Als ich mich heute hier eingeloggt hatte waren alle Antworten schon da, sowohl deine als auch die von Arne. Und damit erschien es mir einfacher aber vor allem für mich SICHERER die korrekt funktionierende Library zu verwenden.
Wäre die Antwort von Arne nicht da gewesen hätte ich es sicherlich auf die von Dir geschilderte Weise probiert und wäre damit auch zum Erfolg gekommen.

Also sei mir bitte nicht Böse weil ich den Weg gewählt habe der mir für mich "besser" erschienen hat.

Und auch Dir natürlich Danke für deine Antwort.

Gruss Ralf
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.03.2015, 10:22
Beitrag #8
RE: Programm für die RealTimeClock DS1307 funktioniert mit der IDE 1.6.1 nicht mehr
Letztlich ein Problem a la "alte Library gegen neue Version der Arduino IDE".
Ab der Version 1.6.x (glaube ich) wurde dem Compiler eine überarbeitete Version der AVR glibc - Core Library verpasst. Diese erfordert zwingend, dass PROGMEM - Variablen als const definiert werden. Bei solchen Fehlermeldungen also immer gucken ob es evtl. eine aktualisierte Library gibt.
Grüße Ricardo

Nüchtern betrachtet...ist besoffen besser Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Fehler in meinem Programm Franz54 7 146 01.12.2016 23:58
Letzter Beitrag: hotsystems
  Arduino lässt sich nicht installieren bergfrei 4 137 20.11.2016 18:34
Letzter Beitrag: bergfrei
  Arduino Mega 2560 läuft nicht Wolfgang50 6 174 13.11.2016 10:50
Letzter Beitrag: Wolfgang50
  Ardublock übertragt nicht an IDE oder UNO R3 tobi83 5 327 16.10.2016 14:07
Letzter Beitrag: Pit
  Upload funktioniert nicht Levi 5 237 22.09.2016 20:19
Letzter Beitrag: hotsystems
  ESP8266 tuts nicht sowerum 7 386 19.09.2016 21:01
Letzter Beitrag: sowerum
  If-Bedingung funktioniert nicht bei Serial1.write Datatom 6 222 16.09.2016 20:36
Letzter Beitrag: Datatom
  SD Karte wird nicht erkannt... Maxi290997 2 201 16.08.2016 14:36
Letzter Beitrag: Maxi290997
  Arduino lässt sich nicht mehr beschreiben Maxi290997 15 965 07.08.2016 11:40
Letzter Beitrag: Maxi290997
  Arduino Uno+Motor Shield+Velleman Mustercode funktionieren nicht Dubidu 8 481 20.07.2016 19:05
Letzter Beitrag: Scheams

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste