[elektro] RTOS

hg12345 hg12345 at freemail.hu
Thu Nov 28 09:18:29 CET 2013


Erre gondoltam:

void prvTask1(void *pvParameters)
{
char* pcTaskName;
    pcTaskName= (char*) pvParameters;
    printf(">>Start %s\n\r",pcTaskName9;
    for(;;)
    {
       printf("%s \t%8i\n\r",pcTaskName,xTaskGetTickCount()); 
    }
}


int main(void)
{
    printf("------ CREATE TASK --------------\n\r");    
    xTaskCreate(prvTask1,"Task1",configMINIMAL_STACK_SIZE,NULL,0,NULL);

    printf("------ Start scheduler --------------\n\r"); 
    vTaskStartScheduler();
    printf("------ Stop scheduler --------------\n\r"); 
}

Tudtommal a *pvParameters pointer a TASK nevére mutat, és volt amikor így is csinálta.
A mostani projektet már magam kezdtem nulláról, de itt a mindig NULL pointerem van, vagyis nem mutat sehová.

 Üdv
      Gábor



flaist <flaist at gmail.com> írta:
>Pass, ezt nem használtam, de nem is értem a kérdést.
>
>TASKxxx ?
>
>FI.
>
>-----Original Message-----
>From: elektro-bounces at tesla.hu [mailto:elektro-bounces at tesla.hu] On Behalf Of hg12345
>Sent: Tuesday, November 26, 2013 3:03 PM
>To: elektro at tesla.hu
>Subject: Re: [elektro] RTOS
>
>Egy kérdés,
>
>úgy látom a magi a void TASKxxx(void* Parameter) elvileg a task debug hibanevét adja vissza, volt is olyan tesztem ahol ez működött, de most mindig NULL pointer ad vissza.
>
>TASK név hossz elegedöre van állítva, TCB tartalmazza a nevet, mit kell még beállítani, hogy a pointer értelmes részre mutasson?
>
>
>flaist <flaist at gmail.com> írta:
>>A stack méret macerás.
>>1. ne használj nagy méretű lokális változókat (pl. tomb).
>>2. Ha mégis akkor növeld meg a stack méretét azoknak a taskoknak amik hasznáják.
>>3. ha stack-t növelsz növelni kell a configTOTAL_HEAP_SIZE-t, az az összes stack méret, + még valmennyi!
>>     célszerű annyival növelni amennyivel növeled a stack méreteket summázva.
>>
>>A stack figyelés csak annyi, hogy feltölti AA55H-val, és task váltáskor az RTOS nézi, hogy átíródott-e a határon.
>>
>>FI.
>>-----Original Message-----
>>From: elektro-bounces at tesla.hu [mailto:elektro-bounces at tesla.hu] On 
>>Behalf Of hg12345
>>Sent: Monday, November 25, 2013 8:14 AM
>>To: elektro at tesla.hu
>>Subject: Re: [elektro] RTOS
>>
>>Szia,
>>
>>Köszönöm a segítséget.
>>Az CORTEX magban függetlenül a a többirésztől van egy számláló, amit használnak az oprendsszerek az időzítéshez. Szerencsére ezt nem kell állítgatni. A "FreeRTOSConfig.h" alap beállítás csak nagyon egyszerű ütemezőt definiál. Send és ReciveQueue kiegészítéssel, ez müködik is.
>>
>>Szeretném kipróbálni a semaforokat, mutex és stb, ezek amivel 
>>megakadtam. Ugyan így nem sikerült beindítani a trace funkciókat
>>
>>Hiába olvasgatom a netes ill a régi pdf leírást, de nem találom benne a stack méret beállításnál mit kell figyelembe venni... Gondolom a az ütemező (nagyon leegyszerűsítve) egy magasszíntű IT-vel átveszi a futást és a kicseréli a futási környezetet.  Egy másik kiosztott RAM területre kapcsolja át a SP, LINK és PC regisztereket és a teljes regiszter készlet tartalmat cseréli. (Ha szerencsés akkor ezt védett üzemmódban teszi..., de ezt a nem látom a FreeRTOS esetén) Vagyis az adott taskban futó minden programnak biztosítani kell a verem mérete, ha jól gondolom.
>>Néztem a STACK ellenörzést, de úgy vettem észre ez ebben a verzióban nincs implementálva.
>>
>> üdv
>>       Gábor
>>
>>
>>flaist <flaist at gmail.com> írta:
>>>
>>>A processzornak megfelelő "FreeRTOSConfig.h" és  "portable" fileokat kell kiválasztani.
>>>És kész!
>>>A PC32-ben a time1-t használja timer-nek, azt nem szabad átprogramozni.
>>>A Te rendszeredhez is meg kell nézni, hogy miket használ, nehogy elprogramozd.
>>>A port.c-ben lehet megnézni.
>>>
>>>Utána már csak a  FreeRTOSConfig.h-ban kell hangolni rendszert.
>>>
>>>FI.
>>>
>>>
>>>-----Original Message-----
>>>From: elektro-bounces at tesla.hu [mailto:elektro-bounces at tesla.hu] On 
>>>Behalf Of hg12345
>>>Sent: Sunday, November 24, 2013 9:21 PM
>>>To: elektro at tesla.hu
>>>Subject: Re: [elektro] RTOS
>>>
>>>A netes könyv 2005-os van belőle több kivitel is. A honlapon található API magyarázat elég jó, nagyon hasonlít a könyvhöz. (doxigen) Érteni értem, de nagyobb bajom hogy a nem igazán tudom az egyszerű mintapéldákat életre kelteni. :-( Egy halom #define tartalmaz, amit szabályozza a fordítási blokkokat, ugyan mintapéldákban elöl jelzi mit kell megadni, de utána is sokszor problémás a fordítás egy kezdőnek.  Ez az én problémám...
>>>
>>>nagyon jó lenne, ha illesztenék a CMSIS alá, persze ez nem a PIC32 világa.
>>>
>>>flaist <flaist at gmail.com> írta:
>>>>A könyvnek egy régebbi verziója fent van a Net-en.
>>>>
>>>>De könyv olvasni tényleg jobb, mint PDF-t (bár ebben könnyebb keresni) , és még támogatod is őket.
>>>>Chipcadnál anno volt.
>>>>
>>>>FI.
>>>>
>>>>-----Original Message-----
>>>>From: elektro-bounces at tesla.hu [mailto:elektro-bounces at tesla.hu] On 
>>>>Behalf Of flaist
>>>>Sent: Thursday, November 21, 2013 11:49 PM
>>>>To: elektro at tesla.hu
>>>>Subject: Re: [elektro] RTOS
>>>>
>>>>FREERTOS-t használom PIC32 környezetben.
>>>>Még nem volt gondom vele.
>>>>Persze pár trükköt ismerni kell.
>>>>
>>>>FI.
>>>>
>>>>-----Original Message-----
>>>>From: elektro-bounces at tesla.hu [mailto:elektro-bounces at tesla.hu] On 
>>>>Behalf Of hg12345
>>>>Sent: Thursday, November 21, 2013 8:41 PM
>>>>To: elektro
>>>>Subject: [elektro] RTOS
>>>>
>>>>pici érdeklödés
>>>>
>>>>Melyiket érdemes használni, ami egyszerű és megbízható, 32 bites rendszerre ha olcsó vagy ingyenes az további plusz.
>>>>Milyen tapasztalat van ezekről.
>>>>
>>>>üdv
>>>>  HG
>>>>
>>>>-----------------------------------------
>>>>          elektro[-flame|-etc]
>>>>
>>>>-----------------------------------------
>>>>          elektro[-flame|-etc]
>>>>
>>>>-----------------------------------------
>>>>          elektro[-flame|-etc]
>>>
>>>-----------------------------------------
>>>          elektro[-flame|-etc]
>>>
>>>-----------------------------------------
>>>          elektro[-flame|-etc]
>>
>>-----------------------------------------
>>          elektro[-flame|-etc]
>>
>>-----------------------------------------
>>          elektro[-flame|-etc]
>
>-----------------------------------------
>          elektro[-flame|-etc]
>
>-----------------------------------------
>          elektro[-flame|-etc]



More information about the Elektro mailing list