Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum

Beta 2.12.06 Timer Probleme Kategorie: Programmierung Basic (von Christian - 22.12.2010 23:12)
Ich nutze:
C-Control Pro Mega128
Hallo,
ich will die DCF Funktion nutzen und habe sie in den Timer2 reingelegt.
Nun möchte ich aber 1x in der Sekunde Daten auf eine SD-Karte schreiben.

Diese Funktion ist im Timer0 hinterlegt.

Sub Main()

    DCF_Initialisierung()

    SPI_Init_Byte = 80  '3,6 Mhz

    SPI_Enable(SPI_Init_Byte)

    I2C_Init(I2C_100kHz)

    Serial_Init(0,SR_8BIT Or SR_1STOP Or SR_NO_PAR,SR_BD38400)
..
 Irq_SetVect(INT_TIM2COMP,INT_10ms)      ' Interrupt Service Routine definieren
   
 'Interrupt Service Routine definieren - Timer0
 Irq_SetVect(INT_TIM0COMP,Step_0_Timer_0)
 Timer_T0Time(144,PS0_1024) 'Zeit festlegen, Timer0 starten 144,44 * 69,44us= 9,966 ms
..
' Main

    Do While True   'Endlosschleife

    If Test_Bit = 0 Then
        Port_WriteBit(7,1)      'PortA.7 - LED
        Test_Bit = 1
    Else
        Port_WriteBit(7,0)      'PortA.7 - LED
        Test_Bit = 0
    End If

    Temperatur_einlesen_Step_1() 'Multiplex - Kanal wechseln
    Thread_Wait(0,10) '10*10ms
    Temperatur_einlesen_Step_2() 'Kanal I2C einlesen

    RS232_Write()

    End While
End Sub()

Sub INT_10ms()
 Dim irqcnt As Integer
 DCF_INT_10ms()
 irqcnt=Irq_GetCount(INT_TIM2COMP)       ' Interrupt Request Counter
Retrun
End Sub

Sub Step_0_Timer_0()
 Dim Temp_Int As Integer
    'Aufruf alle 10ms

    If Timer0_10ms_counter = 50 Then
        SD_Karte_main()
    End If

    Timer0_10ms_counter = Timer0_10ms_counter + 1

    If Timer0_10ms_counter >100 Then     '10ms * 100 = ca. 1 Sekunde
        Timer0_10ms_counter = 0
    End If

    'Interrupt Request Counter
    Temp_Int = Irq_GetCount(INT_TIM0COMP)

    Return
End Sub

Wenn jetzt auf die SD-Karte geschrieben wird bleibt in diesem Moment das Hochzählen der Sekunden stehen.
Eine Sekunde dauert dann ca. 2sek.

Was kann ich √Ąndern, damit der Timer2 vorrang hat (DCF Funktion)

Gruss Christian


    Antwort schreiben


Antworten:

Re: Beta 2.12.06 Timer Probleme (von PeterS - 23.12.2010 14:19)
    Re: Beta 2.12.06 Timer Probleme (von Joerg - 23.12.2010 18:32)
Re: Beta 2.12.06 Timer Probleme (von Joerg - 23.12.2010 9:22)
    Re: Beta 2.12.06 Timer Probleme (von Franz-Peter - 23.12.2010 10:34)
        Re: Beta 2.12.06 Timer Probleme (von Christian - 23.12.2010 12:23)
            Re: Beta 2.12.06 Timer Probleme (von Franz-Peter - 23.12.2010 12:41)