Re: DCF und RTC Kategorie: Programmierung C (von Rainer - 5.05.2009 13:55) | ||
Als Antwort auf DCF und RTC von Rainer - 4.05.2009 17:42 | ||
| ||
Moin zusammen, ich hab das Test Programm nochmal geändert, es ist jetzt zu sehen das der DCF_Mode in 3 Sekunden auf 3 geht und DCF_Parity immer mal wieder hoch zählt bis ca. 9 und dann wieder auf 0 zurückfällt. Meiner Meinung nach bedeutet das, da� ich Signale erhalte die auch ausgewertet werden können aber nie komplett. Wie gesagt andere DCF Geräte funktionieren. WAS MACH ICH FALSCH????????????? Gru� uind Danke Rainer ************************************************************************************************* byte sec, last_sec; //------------------------------------------------------------------------------ // character output void WriteTwoDigits(byte pos,byte val) { char num[3]; LCD_CursorPos(pos); // set LCD Cursor Str_WriteWord(val,10,num,0,2); LCD_WriteText(num); // output string } //------------------------------------------------------------------------------ // set display format void Display_Time(void) { // WriteTwoDigits(0,Clock_GetVal(CLOCK_HOUR)); // hour WriteTwoDigits(0,DCF_PARITY); // DCF Parity status LCD_WriteChar('-'); WriteTwoDigits(3,Clock_GetVal(CLOCK_MIN)); // minute LCD_WriteChar(':'); WriteTwoDigits(6,sec); // second WriteTwoDigits(0 + 0x40, Stunde); //DCF Stunden LCD_WriteChar('.'); WriteTwoDigits(3 + 0x40, Minute); //DCF Minuten LCD_WriteChar('-'); WriteTwoDigits(6 + 0x40, DCF_MODE); //DCF Mode } void Int_10ms(void) { if (DCF_MODE == 0) { DCF_START(); } DCF_PULS(); DCF_SYNC(); DCF_FRAME(); Irq_GetCount(INT_TIM2COMP); } void Init_DCF(void) { DCF_INIT(); DCF_START(); Irq_SetVect(INT_TIM2COMP,Int_10ms); } //------------------------------------------------------------------------------ // main program void main(void) { LCD_Init(); // init Display LCD_ClearLCD(); // clear Display LCD_CursorOff(); // turn Display Cursor off Clock_SetTime(19,20,00,00); // RTC Startzeit Clock_SetDate(21,03,09); // RTC Sartdatum Init_DCF(); // DCF initialisieren und Interuptroutine setzten last_sec= Clock_GetVal(CLOCK_SEC); while(1) // Schleife für RTC auf LCD ausgeben { sec= Clock_GetVal(CLOCK_SEC); if(sec != last_sec) Display_Time(); last_sec= sec; } } *********************************************************************************** | ||
Antwort schreiben Antworten: Re: DCF und RTC (von Rodrunner - 5.05.2009 17:14) Re: DCF und RTC (von Rainer - 5.05.2009 19:01) Re: DCF und RTC (von Rainer - 6.05.2009 21:22) Re: DCF und RTC (von Rainer - 9.05.2009 22:52) Re: DCF und RTC (von Ch-M - 7.08.2010 22:01) Re: DCF und RTC (von Mike Gilbert - 22.10.2009 16:17) Re: DCF und RTC (von dergeheime - 4.10.2009 21:58) |
Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum