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)