Unverständnis RTC_calendar Library von TI

OP #2245945
Lesenswert?

Hallo Forum,

ich habe ein seh seltsamen Phänomen, das ich absolut nicht 
nachvollziehen kann.

Es geht um die RTC_Calendar Lib von TI.
Definiert ist folgendes
1
#define JANUARY   0x00
2
#define FEBRUARY  0x01
3
#define MARCH     0x02
4
#define APRIL     0x03
5
#define MAY       0x04
6
#define JUNE      0x05
7
#define JULY      0x06
8
#define AUGUST    0x07
9
#define SEPTEMBER 0x08
10
#define OCTOBER   0x09
11
#define NOVEMBER  0x10
12
#define DECEMBER  0x11

Aufgrund von aufgetretenen Inkonsistenzen habe ich zum schnellen Prüfen 
den folgenden Code geschrieben um die Variablen beim Debuggen 
anzuschauen.
1
setDate(2011,6,25);  
2
char test_Month1=TI_month;
3
setDate(2011,JUNE,25);
4
char test_Month2=TI_month;

Es kam folgendes heraus

test_Month1=0x05
test_Month2=0x04

Warum?

Eine weitere Unklarheit habe ich in den TI Codebeispielen entdeckt:
1
// Set Date to 4/25/05
2
//   - Day = Monday
3
//   - leapyear = no
4
//   - day = 0x25, month = 0x04 year = 0x2005
5
//-------------------------------------------------------------------------
6
  setDate( 2005, 4, 25 );
7
  if ( TI_dayOfWeek != MONDAY ){ return 19; }
8
  if ( LEAP_YEAR ){ return 20; }
9
  if ( TI_day != 0x25 ){ return 21; }
10
  if ( TI_month != APRIL ){ return 22; }
11
  if ( TI_year != 0x2005 ){ return 23; }

Ich frage mich nun allerdings wie das gehen soll?
4 steht doch für MAY? Wie kann die Prüfung 0x04==April erfolgreich sein?

Ich bin für jede Hilfe, die mich weiterbringt dankbar!
Momentan bin ich mir nicht sicher, ob ich diese Lib überhault einsetzen 
kann/soll.

Viele Grüße,
Albert83
#2245958
Lesenswert?

Prof. Chaos schrieb:

> Ich bin für jede Hilfe, die mich weiterbringt dankbar!

Da war sich irgendwer mit dem Rest des Teams (oder mit sich selbst) 
offenbar nicht ganz einig, ob Jannuar nun die Monatsnummer 0 oder 1 
haben soll. Beim setDate ist Jannuar offenbar der Monat 1, beim Abfragen 
der Einzelwerte offenbar 0.

Einfach mal den Code durchsuchen, ob da irgendwo beim Monat 1 umotiviert 
abgezogen oder addiert wird.

Schön und durchdacht ist das offenbar nicht, aber sowas kommt immer 
wieder mal vor. In Code der veröffentlicht werden soll, sollte das zwar 
nicht auftauchen, aber es passiert schon mal.
OP #2249194
Lesenswert?

Karl Heinz Buchegger schrieb:
> Prof. Chaos schrieb:
>> Bernhard M. schrieb:
>>> Hi,
>>>
>>> mag unschön sein, ist aber so dokumentiert:
>>>
>>> ftp://ftp.fh-heilbronn.de/lmpt/MSP430/Real-Time-Clock.PDF
>>>
>>> Gruß,
>>> Bernhard
>>
>> Was ist da bitte so dokumentiert?
>
> Dann sieh dir mal die Beschreibung der setDate Funktion an.
> Seite 8

Hallo Karl Heinz,

du hast recht - sorry für die unpassende Bemerkung.

@Carsten: Danke auch!

MfG
Albert83

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