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

Re: neue Beta 2.12.02 Kategorie: IDE (von PeterS - 21.09.2010 11:26)
Als Antwort auf Re: neue Beta 2.12.02 von Blackdragon - 18.09.2010 11:49

> > Hallo,
> >
> > es gibt eine neue Beta 2.12.02:
> >
> > 1) 10ms IRQ jetzt wieder konstant
> >
> > Einen Dank nochmal an Joerg und Franz-Peter, die den Fehler gefunden
> > und eingekreist haben.
> >
> >
> > Download: http://www.c-control-pro.de/beta_update/C-ControlSetup.exe
> >
> > Gruss Peter
>
> Hallo Peter,
> in der 2.12.02 gibt es immer noch Threadprobleme.
>
> Ich hatte das mit dem Thread mal getestet.
>
> Auszug:
>
> #thread 1, 256, 5  'Thread 1 mit 256 byte RAM & Task Wechsel 5 * 10ms = 50ms
>
> Sub Main()
>
>     'Interrupt Service Routine definieren - Timer0
>     Irq_SetVect(INT_TIM0COMP,Timer0)
>     'Zeit festlegen, Timer0 starten
>     Timer_T0Time(144,PS0_1024)  '144x69,44us= 9999,36 µs = 50hz
>
>     'Thread_RS232
>     'Thread_Start(1,Thread_RS232)
>     'main loop
>     Do While True     'Endlosschleife
>      ' nothing to do, all work is done in the interrupt ;)
>     End While
> End Sub
>
> Sub Timer0()
> Hauptprogramm alle 10ms
> Funktioniert auch.....
> End Sub
>
> Sub Thread_RS232()
>
>    'Init RS232: 38400 bps, 8 Bit, 1 Stop, NP
>     '20 Byte Empfangspuffer - 100 Byte Sendepuffer
>     Serial_Init_IRQ(0,Buffer,40,100,SR_8BIT Or SR_1STOP Or SR_NO_PAR,SR_BD38400)
>
>     Do While True     'Endlosschleife
>
>     .
>     . Senden Empfangen RS232 -> PC
>     .
>
>    
>     Thread_Delay(5) '5x10ms Anzahl von 10ms Ticks, die gewartet werden soll
>
>     End While
> End Sub
>
> Das Senden zum PC erfolgt nich mehrmals pro Sekunde, sondern braucht mehr als 1Sekunde.
> Wenn ich aber jetzt die Funktion Thread_RS232 aus dem Thread1 rausnehme und
> über die Endlosschleife im Sub Main aufrufe Funktioniert das Programm normal.
> Thread_Delay könnte jetzt überflüssig sein(stammt noch von 2.1)
>
> Gruss Christian
>

Hallo Christian,

da fehlt ja doch einiges im Code, was Du hier nicht gepostet hast. Kannst Du mir bitte an
ccpro@gmx.de bitte ein kleines Projekt schicken, das den Fehler demonstriert? Je kleiner
je besser.

Gruss Peter


    Antwort schreiben


Antworten: